sysbench
毎秒ファイルを書き込むCPU温度を取得できるように、マシンにストレステストをしたいと思います。これで、テストは私が設定した最大時間より長く実行されます。最大時間後に停止する方法は?
#!/bin/bash
end=$((SECONDS+30))
echo $(vcgencmd measure_temp | egrep -o '[0-9]*\.[0-9]*') >> ~/research/temperatures.txt
sysbench --test=cpu --cpu-max-prime=2000000 run --max-time=10
while [ $SECONDS -lt $end ]; do
echo $(vcgencmd measure_temp | egrep -o '[0-9]*\.[0-9]*') >> ~/research/temperatures.txt
done
その後、テストは20秒以上実行され、10秒間停止しませんでした。
$ ./stress-test
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Doing CPU performance benchmark
Threads started!
Time limit exceeded, exiting...
Done.
Maximum prime number checked in CPU test: 2000000
Test execution summary:
total time: 24.7510s
total number of events: 1
total time taken by event execution: 24.7387
per-request statistics:
min: 24738.74ms
avg: 24738.74ms
max: 24738.74ms
approx. 95 percentile: 10000000.00ms
Threads fairness:
events (avg/stddev): 1.0000/0.00
execution time (avg/stddev): 24.7387/0.00
現在、テストする全体の時間を待たずにテストが停止するように時間を低く設定しています。