8 research outputs found

    Resampling Methods and Visualization Tools for Computer Performance Comparisons in the Presence of Performance Variation

    Get PDF
    Performance variability, stemming from non-deterministic hardware and software behaviors or deterministic behaviors such as measurement bias, is a well-known phenomenon of computer systems which increases the difficulty of comparing computer performance metrics and is slated to become even more of a concern as interest in Big Data Analytics increases. Conventional methods use various measures (such as geometric mean) to quantify the performance of different benchmarks to compare computers without considering this variability which may lead to wrong conclusions. In this paper, we propose three resampling methods for performance evaluation and comparison: a randomization test for a general performance comparison between two computers, bootstrapping confidence estimation, and an empirical distribution and five-number-summary for performance evaluation. The results show that for both PARSEC and high-variance BigDataBench benchmarks: 1) the randomization test substantially improves our chance to identify the difference between performance comparisons when the difference is not large; 2) bootstrapping confidence estimation provides an accurate confidence interval for the performance comparison measure (e.g. ratio of geometric means); and 3) when the difference is very small, a single test is often not enough to reveal the nature of the computer performance due to the variability of computer systems. We further propose using empirical distribution to evaluate computer performance and a five-number-summary to summarize computer performance. We use published SPEC 2006 results to investigate the sources of performance variation by predicting performance and relative variation for 8,236 machines. We achieve a correlation of predicted performances of 0.992 and a correlation of predicted and measured relative variation of 0.5. Finally, we propose the utilization of a novel Biplotting technique to visualize the effectiveness of benchmarks and cluster machines by behavior. We illustrate the results and conclusion through detailed Monte Carlo simulation studies and real examples

    A Test for FLOPs as a Discriminant for Linear Algebra Algorithms

    Full text link
    Linear algebra expressions, which play a central role in countless scientific computations, are often computed via a sequence of calls to existing libraries of building blocks (such as those provided by BLAS and LAPACK). A sequence identifies a computing strategy, i.e., an algorithm, and normally for one linear algebra expression many alternative algorithms exist. Although mathematically equivalent, those algorithms might exhibit significant differences in terms of performance. Several high-level languages and tools for matrix computations such as Julia, Armadillo, Linnea, etc., make algorithmic choices by minimizing the number of Floating Point Operations (FLOPs). However, there can be several algorithms that share the same (or have nearly identical) number of FLOPs; in many cases, these algorithms exhibit execution times which are statistically equivalent and one could arbitrarily select one of them as the best algorithm. It is however not unlikely to find cases where the execution times are significantly different from one another (despite the FLOP count being almost the same). It is also possible that the algorithm that minimizes FLOPs is not the one that minimizes execution time. In this work, we develop a methodology to test the reliability of FLOPs as discriminant for linear algebra algorithms. Given a set of algorithms (for an instance of a linear algebra expression) as input, the methodology ranks them into performance classes; algorithms in the same class are statistically equivalent in performance. To this end, we measure the algorithms iteratively until the changes in the ranks converge to a value close to zero. FLOPs are a valid discriminant for an instance if all the algorithms with minimum FLOPs are assigned the best rank; otherwise, the instance is regarded as an anomaly, which can then be used in the investigation of the root cause of performance differences

    SPARC: Statistical Performance Analysis With Relevance Conclusions

    Get PDF
    The performance of one computer relative to another is traditionally characterized through benchmarking, a practice occasionally deficient in statistical rigor. The performance is often trivialized through simplified measures, such as the approach of central tendency, but doing so risks a loss of perspective of the variability and non-determinism of modern computer systems. Authentic performance evaluations are derived from statistical methods that accurately interpret and assess data. Methods that currently exist within performance comparison frameworks are limited in efficacy, statistical inference is either overtly simplified or altogether avoided. A prevalent criticism from computer performance literature suggests that the results from difference hypothesis testing lack substance. To address this problem, we propose a new framework, SPARC, that pioneers a synthesis of difference and equivalence hypothesis testing to provide relevant conclusions. It is a union of three key components: (i) identifying either superiority or similarity through difference and equivalence hypotheses (ii) scalable methodology (based on the number of benchmarks), and (iii) a conditional feedback loop from test outcomes that produces informative conclusions of relevance, equivalence, trivial, or indeterminant. We present an experimental analysis characterizing the performance of a trio of RISC-V open-source processors to evaluate SPARC and its efficacy compared to similar frameworks

    Pilviteknologian ja virtuaalitodellisuuden hyödyntäminen suunnittelujärjestelmässä

    Get PDF
    Diplomityön tavoite oli tutkia mitä olemassa olevaa teknologiaa ja millaista uuttaa teknologiaa tarvitaan pilvipohjaisen ja virtuaalitodellisuutta hyödyntävän suunnittelujärjestelmän toteuttamiseen. Tutkimus jaettiin kahteen päätutkimuskysymykseen: 1. Mitä ominaisuuksia pilvipohjaiselta virtuaalitodellisuudessa toimivalta suunnittelujärjestelmältä vaaditaan? 2. Mitkä teknologiat mahdollistavat pilvipohjaisen virtuaalitodellisuudessa toimivan suunnittelujärjestelmän toteuttamisen? Ensimmäisen tutkimuskysymykseen etsittiin aineistoa kirjallisuuskatsauksen ja toimeksiantajan työntekijöille tehdyn lomakekyselyn avulla. Tuloksista muodostettiin vaatimustenmäärittely kyseiselle suunnittelujärjestelmälle. Keskeisiä esille nousseita vaatimuksia olivat hyvä toimintavarmuus, järjestelmän sujuva toiminta, kyky käsitellä useita eri tiedostomuotoja ja mahdollisuus järjestää etäkokouksia virtuaaliympäristössä. Toiseen tutkimuskysymykseen haettiin vastauksia myöskin kirjallisuuskatsauksen avulla, sekä IT-henkilöstön ja ohjelmistoyritysten edustajien haastatteluiden avulla. Kirjallisuuskatsauksessa keskityttiin pääasiassa kaupallisesti saataville oleviin teknologioihin. Tulosten perusteella pilvipohjaisen virtuaalitodellisuudessa toimivan suunnittelujärjestelmän mahdollistavia teknologioita ovat virtuaalitodellisuusohjelmistot, VDI-teknologia ja palvelin-GPU. Teknologisten tarpeiden ja mahdollisuuksien tunnistamisen tueksi muodostettiin ideaalisen suunnittelujärjestelmän konsepti. Konsepti muodostettiin lomakekyselyn ja suunnitteluliiketoimintaan liittyvän kirjallisuuskatsauksen pohjalta. Teknologiaan liittyvän kirjallisuuskatsauksen ja haastatteluiden avulla löydettyjä teknologioita verrattiin suunnittelujärjestelmän konseptiin. Tätä kautta voitiin arvioida teknologioiden soveltuvuutta ja samalla tunnistaa, minkälaisia uusia teknologioita tarvitaan. Teknologioiden maturiteettia arvioitiin neliportaisella asteikolla: kaupallinen, ennakkojulkaisu, kehitysvaiheessa oleva, sekä konseptitason teknologia. Pääsääntöisesti konseptitason teknologiat ja kehitysvaiheessa olevat teknologiat rajattiin pois heti alkuvaiheessa. Muutamia kehitysvaiheessa olevia teknologioita otettiin tarkempaan tarkasteluun jatkokehitystoimenpiteitä ajatellen. Suunnittelujärjestelmien pilvipohjaiselle käytölle ja virtuaalitodellisuuden hyödyntämiselle tunnistettiin kaksi erilaista toteutusmahdollisuutta. Ensimmäinen vaihtoehto on ottaa käyttöön Dassault Systemesin luoma 3DEXPERIENCE –alusta. 3DEXPERIENCE on valmis, kaupallinen alusta, joka mahdollistaa yleisimpien CAD-ohjelmistojen pilvipohjaisen käytön, kokoonpanojen muokkaamisen yhteistyössä samassa istunnossa, sekä virtuaalitodellisuuden hyödyntämisen suunnittelun eri vaiheissa. Toinen vaihtoehto on rakentaa kohdeyrityksen sisäverkkoon oma palvelinpohjainen suunnittelujärjestelmä. Oman suunnittelujärjestelmän luomiseen voidaan hyödyntää Nvidian palvelin-GPU –teknologiaa, Citrixin VDI –teknologiaa ja valmista kaupallista virtuaalitodellisuusohjelmistoa. Tällä hetkellä ongelmana oman suunnittelujärjestelmän luomisessa on FEM-laskennan yhdistäminen virtuaalitodellisuuteen, 3D-mallin reaaliaikainen muokkaus yhteistyössä samassa istunnossa ja virtuaalitodellisuudessa tehtyjen muutosten päivittyminen CAD-ohjelmistoon

    Statistical performance comparisons of computers

    No full text
    corecore