Esiste uno strumento open source per misurare le prestazioni della cpu?


21

Ho usato molte volte abper misurare le prestazioni del web, hdparmper misurare le prestazioni del disco rigido e netperfper misurare le prestazioni della rete.

Ma non ho trovato nessuno strumento per misurare le prestazioni della CPU.

Conosci uno strumento che consente di misurare le prestazioni della CPU? In particolare, sto cercando di misurare Gflops.


2
vedi " serverfault.com/questions/88357/estimate-flops-in-linux " per misurare gflops e puoi usare il comando mpstat o sar per le prestazioni della cpu
harish.venkat,

1
sar e mpstat indicano l'attività della cpu, non le prestazioni della cpu. La domanda Serverfault indica di utilizzare LINPACK, che non è open source.
Coren,

Risposte:


10

Dovresti dare un'occhiata alla pagina di Wikipedia sul benchmarking , che offre alcuni strumenti di benchmark inclusi quelli CPU che funzioneranno su Linux. LinPack è gratuito ma è una seccatura da compilare. Ma puoi sicuramente guardare NBench e alcuni altri nell'elenco.


NBench è buono, ma codice di 15 anni. Abbiamo bisogno di qualcosa di nuovo. Il collegamento è vecchio BTW.
Konrad Gajewski,

3
$ date; i=0; while (( i < 1000000 )); do (( i ++ )); done; date
Tue Jul 15 11:26:37 EDT 2014
Tue Jul 15 11:26:43 EDT 2014
$

1
Sarebbe 43 - 37 = 6 GigaFlops? Non riesco a vedere come un incremento di numero intero in una shell sia correlato alle prestazioni in virgola mobile.
Anthon,

L'obiettivo generale era "misurare le prestazioni della cpu". Più tardi menziona Gflops ma penso che in realtà sia una tangente fuorviata. Se Gflops era il vero obiettivo, allora chiedere informazioni sulle prestazioni della CPU era un errore.
JohnMudd,

Modo più rapido per arrivare al numero che stai veramente DATE=$(date +%s); i=0; while (( i < 1000000 )); do (( i ++ )); done; echo $(( $(date +%s)-DATE ))
cercando

1
Bene, avrei dovuto aggiornarlo prima. Ecco il mio approccio attuale: tempo (i = 0; while ((i <1000000)); do ((i ++)); fatto)
JohnMudd

1
Non si tratta di 6 gigaflop, si tratta di ~ 0,17 megabashincrements. E il mio macbook possiede tutto:( i=0 ; while (( i < 1000000 )); do; (( i ++ )); done; ) 1.33s user 0.00s system 99% cpu 1.337 total
Steven Lu

1

stress-ng è uno strumento semplice che può sottolineare e valutare il cpus.

Ad esempio, testato 1 cpu

stress-ng -c 1 --cpu-ops 5000

stress-ng: info: [20288] viene impostato automaticamente su una corsa di 86400 secondi per stress

stress-ng: info: [20288] invio di maiali: 1 cpu

stress-ng: info: [20288] corsa completata completata in 13.93s


Penso che consigliare un benchmark di stress test al benchmark sia fuorviante: c'è una grande differenza tra benchmark e stress di una CPU.
Paradox,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.