ハードウェア

IntelのIce Lake世代CPUは「命令の種類による最大クロック制限」が緩和されている

by sourcecoda

複数のデータをひとつの命令で処理できるシングルインストラクション・マルチプルデータ(SIMD)命令は、CPU演算の高速化に大きく寄与しています。しかし、SIMD命令は多くのCPUリソースを必要とするため、Intel製CPUには特定のSIMD命令実行時に最大クロック数を制限する仕様が存在しています。このクロックダウン制御は一部のユーザーを悩ませていましたが、Ice Lake世代のCPUでは制限が緩和されているとの調査結果が報告されています。

Ice Lake AVX-512 Downclocking | Performance Matters
https://travisdowns.github.io/blog/2020/08/19/icl-avx512-freq.html#fn:tiring

optimization - SIMD instructions lowering CPU frequency - Stack Overflow
https://stackoverflow.com/questions/56852812/simd-instructions-lowering-cpu-frequency/56861355#56861355

サーバー向けのSkyelake世代Xeonには、AVX-2およびAVX-512命令を実行すると処理の重さに応じてクロックダウンを行う仕様が存在しており、「ライセンスベース」のクロックダウンと呼ばれています。ライセンスベースのクロックダウンはAVX命令とは関係のない処理にまで影響が及ぶことから、2017年にCloudflareが報告したように、一部のユーザーからは問題視されていました。

クロックダウン制御には最大クロック制限の「厳しさ」にあたる「L0」「L1」「L2」の3つのライセンスが用意されています。L0が最も緩やかな制限、L2が最も厳しい制限で、通常の処理はL0、AVX-2を利用した処理はL1、AVX-512を利用した処理はL2ライセンスによる制御が行われます。下の表はプログラムが利用するコア数とライセンス別の最大クロック数をまとめたもので、通常の命令を1コアで実行した場合の最大クロック数が3200MHzであるのに対し、AVX-512命令を14コアで実行した場合は最大クロック数が1600MHzまで制限されています。


AVX-512命令はIce Lake世代CPUにも搭載されていることを受け、エンジニアのTravis Downs氏はIce Lake世代のCPUにおけるライセンスベースのクロックダウンについて調査を実施。CPUに「Core i5-1035G4」を用いて、Downs氏が自作したCPUの命令実行速度を測定できる「avx-turbo」でベンチマークを実行し、クロックダウン制御がどのように行われるかを確かめたとのこと。

クロックダウン制御の調査は、「通常の命令」「CPUの負担が小さいAVX-2命令」「負担が大きいAVX-2命令」「負担が小さいAVX-512命令」「負担が大きいAVX-512命令」を1~4コアで実行し、それぞれの実行時におけるクロック数を計測して行われており、結果は以下の表にまとめられています。1コアでAVX-512命令を実行した場合は100MHzのクロックダウンが見られますが、それ以外の条件では命令の種類によってクロック数に差がないという結果になったとのこと。


この結果は、Ice Lake世代のCPUでは「ライセンスの割り当て方針」が変更されていることによるもの。Skylake世代のXeonでは、下の表のようにL0、L1、L2ライセンスが割り当てられていましたが……


Ice Lake世代のCPUのライセンス割り当ては以下であるとのこと。処理負担の大きいAVX-512命令を実行した場合のライセンスがL2からL1に、同じく処理負担の大きいAVX-2命令を実行した場合のライセンスがL1からL0に移行しており、最大クロック制限が緩和されていることがわかります。


今回の調査結果から、「AVX-512命令使用時のクロックダウン制御に対する姿勢を改める必要がある」とDowns氏は指摘。ライセンスベースのクロックダウン制御はCPU全体に大きな影響を与えていましたが、Ice Lake世代のCPUを利用している場合は「ダウンクロックを恐れる必要はない」とDowns氏はコメントしています。

この記事のタイトルとURLをコピーする

・関連記事
IntelがIce Lake世代のCPUに施した「目立たないパワーアップ」とは? - GIGAZINE

Intelが次期CPUアーキテクチャ「Sunny Cove」、内蔵GPU「Gen11」、ディスクリートGPU「Xe」などを発表 - GIGAZINE

「Skylake-SP」世代のサーバー向けIntel Xeonが登場、「AMD EPYC」とどちらが高性能なのか? - GIGAZINE

NVIDIAのビデオカードをちょこっといじって30万円台のカードに変える方法 - GIGAZINE

in ハードウェア, Posted by log1n_yi

You can read the machine translated English article here.