Existe-t-il un outil open source pour mesurer les performances des processeurs?


21

J'ai utilisé de nombreuses fois abpour mesurer les performances Web, hdparmpour mesurer les performances du disque dur et netperfpour mesurer les performances du réseau.

Mais je n'ai trouvé aucun outil pour mesurer les performances du processeur.

Connaissez-vous un outil permettant de mesurer les performances des processeurs? Je cherche plus spécifiquement à mesurer les Gflops.


2
voir " serverfault.com/questions/88357/estimate-flops-in-linux " pour mesurer les gflops et vous pouvez utiliser la commande mpstat ou sar pour les performances du processeur
harish.venkat

1
sar et mpstat indiquent l'activité du processeur, et non les performances du processeur. La question Serverfault indique d'utiliser LINPACK, qui n'est pas open source.
Coren

Réponses:


10

Vous devriez jeter un oeil à la page Wikipedia sur le benchmarking , elle donne pas mal d'outils de benchmark, y compris ceux qui fonctionnent sur Linux. LinPack est gratuit mais difficile à compiler. Mais vous pouvez certainement regarder NBench et quelques autres dans la liste.


NBench est un bon code, mais vieux de 15 ans. Nous avons besoin de quelque chose de nouveau. Le lien est périmé 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
Serait-ce 43 - 37 = 6 GigaFlops? Je ne vois pas comment un incrément entier dans un shell est lié aux performances en virgule flottante.
Anthon

L'objectif général était de "mesurer les performances des processeurs". Mentionne plus tard Gflops mais je pense que c'est en fait une tangente erronée. Si Gflops était le véritable objectif, poser des questions sur les performances du processeur était une erreur.
JohnMudd

Un moyen plus rapide d'obtenir le nombre que vous recherchez vraiment, c'est-à-dire les secondes qui se sont écoulées : DATE=$(date +%s); i=0; while (( i < 1000000 )); do (( i ++ )); done; echo $(( $(date +%s)-DATE ))
xenithorb

1
Bon point, j'aurais dû mettre à jour cela plus tôt. Voici mon approche actuelle: time (i = 0; while ((i <1000000)); do ((i ++)); done)
JohnMudd

1
Ce n'est pas 6 gigaflops, c'est ~ 0,17 mégabashincrements. Et, mon macbook possède tout:( i=0 ; while (( i < 1000000 )); do; (( i ++ )); done; ) 1.33s user 0.00s system 99% cpu 1.337 total
Steven Lu

1

stress-ng est un outil simple qui peut stresser et comparer le processeur.

Par exemple, testé 1 cpu

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

stress-ng: info: [20288] par défaut à une course de 86400 secondes par stresseur

stress-ng: info: [20288] répartition des porcs: 1 cpu

stress-ng: info: [20288] exécution réussie terminée en 13.93s


Je pense qu'il est trompeur de conseiller un programme de test de résistance pour comparer: il y a une grande différence entre comparer et stresser un CPU.
Paradox
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.