世界を動かす技術を、日本語で。

インテルのライオンコーブPコアとゲームワークロード

概要

Intelの最新CPUアーキテクチャ Lion Cove は、前世代 Raptor Cove から大幅な進化を遂げた高性能コア。 ゲーム用途では IPCの伸び悩みメモリ階層の遅延 がボトルネックとなる傾向。 L1.5キャッシュなど新設計による キャッシュ命中率の向上 が見られるが、L3/DRAMアクセス時のコストは依然高い。 フロントエンドとバックエンドの両面で スループット損失の要因 が詳細に分析されている。 ゲームワークロードは 低IPC傾向 で、Lion Coveの設計意図と実際のゲーム性能のギャップが明らか。

Lion Coveアーキテクチャの主な特徴と進化点

  • Raptor Cove からの進化点として、 命令実行エンジンの再構成キャッシュ階層の拡張 を実現

  • 1サイクルあたり8マイクロオペレーション の持続能力、これによりSPEC CPU2017ベンチマークで高いIPCを記録

  • L1データキャッシュ を2段階に分割(L1/L1.5)、 3MB L2キャッシュ を搭載

  • L1.5キャッシュはL1ミスの多くを捕捉するが、 絶対的なヒット率は中程度

  • L2キャッシュのヒット率は ゲームごとに50~72%、L1.5+L2の累積ヒット率は 75~86%

    • Intelの L2大型化戦略 はL3アクセス削減には一定の効果
    • しかし L3やDRAMアクセス時の遅延コスト は依然として高い

ゲームワークロードにおけるLion Coveの挙動

  • ゲームでは IPCが低く抑えられがち、SPECベンチマークのような高IPCは出にくい
  • バックエンドのメモリ遅延 がスループットロスの主因、 フロントエンドや命令実行遅延 も影響
  • Bad Speculation(分岐ミス)やフロントエンド帯域不足 は大きな問題ではない
  • 命令キャッシュ(L1i 64KB) は大半の命令フェッチをL2アクセスなしで処理
    • ただし L2命令キャッシュミス時の遅延 は顕著、特にコード局所性の悪いゲームで顕著

パフォーマンスモニタリングとキャッシュ階層の詳細

  • L1D_MISS.LOAD イベントでL1D(48KB)ミスを計測
  • L1D_PENDING.LOAD イベントはL1.5(192KB)ミスのみ計測
    • 両者を組み合わせることで L1.5ヒットをゼロ遅延扱い として分析可能
  • ARB(アービトレーションキュー) でのレイテンシ計測はCPUコアクロックと異なるため、補正が必要
  • DRAM帯域の限界 には達しておらず、 ARB以降のレイテンシは制御下
  • L2ミスは絶対数としては少ないが、L3/DRAMアクセスの高コストを考慮すると依然課題

フロントエンド・分岐予測・命令キャッシュの挙動

  • 分岐予測器の精度は非常に高い が、ミス時は大きなペナルティ
    • L2やそれ以上からの命令取得 は数十サイクルの遅延をもたらす
  • マイクロオペキャッシュ(DSB) が主な命令供給源
  • L1iヒット率は高水準、L2コードミスはまれだが発生時は顕著な遅延
  • Cyberpunk 2077 はコード局所性が良く、 Palworld は悪い傾向
  • オフコア命令読み出しレイテンシ はデータ側より低いが、依然として大きな遅延要因

バックエンド・リタイアメントと遅延要因

  • ゲームのような レイテンシバウンドなワークロード ではリタイアメント段が「飢餓状態」になりやすい
    • 長遅延命令や分岐ミス復帰 がリタイアメントをブロック
    • スループットは「バスタブ曲線」的に変動、ほとんどのサイクルでリタイアメントスロットが遊休
  • パイプライン内のバブル分岐予測器の構造的制限 も一部影響

総括とゲーム性能の考察

  • Lion Cove は設計上の広い帯域や高IPCを活かせるワークロードで真価を発揮
  • ゲームでは メモリ階層の遅延低IPC特性 が制約となり、理論性能を引き出しにくい
  • L2/L1.5キャッシュの拡張 は一定の効果だが、L3/DRAMアクセスの遅延コストは今後も課題
  • 分岐予測精度や命令キャッシュ設計 は優秀だが、ワークロード特性による制約が顕著
  • ゲーム用途では スループットよりレイテンシ最適化 が引き続き重要課題

Hackerたちの意見

122ポイントでコメントなし?これってボットとかじゃないの?

あり得るね。普通は、話題が一般のHNユーザーには難しすぎるけど、興味を持っているってことだよ。

こういう記事は多くの人にとってすごく興味深いよ。最近は全てのCPUメーカーが製品のドキュメントをあまり出さなくなってるからね。ほとんどの人は、CPUがどう動いているかを知るために、十分な時間や知識(あるいは役に立たないかもしれないCPUサンプルを買うお金)がないから、他の人がベンチマークをして結果を公開してくれるのはありがたいんだ。最新のIntelの大コアの強みや弱みについての有用な詳細を学ぶことができるし、それがプログラムの最適化や特定のアプリケーションに対するIntel CPUの適性を評価するのに役立つから、あまりコメントすることはないよね。

何をコメントすればいいのかって感じだよ。Intelがまた製品リリースを失敗しただけ。ほんと悲しい状況だね。

122ポイントでコメントなし?IntelやMicrosoftの話題にありがちな典型的なFUDや脱線した愚痴を読むよりは、コメントがない方がマシだね。

すごく良い記事だね。

実際にどういうことか見てみると、俺のマルチジェネレーションメタベンチマークでは、285Kは現在12位にしかランクインしてなくて、最近のIntelのトッププロセッサー(i7-13700Kと14700K、そしてそれぞれのi9)の後ろにいるし、いくつかのAMDプロセッサーにも負けてる。https://www.pc-kombo.com/us/benchmark/games/cpu 3Dキャッシュはゲームではかなり役立つけど、前のモデルに負けるのはもっと痛いだろうね。

これについては完全には理解してないんだけど、新しいモデルで何が得られたの?14700kには専用の工業用冷却が必要だった気がするんだけど、新しいモデルは少なくとももっと少ない電力を使うの?

BIOSでEコアがオフになってるのは、Pコアにアフィニティを設定するとCall of Dutyで大きなスタッタリングが起きたからだよ。Pコアのマイクロアーキテクチャを単独で分析するためにこれをするのは理解できるけど、これだと潜在的な顧客にとってはテストがあまり面白くなくなるね。もしこのCPUを買ったら、BIOSでEコアを無効にする人はあまりいないと思うから、どのCPUを買うか決めるためには、Eコア/Pコアの分割からくるソフトウェアやスケジューリングの問題を考慮に入れた結果を見る方が面白いと思う。これは批判じゃなくて、ただの観察だよ。これらのCPUの実際のゲーム結果は、これらの結果よりも悪いだろうね。

未来は異種コンピューティングだって、まだ多くの人が気づいてないと思う。今や多くのデスクトップが実際にはノートパソコンになってるしね。こういう環境でソフトウェアがうまく動かないってことは、最初からちゃんとパフォーマンスを出す努力がされてなかったってことだよ。デスクトップケースが虹色の水槽みたいになってるゲームは、今のモバイルコンピューティングの時代ではニッチになっちゃうだろうし、売上も注目も減ってきてるから、スタジオを続けるための道じゃないかもね。

それはゲームの互換性の問題で、プロセッサの問題じゃないよ。ゲームやWindowsのアップデートで解決できることだね。

これらのCPUの実際のゲーム結果は、これらの結果が示すよりも悪いだろう。これは主にアプリケーションやOSの問題で、CPUの問題ではない。

そうだね、IntelはEコアとPコアの分割について、もっと良い初日サポートを確保するか、完全にやめるべきだよ。今のところ、みんなそれをIntelが言ってるほどポジティブに見てないからね。

ところで、IntelがAMDのStrix Haloに対抗する製品、つまり消費者向けのクアッドチャネルLPDDR5Xに取り組んでるって話はある?

記事をもっと理解したいんだけど、どの本を読めばいい?

https://archive.org/details/computerarchitectureaquantit...

素晴らしい記事だね、いつも通り。トップダウン分析についてだけど、約5分の1のケースでパイプラインがフロントエンドバウンドになっているのを見てちょっと驚いたよ。それって本当にあり得るの?それに、フロントエンドバンド幅がフロントエンドバウンドのサブグループなのはなんで?マイクロオペレーションは一つで十分じゃないの?

フロントエンドバウンドは鵜呑みにしない方がいいよ。よく、条件分岐やアトミックのために必要なロングテールメモリロードのせいでバックエンドのバックプレッシャーが原因になってることがあるからね。サンプリング手法やトップダウン分析には限界があるから、ポテンシャルボトルネックを理解するための出発点として考えるべきで、最終的な結論ではないよ。

Xeon w7 2595Xを使うのをおすすめするよ。そうすれば26個のPコアと0個のEコアが手に入るから。