Questo sito contribuisce alla audience di

Anche gli indici di prestazioni hanno i loro difetti.

Il calcolo delle prestazioni di un sistema hardware è cosa alquanto complessa, che coinvolge tantissimi aspetti hardware e software. Nel seguente intervento parleremo di indici di prestazione della CPU MIPS ed MFLOPS come valori "popolari" di valutazione della bontà di un processore.

Il parametro più utilizzato nella misurazione delle prestazioni di una CPU è l’indice MIPS (milioni di istruzioni per secondo), il quale è dato dalla seguente formula:

MIPS = Numi / (TprgA X 10*6)

1)Il valore Numi indica il numero di istruzioni di macchina corrispondente a un generico programma chiamato semplicemente A.

2)Il valore TprgA indica il tempo di esecuzione del programma A in secondi.

Numi è dato dalla seguente formula:

Numi = Nci / CPI

1) Nci indica il numero di cicli di clock che il programma A comporta, ed è dato a sua volta dalla seguente formula:
Nci = fr X Tcpu . Ove il valore fr rappresenta la frequenza di clock, e Tcpu la quantità di tempo richiesta per l’esecuzione del programma A.

2)CPI è il numero medio di clock per istruzione di macchina.

Le formule precedenti indicano esplicitamente come il valore di MIPS finale dipende dalle caratteristiche tecnologiche della CPU:
Il valore di Numi dipende essenzialmente dal repertorio di istruzioni del processore, e dalla velocità del compilatore. E’ ovvio che diversi repertori di istruzioni possono dar luogo a valori di MIPS assolutamente differenti. Inoltre, nella formulazione del parametro Nci compare la frequenza di clock caratteristica intrinseca dell’architettura di una CPU, e del suo aspetto evolutivo.
Quindi, il valore CPI dipende sia dall’architettura della CPU, che dal repertorio delle istruzioni.

Ai fini di una corretta valutazione di una CPU non può essere attendibile il parametro MIPS poichè esso tiene conto degli aspetti evolutivi e del repertorio di istruzioni. Dunque, valutare l’indice MIPS con calcolatori assolutamente diversi non ha nessun significato.

L’indice MFLOPS (milioni di operazioni in virgola mobile al secondo) è dato dalla formula seguente:

MFLOPS = Nuvim / (TprgB X 10*6)

Quanto detto per il valore MIPS può essere considerato valido per il valore MFLOPS: un programma A non può effettuare lo stesso numero di operazioni in virgola mobile su calcolatori diversi, poichè l’insieme di istruzioni in virgola mobile su macchine diverse non è uguale.