CPUのVcore電圧を下げることは消費電力の抑制に効果的だが,Core i7 11700KでVcore電圧を下げたところ消費電力だけでなくIPC(Instruction Per Clock:クロック当たりの性能)まで落ちる現象に遭遇した.
CPUの消費電力と動作周波数・Vocre電圧との関係をCore i7 11700Kで検証するため,様々な電圧と周波数の組み合わせでCinebench R23実行時の消費電力の測定をしたのだが,その副次的な結果として,あるVcore電圧を境にしてIPCに違いが出ていることが分かった.10700K(Comet Lake)ではこのような現象はなかったので,Rocket Lake特有のものと思われる.
なお,本稿では本来の目的であったCPUの消費電力と動作周波数・Vcore電圧についても後半に記載している.
CPUのVcore電圧とクロック当たりの性能の関係
下のグラフの横軸はHWInfoで測定したCinebenchのマルチ実行中の実効動作周波数(Core Effective Clock)平均値,縦軸がCinebenchのスコアである.グラフ中の2つの凡例は,それぞれベンチマーク中のVcore電圧の平均値が1.296V未満のグループ,1.296V以上のグループを示している.
グラフより,Vcore平均値1.296V以上のグループに比べて1.296V未満のグループは同一周波数におけるスコアが低くなっており,IPCが低下していることがわかる.ただし,1.296Vという値はCPUや環境によって異なるだろう.
この現象の原因は何であろうか.CPUの周波数やVcore電圧の設定やデータの測定に使用したアプリケーションは10700Kと同じなので,これらが原因とは考えにくい.11700KというかRocket Lakeでは本来10nmルールで実装されていたSunny Coveアーキテクチャを14nm++ルールにバックポートしており,そのあたりが影響しているのかもしれない(Alder Lakeはどうなのだろうか.誰かやってほしい)
CPUの消費電力と動作周波数・Vcore電圧の関係
次に,本来の目的であったCPUの消費電力と動作周波数・Vcore電圧の関係を検証した.前回の検証ではCore i7 10700Kを用いたが,アーキテクチャの異なる11700Kでも同様の結果となるのだろうか.
下のグラフは横軸にCPUの動作周波数*Vcore^2[GHz*V^2],縦軸にIA Coreパッケージ電力をとったもので,Cinebenchのスコアと同様にVcore電圧1.296Vを境にグラフが2つのグループに分かれている.この点を除くと10700Kと同様に,消費電力はおおむね動作周波数*Vcore^2に比例している.
なお,上のグラフの横軸を動作周波数*Vcore^2.5にした場合は以下のようになった.こちらも10700Kと同様に直線性が向上しており,CPU消費電力はVcore電圧の2乗より2.5乗のほうにより良い比例関係を持つ結果となった.
最後に,これまでの検証で使用したソフトウェアを記載しておく.
・Intel Extreme Tuning Utility(Intel XTU)
CPUのクロック,Vcore電圧設定に使用.ただし,Rocket Lake世代では動作周波数を3.6GHz未満に設定できないため,3.6GHz未満はBIOSで設定した.BIOSで設定しておけばXTU側でもその値が認識される.
・HWInfo
動作周波数,Vcore電圧などのモニタリングやCSVファイルへの記録に使用.記録する項目が多すぎるとCSVファイルの項目数がバグる場合があるので,必要なもの以外はモニタリングを切ったほうがいい(データ整理はExcelマクロで行ったのだが,ハードウェア構成を変えてないのにCSVファイルの列数が違う場合があり,ひどく困った)
0 件のコメント:
コメントを投稿