Automatică și calculatoare

Previzualizare laborator:

Extras din laborator:

1. Introducere

Un test "benchmark" se presupune a fi o metoda standard de masurare a performantelor unui

sistem de calcul pentru a putea fi comparat cu un altul. Simpla evaluare a unor parametri simpli

(de exemplu viteza în MIPS sau MFLOPS) este, adeseori, nerelevanta.

Pentru orice aplicatie exista o performanta caracteristica, ce conteaza pentru utilizator. Un

test "benchmark" este util doar în masura în care el seamana aplicatiei în cauza. De exemplu,

unele microprocesoare pot sa atinga viteza unor sisteme complexe (sau chiar sa o depaseasca) pe

teste "benckmark" nenumerice, desi performanta calculelor în virgula flotanta, sau a operatiilor de

intrare/iesire sa fie extrem de scazuta. Pe de alta parte, arhitecturile cu microprocesor tind sa

prezinte o performanta ridicata pentru

programe mici (printr-o buna utilizare a setului de registre propriu, a memoriilor cache sau de

lucru de pe cip, etc.) desi în cazul unor aplicatii complexe prezinta o "cadere" spectaculoasa a

performantei.

În mod ideal, calculatoarele ar trebui sa fie comparate executând aplicatia dorita pe fiecare

din ele, dar acest lucru nu este practic si de aceea testele "benchmark" sunt utilizate pentru

evaluare în activitatea curenta. Unele teste au fost construite cu atentie si de aceea pot fi un

indicator util al performantelor cu atât mai mult cu cât limitarile lor sunt bine întelese. Testul

Whetstone este un astfel de exemplu, fiind util în caracterizarea performantelor în aplicatii

stiintifice (de calcul numeric), desi el omite o serie de aspecte (ce vor fi amintite mai târziu).

Testul Savage se ocupa de un aspect îngust al performantei, desi el este inclus de multe ori în

pachete "benchmark" de uz general. Pe de alta parte, exista teste prost construite si care nu pot da

o masura reala a performantei. Un astfel de test este Dhrystone, care, în ciuda acestui fapt, este

totusi extrem de raspândit.

Este important de retinut ca toate aceste teste "benchmark" au fost destinate masinilor

monoprocesor; nici unul dintre ele nu a fost destinat in mod particular pentru paralelism si nici

unul din ele nu este un program de aplicatie real ! Programele reale sunt utilizate pentru

prelucrarea datelor de un anume fel si, de multe ori, ele pot fi procesate independent, permitând o

crestere spectaculoasa de performanta prin paralelism (utilizând mai multe procesoare). Deoarece

nu exista metode generale de paralelizare a aplicatiilor, nu exista nici teste "benchmark" pentru

arhitecturi paralele. Testele descrise în continuare sunt utile pentru masini scalare sau vectoriale

de uz general.

O remarca se cuvine a fi facuta: în momentul actual se constata o "coborâre" a

paralelismului la nivelul cipurilor: majoritatea procesoarelor moderne, realizate in tehnologie

VLSI, includ arhitecturi pipeline si cu multiplicare extrem de sofisticate.

Performantele obtinute au determinat o reconsiderare a masinilor monoprocesor la nivelul

aplicatiilor conventionale. Un exemplu este procesorul a-DEC ce lucreaza la o frecventa de ceas

de 150 250 MHz si asigura 100 200 MFLOPS (a se compara cu seria CRAY !!!). În aceste

conditii testele "benchmark" reprezinta singura cale acceptabila de evaluare a performantelor.

2. O clasificare a testelor "benchmark"

În aceasta lucrare testele "benchmark" sunt destinate doar unitatilor centrale (nu si altor

subansamble dintr-un sistem de calcul). O clasificare posibila a testelor "benchmark" este

prezentata mai jos.

a. Dupa natura aplicatiei:

· teste generale pentru aplicatii stiintifice (de calcul numeric - în special virgula flotanta);

· teste generale pentru aplicatii ne-numerice (de sistem);

· teste specializate (pentru categorii restrânse de aplicatii).

b. Dupa natura procesoarelor testate:

· teste pentru procesoare scalare;

· teste pentru procesoare vectoriale.

În continuare vor fi prezentate testele cele mai raspândite: Whetstone, Savage, Dhrystone si un

test vectorial simplu.

3. Testul Whetstone

Acest test a fost construit pentru a compararea puterii procesoarelor în aplicatii stiintifice. Rularea

acestui program este considerata a fi echivalenta cu executia a aproximativ un milion de

instructiuni "Whetstone" (denumire conventionala a unor operatii flotante ipotetice).

Performanta este masurata în "Whetstones per second" si difera de orice masura a

performantei flotante exprimate în MFLOPS ! În plus fata de operatiile pure în virgula flotanta,

testul include: operatii în aritmetica întreaga, masive indexate, apeluri de proceduri, salturi

conditionate si evaluari de functii elementare. Acest mixaj este realizat în proportii bine precizate

si studiate pentru a simula o aplicatie stiintifica "tipica"; testul este cunoscut si aplicat de mai bine

de 25 ani.

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Automatica si Calculatoare
    • LAB_AC1.pdf
    • LAB_AC10.pdf
    • LAB_AC11.pdf
    • LAB_AC12.pdf
    • LAB_AC13.pdf
    • LAB_AC2.pdf
    • LAB_AC3.pdf
    • LAB_AC4.pdf
    • LAB_AC5.pdf
    • LAB_AC6.pdf
    • LAB_AC7.pdf
    • LAB_AC8.pdf
    • LAB_AC9.pdf
Alte informații:
Tipuri fișiere:
pdf
Nota:
10/10 (1 voturi)
Nr fișiere:
13 fisiere
Pagini (total):
110 pagini
Imagini extrase:
111 imagini
Nr cuvinte:
30 279 cuvinte
Nr caractere:
170 656 caractere
Marime:
2.05MB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Automatică
Predat:
la facultate
Materie:
Automatică
Sus!