Know Intuit, prelegere, metode de evaluare a sarcinilor de domeniu de performanță de calcul și

1.2. Proprietăți de măsurare caracteristici de bază de calcul

Comparație între calculatoare, de obicei, începe cu o evaluare a performanței acestora. Acest lucru a necesitat introducerea unor unități adecvate de măsurare a performanței și dezvoltarea unor metode standard de evaluare.

Metode de evaluare a performanțelor sistemelor informatice trebuie să îndeplinească anumite cerințe. În primul rând, acestea trebuie să fie recunoscute, cât mai mult posibil pentru a evalua sistemul de calcul și se potrivesc sarcinile utilizatorului. Acesta este disponibilitatea lor pentru independentă și auto-examinare.

Baza de evaluare și comparare a metodelor performante de calculator utilizate în prezent este timpul.

Computer. care poartă o anumită cantitate de muncă în mai puțin timp, considerat a fi mai rapid.

Evaluarea caracteristicilor temporale ale lucrărilor executate de către procesorul - nu este o sarcină banală.

Pentru utilizator, este important pentru momentul în care este rezolvată problema. Dar, practic, nici un program care poate funcționa fără o parte a sistemului de operare. În legătură cu acest suportă costuri suplimentare de timp deasupra capului. Prin urmare, atunci când se măsoară performanța de cantitate utilizată cel mai frecvent de utilizator și a sistemului de timp CPU.

dificultăți suplimentare în compararea caracteristicilor temporale de pe computere diferite probleme de rezolvat din cauza faptului că respectivul cod de sistem pentru rezolvarea problemei pe un computer pe un alt utilizator de computer poate fi.

În timpul măsurării, erorile metodologice semnificative cauzate de încălcarea conceptului de bază a sistemelor de măsurare, rezultând într-un „instrument de măsurare“ devine o parte integrantă a sistemului de măsurat.

Există dificultăți metodologice serioase în compararea performanțelor calculatoarelor cu sisteme de operare diferite.

În acest sens, tehnicile de evaluare a performanțelor folosesc diferite momente de timp:

  • astronomice;
  • timpul de execuție (timpul de execuție);
  • Timpul de răspuns (timpul de răspuns);
  • timpul scurs (timpul scurs), reprezentând întârzierea misiunii și includ: timp CPU, în timp ce accesarea hard disk-ul în timp ce accesează PO, un timp de I / O, costurile sistemului de linii aeriene de operare.

Pentru a măsura timpul CPU petrecut pe punerea în aplicare a acestui program, un timp special, care se numește timp CPU (timp CPU). Din acel moment posibil, în timp de așteptare pentru o I-O și executarea altor programe. Necesitatea de a utiliza această opțiune datorită faptului că în modul multi-program, combinația de proceduri de timp, servind sarcini care utilizează resurse diferite.

timp CPU pot fi împărțite în utilizator și sistem.

Toate computerele moderne funcționează, în general, cel puțin. două sau o operațiune de sarcină, service cereri ale sistemului de operare și sarcini de utilizator cereri.

În cazul în care funcțiile sistemelor de operare poate fi redusă la o simplă sarcini sarcina de programare, timpul de sistem al procesorului poate fi neglijată. Un exemplu este aviație și sisteme spațiale de gestionare la bord, sisteme automate de control al proceselor.

procesor caracteristică ca obiect de măsurare este faptul că viteza de reacție a dispozitivelor de procesoare funcționale de multe ori nu depind de caracteristicile dinamice ale acestor dispozitive, și este dată de frecvența de impulsuri de ceas oscilator. Prin urmare, timpul procesorului poate fi calculată în două moduri:

  • înmulțirea numărului de cicluri de sincronizare necesare pentru a executa programul în durata ciclului de sincronizare,
  • sau prin împărțirea numărului de cicluri de sincronizare pentru program la frecvența de sincronizare.

O caracteristică importantă este numărul mediu de cicluri de ceas procesor necesare pentru a executa o instrucțiune (cicluri de ceas IPC pe instrucțiune). Această opțiune face ușor de a evalua timpul CPU necesar pentru acest program, cunoscând numărul de instrucțiuni executate în program.

performanța procesorului este determinată de trei parametri:

  • frecvența de ceas;
  • Numărul mediu de cicluri de ceas la comanda;
  • numărul de instrucțiuni executate.

Toți acești parametri sunt strâns legate:

  • numărul mediu de cicluri pe echipa depinde de organizarea funcțională și sistemul de comandă;
  • sincronizarea frecvenței depinde de nivelul de hardware tehnologie și organizarea funcțională a procesorului;
  • numărul de instrucțiuni executate în programul este determinat de problema care trebuie rezolvată, arhitectura de sistem și funcționează algoritmul compilatoare. trebuie să ia în considerare toate cele trei componente pentru a compara două calculatoare pentru performanța lor.

În căutarea unei valori standard pentru a evalua performanța sistemelor informatice, au fost selectate mai multe unități.

Una dintre cele mai comune dintre ele este MIPS (milioane de instrucțiuni pe secundă). Acesta indică numărul de instrucțiuni de program executate pe secundă.

Productivitatea este definită ca inversul valorii run-time, și un calculator de mare viteză are un MIPS mai mare - de rating.

La prima vedere, metrica este foarte simplu, dar utilizarea sa nu permite să se ia în considerare caracteristicile programului fiind executat și arhitectura de procesor. Este imposibil de a compara calculatoare cu un set diferit de instrucțiuni. Chiar și pe un singur calculator, rezultatul variază în funcție de diferite probleme. Probleme serioase apar în legătură cu utilizarea de co-procesoare pentru a efectua instrucțiuni în virgulă mobilă și compilatoare de optimizare. Toate acestea fac imposibilă efectuarea unei comparații obiective de procesoare diferite.

Cu conceptul de MIPS a fost odată conectat încă două valori pe baza performanței calculatorului de referință decembrie VAX 11/780 firme si unul dintre modelele RS / 6000 la IBM. Performanța acestor calculatoare a fost definită ca 1 MIPS. Sistemele de testare de performanță a fost calculată în raport cu performanța de calculatoare, care sunt de referință. Raportul estimat între aceste valori este după cum urmează: 1 IBM MIPS este 1.6 decembrie MIPS.

Utilizarea calculatorului de referință implică dificultăți serioase:

  • Ai nevoie de a reproduce în mod constant sau să mențină standardul;
  • necesită duble probleme de încercare de programare: pe test și calculatorul de referință.

Utilizarea de măsurare a performanței în computere MIPS nu este întotdeauna obiectiv. Un exemplu este problemele asociate cu calcule științifice și tehnice. Ele sunt utilizate pe scară largă în virgulă mobilă aritmetică. Rezolvarea acestor probleme necesită resurse de calcul semnificative. Problema de evaluare a performanțelor utilizate în abordarea lor sistemelor informatice a fost întotdeauna foarte brusc. În acest caz, indicatorii de performanță sunt atinse și servite sunt orientative de nivelul de dezvoltare a tehnologiei de calculator.

Prin urmare, pentru astfel de aplicații performanța procesorului a fost evaluată și evaluată în FLOPS (Fl punct O P flotante er Operațiuni în S econd), care indică cât de multe operații în virgulă mobilă pe secundă executat de un computer.

calculatoare moderne au un nivel suficient de ridicat de performanță, astfel încât valorile derivate din FLOPS utilizate în prezent. MFLOPS. GFOPS, teraflopi. PFLOPS.

Această cifră se caracterizează în principal prin utilizarea calculatoarelor în aplicații științifice și tehnologice. Acesta este conceput pentru a evalua performanța în performanța sistemului informatic de flotant operații aritmetice puncte. În caz contrar, utilizarea sa nu este întotdeauna corectă.

Această performanță, precum și MIPS. Aceasta depinde de programele specifice executate de arhitectura procesorului.

Cu toate acestea, există dezavantaje MFLOPS. În primul rând, acest lucru se datorează faptului că nu operațiunile cu virgulă mobilă compatibile de pe computere diferite.

O altă problemă este faptul că performanța diferitelor operații în timpul virgulă flotantă poate diferi semnificativ ca urmare a ratingului MFLOPS depinde puternic de compoziția amestecului de test. De exemplu, programul. constând din adăugări, va fi clasat mai sus. decât programul. compus din înmulțiri, cu un număr egal de aceste operații.

Pentru a evalua indicatorii de performanță în MIPS și MFLOPS folosit o mulțime de teste diferite. Luați în considerare câteva exemple.

amestec de testare Dhrystone este acum aproape niciodată folosit.

Amestecul este format din o sută de echipe. Dintre acestea, 53 de operatorul de atribuire, 32 de comenzi, 15 de apeluri de funcții. Deoarece numărul de metrici utilizate Dhrystone pe secundă. Testul este foarte scurt [301. 302].

„Cicluri Livermore“ sunt un set tipic de fragmente cu privire la programele de limbă Fortran. [301. 302 algoritmi de calcul] diferite puse în aplicare în aceste programe:

Selecția acestora sa bazat pe experiența vastă a creării supercomputere și complexe calcule științifice și de inginerie Livermore National Laboratory. Lawrence (Lawrence Livermore National Laboratory, LLNLs) al Departamentului de Energie al SUA

Atunci când se utilizează testarea fie un set mic (14 cicluri), sau un set mare (24 de cicluri).

Coeficientul de paralelizare a algoritmilor în intervalul de la 0 la 1. Acest lucru permite „ciclul Livermore“ pentru a evalua sistemele de calcul de performanță cu arhitectură diferită. Testul aproape nu este niciodată folosit.

testul LINPACK este un program am pentru sisteme de ecuații algebrice liniare de dimensionalitate de mare rezolvare. Acestea sunt scrise în FORTRAN [programare 301. 302].

Utilizate în aceste programe sunt utilizate pe scară largă de algoritmi pentru a rezolva multe probleme practice. Cu popularitatea acestui test este legată de utilizatori.

Argonne National Laboratory (Laboratorul Național Argonne) al Departamentului de Energie al SUA publică în mod regulat rezultatele testării diferitelor sisteme informatice în testele LINPACK.

Baza utilizată în metoda algoritmilor LINPACK de descompunere este utilizat pe scară largă în calcul de înaltă performanță. Avantajul Linpack test este structurarea lor. Pentru a implementa operațiile elementare pe vectori, vectori care includ o înmulțire cu un scalar, vector plus, produsul scalar al vectorilor sistemului de bază numit BLAS (Basic Linear Algebra subprogramele) alocate.

Datele initiale pentru test sunt reprezentate ca numere reale duble. Rezultatele obținute sunt exprimate în MFLOPS.

test de LINPACK are două niveluri.

În testul, primul nivel este utilizat LINPACK DP dimensiune matrice originală de 100 * 100. În testul de o matrice originală al doilea nivel LINPACK CTE are o dimensiune de 1000 * 1000.

Primul nivel al acestui test nu pot fi utilizate în sistemele informatice, vă permite să puneți toate matricea originală cache în memorie.

În acest caz, rezultatele pot depăși în mod considerabil capacitățile reale ale sistemului.

Teste de aplicare Linpack TPP, LINPACK TPP pentru sisteme masiv paralele se ridica la un nivel inadecvat pentru a evalua performanța acestora

Pentru a evalua performanța unor astfel de sisteme de testare utilizate HPC LINPACK (Computing foarte paralel), care asigură o încărcare completă a resurselor de calcul MPP-sistem, creșterea dimensiunii matricei. O versiune a acestui test este proiectat pentru sistemele de calcul paralel.

Pachetul LINPACK de testare cu dublă precizie utilizate pe scară largă de către factorii de decizie de sisteme de calcul de înaltă performanță.

Analiza abordări pentru evaluarea performanței sistemelor informatice conduce la următoarele concluzii:

  • Metoda de măsurare a performanței calculatorului depinde în mare măsură de alegerea unităților de măsură;
  • instrumente de măsura performanța sistemelor informatice ar trebui să fie adaptabile atât caracteristicile lor arhitecturale si clase rezolvate cu sarcinile lor de ajutor.