Чи є інструмент з відкритим кодом для вимірювання продуктивності процесора?


21

Я багато разів використовував abдля вимірювання продуктивності в Інтернеті, hdparmдля вимірювання продуктивності жорсткого диска та netperfдля вимірювання продуктивності мережі.

Але я не знайшов інструментів для вимірювання продуктивності процесора.

Чи знаєте ви інструмент, що дозволяє вимірювати продуктивність процесора? Я конкретніше хочу виміряти Gflops.


2
див. " serverfault.com/questions/88357/estimate-flops-in-linux " для вимірювання gflops, і ви можете використовувати mpstat або sar команду для продуктивності процесора
harish.venkat

1
sar і mpstat вказує на активність процесора, а не на продуктивність процесора. Питання сервера за замовчуванням вказує на використання LINPACK, який не є відкритим кодом.
Корен

Відповіді:


10

Ви можете подивитися на сторінку Вікіпедії щодо тестування , вона дає досить багато інструментів для порівняння, включаючи CPU, які працюватимуть у Linux. LinPack безкоштовний, але болю потрібно складати. Але ви, звичайно, можете подивитися на NBench та деяких інших у списку.


NBench хороший, але 15-річний код. Нам потрібно щось нове. Посилання застаріла BTW.
Конрад Гаєвський

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
Це було б 43 - 37 = 6 GigaFlops? Я не бачу, як ціле збільшення приросту в оболонці стосується продуктивності з плаваючою комою.
Антон

Загальною метою було "вимірювання продуктивності процесора". Пізніше згадується Gflops, але я думаю, що це насправді хибна дотична. Якщо Gflops була справжньою метою, то запитання про продуктивність процесора було помилкою.
ДжонМудд

Швидший спосіб дістатися до числа, якого ви насправді шукаєте, тобто минули секунди : DATE=$(date +%s); i=0; while (( i < 1000000 )); do (( i ++ )); done; echo $(( $(date +%s)-DATE ))
xenithorb

1
Добре, я мав би це оновити раніше. Ось мій поточний підхід: час (i = 0; while ((i <1000000)); do ((i ++)); done)
JohnMudd

1
Це не 6 гігафлопів, це ~ 0,17 мегабашлайну. І моя книга має власність у всіх:( i=0 ; while (( i < 1000000 )); do; (( i ++ )); done; ) 1.33s user 0.00s system 99% cpu 1.337 total
Стівен Лу

1

стрес-нг - це простий інструмент, який може підкреслювати та орієнтувати процес.

Наприклад, тестували 1 процесор

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

стрес-нг: інформація: [20288] за замовчуванням 86400 секунди за кожен стрес

стрес-нг: інформація: [20288] диспетчерські свинки: 1 кп

стрес-нг: інформація: [20288] успішний запуск завершено за 13.93 с


Я вважаю, що рекомендувати тестування тесту на стрес-тестування вводити в оману: є велика різниця між бенчмаркінгу та напругою процесора.
Парадокс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.