2020年7月26日日曜日

Cinebenchの試行回数についての検証

 CPUベンチマークによく利用されているCinebenchだが,ベンチマーク中に起こる何らかの要因でスコアが下振れすることがある.このため,どのくらいの試行回数で妥当な結果を得られるのか検証した.
 Cinebenchはバージョン20を使用し,50回の試行を行った.その他の条件は以下の通り.

  • CPU:intel core i7 9700K
  • MB:ASUS Z390-F Gaming
  • 電力制御:intelの推奨値を適用.PL1=95W,PL2=120W,tau=8sec.
 なお,50回も手動でベンチマークを走らせるのはかなり大変なので,フリーのRPAソフトHiMacroExで自動化した.

結果

 以下のグラフはベンチマークスコアを試行順にならべたものだが,スコアが試行した順番によらず一定の範囲でばらついていることが分かる.

  

 次のグラフは横軸を試行順からスコアが低い順に並び替えたもので,最小値または最大値付近でスコアの急激な変化が見られる.最大・最小値のこのような挙動は測定一般でよくみられるもので,正確な測定の妨げとなる.このため,測定値を何回か行い,その平均値や中央値を代表値とすることが多い.ただ,平均値は最大最小値の影響を中央値よりも大きく受けるため,今回は中央値の方を信頼できる値として扱うことにした.


 今回のベンチマークでは,試行50回におけるスコアの中央値が3535cb,平均値が3534cbとなり,ほとんど差がみられなかった.これは値がきれいに分布していることを示しており,こういった場合は代表値として平均値も採用できる.


 平均値は中央値よりも計算が楽なので可能なら平均値を使いたいが,試行回数が少ないと最大・最小値の影響が大きくなってしまう.だからといって無駄に回数を大きくしたくない.では何回くらいの試行が妥当なのか.
 以下のグラフはベンチマーク総試行回数がN回の時の平均値を試行順にならべたもので,試行回数が10回未満ではスコアのばらつきが大きく,10回以上だとばらつきが少なくなっていることが分かる.試行回数10回の時の平均値は3538で中央値との差異は0.08%と小さく,これだけ小さければ中央値の代替として問題ないだろう.



 以上のことから,Cinebenchでは試行回数10回の平均値で妥当なスコアを得られることが分かった.ただ,今回のベンチマークでの最大値と最小値の差異は1%で,これくらいだったら2,3回でも十分ではと思ってしまう.


0 件のコメント:

コメントを投稿