Terminal pogryzł człowieka: stress-ng
Czy może być lepszy sposób na przetestowanie wydajności swojego komputera niż… Przetestowanie jego możliwości? Za tym pozornie maślano-maślanym komunałem kryje się wiedza, jakiego narzędzia najlepiej użyć do tego celu. Większość z was zakrzyknie bez zastanowienia – „użyj stress”. I byłaby to porada słuszna, gdyby nie stress-ng.
Na ile temat jest istotny niech świadczy fakt, że stress-ng przyczynił się do wykrycia wielu błędów w kernelu – w tym także tych zagrażających bezpieczeństwu.
Oczywiście przeciętny użytkownik raczej nie będzie analizował wydajności i zachowania się niektórych funkcji kernela. Chociaż stress-ng nie jest reklamowany jako pełnoprawne narzędzie do benchmarków, to większość z nas wykorzysta go właśnie do tego celu. A możliwości mamy wiele. Np.:
uptime
stress-ng --cpu 4 --timeout 60s --metrics-brief
uptime
… co uruchomi cztery wątki testujące procesor na okoliczność przeróżnych obliczeń.
stress-ng --disk 2 --timeout 60s --metrics-brief
… co uruchomi 2 wątki wykonujące przeróżne czynności na naszym dysku – i tym samym dowiemy się o jego wydajności.
stress-ng --vm 2 --vm-bytes 1G --timeout 60s
… co dokona zaboru określonej ilości pamięci, prób jej alokacji, a dwa wątki będą wykonywały operacje odczytu i zapisu.
To zaledwie przykłady jak można wykorzystać stress-ng. Wspomniane testy można ze sobą łączyć, definiować dodatkowe parametry i uruchamiać je na dłuższy czas. Tym samym możemy zgotować naszemu komputerowi i systemowi prawdziwe piekło.
Jeżeli dopatrywać się sensowności powyższego to wystarczy pamiętać o możliwościach jakie się otwierają przed nami. Sprawdzanie stabilności termicznej, określanie stabilności pamięci, CPU i tak dalej. Za pomocą stress-ng można uniknąć wielu godzin spędzonych na dochodzeniu co i dlaczego nie działa.
A na dodatek program znajduje się po prostu w repozytoriach.