1 / 40

1. Introducere

1. Introducere. Indicatori de performanță Timpul de execuție Timpul UCP MIPS MFLOPS Programe de evaluare a performanțelor Legea lui Amdahl. Programe de evaluare a performanțelor. Programe de evaluare a performanțelor Compararea și sintetizarea performanțelor

mura
Télécharger la présentation

1. Introducere

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 1. Introducere • Indicatori de performanță • Timpul de execuție • Timpul UCP • MIPS • MFLOPS • Programe de evaluare a performanțelor • Legea lui Amdahl Structura sistemelor de calcul (01-2)

  2. Programe de evaluare a performanțelor • Programe de evaluare a performanțelor • Compararea și sintetizarea performanțelor • Evoluția programelor de evaluare a performanțelor • SPEC CPU2006 Structura sistemelor de calcul (01-2)

  3. Programe de evaluare a performanțelor • O măsură a performanței: timpul executării unui set reprezentativ de programe • Acest timp poate fi: • Timpul total de execuție • Media aritmetică sau geometrică a timpilor de execuție • Set de programe reale care sunt reprezentative pentru un anumit mediu programe de evaluare (“benchmark”) Structura sistemelor de calcul (01-2)

  4. Programe de evaluare a performanțelor • Programe de evaluare a performanțelor • Compararea și sintetizarea performanțelor • Evoluția programelor de evaluare a performanțelor • SPEC CPU2006 Structura sistemelor de calcul (01-2)

  5. Compararea și sintetizarea performanțelor(1) • Modul în care se poate sintetiza performanța unui grup de programe de evaluare • Exemplu de situație în care nu se poate defini performanța relativă a două calculatoareA, B Structura sistemelor de calcul (01-2)

  6. Compararea și sintetizarea performanțelor(2) • Timpul total de execuție • Metoda cea mai simplă • Calculatorul B este de 1001/110 = 9,1 ori mai rapid decât A pentru programele 1 și 2 • Media aritmetică a timpilor de execuție • tEi– timpul de execuție al programului i din totalul de n programe din set Structura sistemelor de calcul (01-2)

  7. Compararea și sintetizarea performanțelor(3) • Media aritmetică ponderată a timpilor de execuție • Utilizare: dacă numărul de execuții ale programelor dintr‑un set este diferit • Se asignează fiecărui program o ponderepi indică frecvența sa de execuție • Alegerea ponderilor:pe un calculator de referințătimpii de execuție ponderați ai fiecărui program să fie egali Structura sistemelor de calcul (01-2)

  8. Compararea și sintetizarea performanțelor(4) • Normalizarea timpilor de execuție fațăde un calculator de referință • Se consideră media timpilor de execuție normalizați • Dacă se utilizeazămedia aritmetică a timpilor de execuție: rezultatul depinde de alegerea calculatorului dereferință • Exemplu de normalizare și utilizare a mediei aritmetice  Structura sistemelor de calcul (01-2)

  9. Compararea și sintetizarea performanțelor(5) • Timpii de execuție a două programe pe calculatoarele A și B, normalizați față de calculatorul A A este mai rapid față de B Structura sistemelor de calcul (01-2)

  10. Compararea și sintetizarea performanțelor(6) • Timpii de execuție normalizați față de calculatorul B  B este mai rapid față de A Structura sistemelor de calcul (01-2)

  11. Compararea și sintetizarea performanțelor(7) • Media geometrică a timpilor de execuție • Este independentă de seria datelor utilizate pentru normalizare • Are proprietatea: Structura sistemelor de calcul (01-2)

  12. Compararea și sintetizarea performanțelor(8) • Rezultatul este acelașiindiferent de calculatorul de referință • Avantajele mediei geometrice: • Este independentă de timpii de execuție ai programelor individuale • Nu are importanțăcare calculator este utilizat pentru normalizare • Dezavantajul mediei geometrice: • Nu anticipează performanțele Structura sistemelor de calcul (01-2)

  13. Programe de evaluare a performanțelor • Programe de evaluare a performanțelor • Compararea și sintetizarea performanțelor • Evoluția programelor de evaluare a performanțelor • SPEC CPU2006 Structura sistemelor de calcul (01-2)

  14. Evoluția programelor de evaluare a performanțelor(1) • Soluția preferabilă: utilizarea unui set de aplicații reale ca programe de evaluare • MetricileMIPSși MFLOPS • Programeartificiale sau sintetice de evaluare • Scopul: crearea unor programe în care frecvențele de execuție ale instrucțiunilor sunt aceleași cu cele dintr‑un set de programe de evaluare Structura sistemelor de calcul (01-2)

  15. Evoluția programelor de evaluare a performanțelor(2) • Programul sintetic Whetstone • Publicat în 1976 de NationalPhysicalLaboratory (NPL), Marea Britanie • Bazat pe măsurătorile efectuate asupra aplicațiilor științifice și inginerești scrise în limbajul Algol 60 • Numit după compilatorul Whetstone Algol de la NPL • Rescris ulterior în limbajele Fortranși Pascal • Pune accent pe operațiile în VM Structura sistemelor de calcul (01-2)

  16. Evoluția programelor de evaluare a performanțelor(3) • Programul sinteticDhrystone • Publicat în 1984 • Creat pentru evaluarea programelor de sistem • Bazat pe un set de măsurători ale frecvențelor de execuție ale instrucțiunilor • Nu pune accent pe operațiile în VM • Scris inițial în limbajul Ada • Convertit ulterior în limbajul C Structura sistemelor de calcul (01-2)

  17. Evoluția programelor de evaluare a performanțelor(4) • Dezavantajeleprogramelor sintetice • Nu reflectă comportamentul programelor reale • Optimizările executate de compilator sau prin hardware pot amplifica performanțele acestor programe • Exemplu: compilatoare care pot elimina 25% din codul programului Dhrystone Structura sistemelor de calcul (01-2)

  18. Evoluția programelor de evaluare a performanțelor(5) • Programe nucleu (kernel)de evaluare • Fragmente de dimensiuni mici, dar solicitante, extrase din programe reale • Elaborate pentru evaluarea calculatoarelor performante (supercalculatoare) • Exemple: LivermoreLoopsși Linpack • Utilizate în special pentru evaluarea performanțelor aplicațiilor științifice Structura sistemelor de calcul (01-2)

  19. Evoluția programelor de evaluare a performanțelor(6) • Formarea SPEC (Standard PerformanceEvaluationCorporation), 1988 • www.spec.org • Corporație non-profit • Elaboreazăși actualizează seturi standardizate de programe de evaluare bazate pe programe reale • Seturile de programe conțin codul sursăși utilitare pentru generarea rapoartelor de performanță Structura sistemelor de calcul (01-2)

  20. Evoluția programelor de evaluare a performanțelor(7) • SPEC89 • Primul set de programe de evaluare (1989) • Se calcula o singură metrică utilizând media geometrică a timpilor de execuție normalizați fațăde calculatorul VAX‑11/780 • SPEC92 • Au fost prevăzute metrici separate pentru calculele cu numere întregi (SPECINT) și a celor cu numere în VM (SPECFP) Structura sistemelor de calcul (01-2)

  21. Evoluția programelor de evaluare a performanțelor(8) • CPU95, CPU2000 • Versiunea curentă: CPU2006 • Următoarea versiune: CPUv6 • SPEC este format din trei grupuri • Open Systems Group (OSG): programe la nivel de componente și de sistem • High Performance Group (HPG): programe pentru calcule de înaltăperformanță • GraphicsPerformanceCharacterizationGroup (GPCG): programe pentru subsisteme grafice Structura sistemelor de calcul (01-2)

  22. Programe de evaluare a performanțelor • Programe de evaluare a performanțelor • Compararea și sintetizarea performanțelor • Evoluția programelor de evaluare a performanțelor • SPEC CPU2006 Structura sistemelor de calcul (01-2)

  23. SPEC CPU2006 (1) • A fost dezvoltat de grupul OSG • Se măsoarăperformanța UCP, a sistemului de memorie și a generării codului de către compilator • Timpul necesar executării funcțiilor sistemului de operare și a operațiilor de I/E este neglijabil • Este compus din douăcolecții: • CINT2006: calcule cu numere întregi • CFP2006: calcule cu numere în VM Structura sistemelor de calcul (01-2)

  24. SPEC CPU2006 (2) • Două tipuri de măsurători • Măsurarea vitezei de execuție • Raport SPEC: timpul în care se executătoate programele din set o singură dată • SPECint2006și SPECfp2006 • Măsurarea ratei • Rata SPEC: exprimă numărul de aplicații care pot fi executate într‑un timp dat (24h) • SPECint_rate2006și SPECfp_rate2006 Structura sistemelor de calcul (01-2)

  25. SPEC CPU2006 (3) • Se calculează media geometrică a indicatorilor • Timpii de execuție sunt raportați la un calculator de referință • Sun Microsystems Ultra 5/10, cu procesor SPARC • Programele au fost rulate pe acest calculator pentru a stabili un timp de referință • Pentru calculatorul de referință, valorileSPECint2006și SPECfp2006sunt 1 Structura sistemelor de calcul (01-2)

  26. SPEC CPU2006 (4) • Exemple de programe pentru numere întregi • 401.bzip2: program de compresie bazat pe bzip2 • 403.gcc: compilator C bazat pe gcc 3.2 • 445.gobmk: program pentru jocul go • 458.sjeng: program de șah • 462.libquantum: bibliotecă pentru simularea unui calculator cuantic • 473.astar: bibliotecă pentru determinarea drumului la hărțile 2D (algoritmul A*) Structura sistemelor de calcul (01-2)

  27. SPEC CPU2006 (5) • Exemple de programe pentru numere în VM • 435.gromacs: simulează ecuațiile Newtoniene ale deplasării particulelor • 444.namd: simulează sisteme biomoleculare • 459.GemsFDTD: rezolvă ecuațiile Maxwell 3D în domeniul timpului • 465.tonto: pachet pentru chimia cuantică • 481.wrf:predicția vremii • 482.sphinx3:recunoașterea vorbirii Structura sistemelor de calcul (01-2)

  28. SPEC CPU2006 (6) Structura sistemelor de calcul (01-2)

  29. 1. Introducere • Indicatori de performanță • Timpul de execuție • Timpul UCP • MIPS • MFLOPS • Programe de evaluare a performanțelor • Legea lui Amdahl Structura sistemelor de calcul (01-2)

  30. Legea lui Amdahl (1) • Indică creșterea performanței care se poate obține prin îmbunătățirea unei anumite părți a unui calculator • Îmbunătățireaobținutăprin utilizarea unui mod mai rapid de execuție este limitată de fracțiunea de timp în care este utilizat modul mai rapid • Presupunem că se poate efectua o îmbunătățire a unui calculator Structura sistemelor de calcul (01-2)

  31. Legea lui Amdahl (2) • Creșterea vitezei: • Pimb – performanța obținutăutilizând îmbunătățirea • Pneimb – performanța obținutăfără utilizarea îmbunătățirii • sau: Structura sistemelor de calcul (01-2)

  32. Legea lui Amdahl (3) • Creșterea vitezei depinde de: • Fracțiunea timpului de execuțieal calculatorului original în care se poate utiliza îmbunătățirea: Fîmb 1 • Creșterea vitezei care s‑ar obține dacă s‑ar utiliza numai noul mod de execuție: vîmb>1 • Timpul de execuție utilizând calculatorul original în modul îmbunătățit: timpul în care se utilizează partea nemodificată + timpul în care se utilizează partea îmbunătățită Structura sistemelor de calcul (01-2)

  33. Legea lui Amdahl (4) • Rezultă: • Creșterea totală a vitezei este: Structura sistemelor de calcul (01-2)

  34. Legea lui Amdahl (5) • Exemplul 1.4 • O eroare frecventă în aplicarea legii Amdahl este de a se confunda: • “Fracțiunea de timp în care se poate utiliza îmbunătățirea” cu • “Fracțiunea de timp după utilizarea îmbunătățirii” • Legea este o indicație a modului în care trebuie să se distribuie resursele • Exemplul 1.5 Structura sistemelor de calcul (01-2)

  35. Rezumat (1) • Pentru a sintetiza performanța unui grup de programe de evaluare se pot utiliza diferite metrici • De obicei, se utilizează media geometrică a timpilor de execuție normalizați față de un calculator de referință • Programele artificiale (sintetice) de evaluare încearcă să emuleze comportamentul programelor reale • Exemple: Whetstone, Dhrystone Structura sistemelor de calcul (01-2)

  36. Rezumat (2) • Programele nucleu (kernel) de evaluare se pot utiliza pentru evaluarea performanței supercalculatoarelor • Exemple: LivermooreLoops, Linpack • SPEC CPU2006: pachet de programe pentru evaluarea performanței UCP, a memoriei și a generării codului de către compilator • Două colecții: CINT2006, CFP2006 • Măsurarea vitezei de execuție: raport SPEC • Măsurarea ratei: rata SPEC Structura sistemelor de calcul (01-2)

  37. Rezumat (3) • Legea lui Amdahlindică creșterea vitezei care se poate obține dacă se îmbunătățește o parte a unui calculator • Factori de care depinde creșterea vitezei: fracțiunea de timp în care se poate utiliza îmbunătățirea; creșterea vitezei obținutedacă îmbunătățirea s-ar utiliza permanent • Poate indica modul în care trebuie distribuite resursele pentru a îmbunătăți raportul cost/performanță Structura sistemelor de calcul (01-2)

  38. Noțiuni, cunoștințe (1) • Metrici pentru sintetizarea performanței unui grup de programe de evaluare • Media aritmetică ponderată a timpilor de execuție • Timpi de execuție normalizați față de un calculator de referință • Avantaje și dezavantaje ale mediei geometrice a timpilor de execuție • Programe artificiale (sintetice) de evaluare a performanțelor Structura sistemelor de calcul (01-2)

  39. Noțiuni, cunoștințe (2) • Programe nucleu de evaluare a performanțelor • Setul de programe de evaluare SPEC CPU2006 • Măsurători efectuate de setul de programe de evaluare SPEC CPU2006 • Raportul SPEC • Rata SPEC • Legea lui Amdahl • Factorii de care depinde creșterea vitezei în legea lui Amdahl Structura sistemelor de calcul (01-2)

  40. Întrebări • Care sunt metricile pentru sintetizarea performanței unui grup de programe? • Ce sunt programele sintetice de evaluare? • Ce sunt programele nucleu de evaluare? • Pentru ce tipuri de măsurători se poate utiliza setul de programe SPEC CPU2006? • Enunțați legea lui Amdahl. Care sunt factorii de care depinde creșterea vitezei? Structura sistemelor de calcul (01-2)

More Related