Narzędzie do testowania wydajności procesorów w systemie Linux

66

Szukam narzędzia, które porówna wydajność procesora w instancjach jedno- i wielowątkowych. Obecnie mam stary sprzęt z dwurdzeniowym procesorem (E7500) o częstotliwości 3,6 Ghz i zastanawiam się nad zastąpieniem go czterordzeniowym procesorem (Q9400) o częstotliwości 3,2 Ghz. Chcę zobaczyć, czy zauważę poprawę wydajności dzięki dodatkowym 2 rdzeniom (choć ze spadkiem prędkości rdzenia). Będę taktować procesory z tym samym FSB (400 MHz), a rozmiar pamięci podręcznej jest taki sam na procesor (1,5 MB) i za ile mam wart 4 GB pamięci RAM (z możliwością aktualizacji do 6 GB)

Mój syn używa głównie komputera do odtwarzania TF2 (który staram się nadal pracować pod Linuksem), a także używam go do kodowania wideo (MP4 na DVD)

Myślę, że lepiej byłoby mi z czterordzeniowym rdzeniem, ale wszelkie opinie byłyby mile widziane.

grubasek
źródło
2
Jest Geekbench, który może porównywać procesory (istnieją już wyniki testów dla e7500 i q9400 , chociaż wiele z nich jest w drastycznie różnych konfiguracjach, które będą miały różne prędkości magistrali itp.
Wilf

Odpowiedzi:

87

W rzeczywistości istnieje narzędzie o nazwie as sysbench.

Możesz go zainstalować za pomocą sudo apt-get install sysbench

Do testowania procesorów możesz to zrobić

sysbench --test=cpu --cpu-max-prime=20000 run

gdzie 20000 jest jak maksymalna liczba zdarzeń.

rɑːdʒɑ
źródło
7
--cpu-max-prime=20000jest opcjonalny, domyślnie 10000. Sugeruję, aby zachować domyślne i bawić się --max-requestszamiast (czyli liczby wykonanych operacji)
MestreLion
11
Zauważ też, że domyślnie jest to test jednowątkowy. Do testowania rdzeni N można użyć --num-threads=Ni porównać wyniki przy użyciu danych statystycznych na żądanie .
MestreLion
1
Czy jest miejsce na porównanie wyników w celu uzyskania względnej wydajności?
jjxtra
31

Alternatywnie można użyć stress-ng. Posiada test warunków skrajnych procesora jako jeden z wielu testów warunków skrajnych wbudowanych w narzędzie. Test warunków skrajnych procesora zawiera wiele różnych metod obciążenia procesora, obejmujących liczby całkowite, zmiennoprzecinkowe, operacje bitowe, obliczenia mieszane, obliczenia pierwsze i szeroki zakres obliczeń.

Zainstaluj za pomocą:

sudo apt-get install stress-ng

Aby zobaczyć metody stresu związane z procesorem, użyj:

stress-ng --cpu-method which

Aby przeprowadzić test porównawczy, na przykład, macierzy przez 60 sekund dla 4 wątków procesora, użyj:

stress-ng --cpu 4 --cpu-method matrixprod  --metrics-brief --perf -t 60
stress-ng: info:  [15876] dispatching hogs: 4 cpu
stress-ng: info:  [15876] successful run completed in 60.00s (1 min, 0.00 secs)
stress-ng: info:  [15876] stressor      bogo ops real time  usr time  sys time   bogo ops/s   bogo ops/s
stress-ng: info:  [15876]                          (secs)    (secs)    (secs)   (real time) (usr+sys time)
stress-ng: info:  [15876] cpu              71657     60.00    239.60      0.00      1194.25       299.07
stress-ng: info:  [15876] cpu:
stress-ng: info:  [15876]            885,244,279,148 CPU Cycles                    14.75 B/sec
stress-ng: info:  [15876]          1,289,303,858,968 Instructions                  21.49 B/sec (1.456 instr. per cycle)
stress-ng: info:  [15876]            201,499,961,692 Cache References               3.36 B/sec
stress-ng: info:  [15876]                    790,424 Cache Misses                  13.17 K/sec ( 0.00%)
stress-ng: info:  [15876]            157,689,508,544 Branch Instructions            2.63 B/sec
stress-ng: info:  [15876]              1,232,539,732 Branch Misses                 20.54 M/sec ( 0.78%)
stress-ng: info:  [15876]              5,755,605,036 Bus Cycles                    95.92 M/sec
stress-ng: info:  [15876]            817,296,440,876 Total Cycles                  13.62 B/sec
stress-ng: info:  [15876]                      8,532 Page Faults Minor            142.19 sec  
stress-ng: info:  [15876]                          0 Page Faults Major              0.00 sec  
stress-ng: info:  [15876]                        220 Context Switches               3.67 sec  
stress-ng: info:  [15876]                          0 CPU Migrations                 0.00 sec  
stress-ng: info:  [15876]                          0 Alignment Faults               0.00 sec  
Colin Ian King
źródło
3
„Nie można zlokalizować stresującego pakietu!”
Ehsan M. Kermani
1
Jeśli masz starszą wersję, stres nie będzie dostępny w archiwum. Są one jednak pakowane w ppa: colin-king / white
Colin Ian King
@ EhsanM.Kermani: jest dostępny w repozytoriach tylko od Ubuntu 15.14 i nowszych (i do 14.04 za pomocą repozytorium backports ). Zobacz packages.ubuntu.com/...
MestreLion
1
Z strony stres-ng: „stress-ng może również mierzyć szybkość testowania; może to być przydatne do obserwowania zmian wydajności w różnych wersjach systemów operacyjnych lub typów sprzętu. Jednak nigdy nie był przeznaczony do użycia jako dokładny test porównawczy pakiet testowy, więc NIE używaj go w ten sposób. ”
Michael Franzl
2
Jako autor stresu, lepiej rozwinę to. stress-ng jest wystarczająco dobry, aby uzyskać z niego wyniki porównawczych testów porównawczych, ale nie zostało dokładnie skalibrowane, aby powiedzieć, ile odchyleń występuje na każdym konkretnym stresorze. Dlatego sugeruję kilkakrotne uruchomienie stresora stresującego i sprawdzenie, jak duża jest zmienność w konkretnym teście warunków skrajnych, a jeśli nie różni się on znacznie, to można go uznać za wystarczająco wiarygodny, aby stanowić punkt odniesienia dla tego konkretnego przypadku użycia. Wszystko zależy od tego, jak głośny / zajęty jest system, od tego, jak dobrze działa we / wy, czy zamienia itp.
Colin Ian King
10

phoronix-test-suite

sudo apt-get install phoronix-test-suite
phoronix-test-suite list-available-suites
# Chose one, and run it.
phoronix-test-suite run pts/cpu    

Porównuje kilka rzeczywistych przypadków użycia procesorów, takich jak kompresja, szyfrowanie i bazy danych.

Uważaj, że pts/cpui inne testy porównawcze zajmują kilka gigabajtów miejsca na dysku. Może to oznaczać, że mają bardziej realistyczne obciążenia.

Testowane na Ubuntu 16.10.

Ciro Santilli
źródło
2
@downvoters proszę wyjaśnić :-)
Ciro Santilli 新疆 改造 中心 法轮功 法轮功 六四 事件
2
Dzięki. Utopiłem się w opcjach testowych, używając pierwszego pakietu z phoronixem.
andersoyvind
1
nie ma go w Debianie 9, ale nadal możesz pobrać .deb z phoronix-test-suite.com/?k=downloads i uruchomićsudo apt install ./phoronix-test-suite(...).deb
hanshenrik
1
Jedną z rzeczy, o których należy wspomnieć przy opisie PTS, jest wielkość jego testów porównawczych. Uruchomienie wspomnianego pts/cputestu porównawczego pobiera około 3 GB danych i zużywa około 7 GB miejsca na dysku (w katalogu osobistym użytkownika).
stefanct
Zgadzam się, jeśli szukasz prostego testu porównawczego, nie chcesz pakietu testowego phoronix, jest on ogromny i wciąż wymaga pobierania coraz większej liczby zależności w celu uruchomienia testów. (Jestem pewien, że jest to bardzo dokładne, kiedy naprawdę tego chcesz)
Jamie Pate,