CPU キャッシュとは何ですか?なぜゲームにとって CPU キャッシュがそれほど重要なのでしょうか?

 CPU キャッシュとは何ですか?なぜゲームにとって CPU キャッシュがそれほど重要なのでしょうか?

Ryzen 7 5800X3D のような製品が ゲーム用の最高の CPU としての栄冠を獲得すると、おそらく CPU キャッシュとは何なのか、そしてそもそもなぜそれがそれほど重要なのか疑問に思っているでしょう。 AMDの次期Ryzen 7000 CPUとIntelの第13世代Raptor Lakeプロセッサがより多くのキャッシュに重点を置くことはすでにわかっており、これが将来的に重要な仕様になることを示しています。

しかし、CPU キャッシュを気にする必要があるでしょうか? CPU キャッシュとは何なのか、なぜそれほど重要なのか、そしてゲームにどのように大きな違いをもたらすのかについて詳しく説明します。

CPUキャッシュとは何ですか?

AMD Ryzen 7 5800X3D チップ。

キャッシュは CPU 自体 内にあるメモリの量で、個々のコアに統合されるか、一部またはすべてのコア間で共有されます。これはプロセッサ上に直接存在する小さな専用メモリであるため、PC で何かを行うたびに CPU がシステム RAM から情報をフェッチする必要がなくなります。すべてのプロセッサには少量のキャッシュがあり、小型の CPU ではおそらく数キロバイトしか取得できませんが、大型の CPU では数メガバイト相当のキャッシュを保持できます。

しかし、 RAM があるのに 、特に 1 つの RAM に数ギガバイトのメモリを搭載できる場合に、なぜキャッシュが必要なのか疑問に思われるかもしれません。すべてはパフォーマンスです。 1990 年代になると、CPU と RAM 間のパフォーマンス向上のペースが明らかになり始めました。結局のところ、CPU 設計者は速度の向上に重点を置いていましたが、RAM 設計者は容量の増加を望んで速度を無視していました。 CPU 設計者にとって、これは問題でした。RAM 速度は、多くのアプリケーションにとって CPU パフォーマンスの重要な要素であり、CPU と RAM の差が大きくなるほど、パフォーマンスを向上させるのが難しくなるからです。

キャッシュが解決策でした。キャッシュは RAM に比べて容量が少ないですが、ほとんどの場合、その高速性がそれを補ってくれます。ただし、キャッシュは完璧ではありません。その主な弱点はサイズです。キャッシュは、保存できる量が少ない割に物理的に大きいです。キャッシュはノードの縮小に対しても回復力があるため、CPU 内のコアやその他のコンポーネントは世代間で非常に簡単に縮小する可能性がありますが、キャッシュの縮小ははるかに少なくなります。このため、キャッシュは CPU の非常に高価なコンポーネントになります。これが、通常、キャッシュのストレージ容量が非常に少ない主な理由の 1 つです。

CPU キャッシュとは何ですか?なぜゲームにとって CPU キャッシュがそれほど重要なのでしょうか?

キャッシュはどのように機能しますか?

主流のキャッシュ採用により、キャッシュと RAM の実装がさらに微妙になり、最終的にはキャッシュが最上位、RAM が中間、ストレージが最下位というメモリ階層になりました。この段階的なアプローチにより、CPU の重要なデータを物理的にプロセッサに近づけることができるため、遅延が短縮され、PC の動作が快適になります。

現代の記憶階層。

キャッシュには独自の階層、つまりキャッシュ レベルがあり、L1、L2、および L3 キャッシュに分割されます。これらはあらゆる種類のキャッシュですが、実行する機能は若干異なります。

L1 キャッシュはキャッシュの第 1 レベルであり、最小レベルでもあり、通常は L1 命令 (L1i) と L1 データ (L1d) に分割されます。 CPU 内の各コアには、L1 キャッシュの専用チャンクがあり、そのサイズは通常わずか数キロバイトです。 L1 キャッシュに保存されるデータの種類は、CPU が使用したばかり、またはすぐに使用すると予想されるものです。 CPU が L1 キャッシュにないデータを必要とする場合、CPU は次のレベルである L2 に進みます。

L1 キャッシュと同様に、L2 キャッシュは単一の CPU コア専用であることが多いですが、一部の CPU では複数のコア間で共有されます。また、はるかに大きいです。たとえば、Core i9-12900K の各 P コアには、80 キロバイトの L1 キャッシュと、ほぼ 16 倍の 1.25 メガバイトの L2 キャッシュがあります。ただし、キャッシュが大きいほどレイテンシが高くなります。つまり、CPU コアとキャッシュ間の通信に時間がかかることになります。 CPU が数マイクロ秒、さらにはナノ秒以内に処理を完了したい場合、L2 キャッシュのわずかに長い遅延が重要になります。 CPU は、要求されたデータを L2 キャッシュ内で見つけることができない場合、次のレベルである L3 に問い合わせます。

L3 キャッシュは重要です。CPU 内の一部またはすべてのコア間で共有され、そのサイズは大きくなります。 12900K には、たとえば、L2 キャッシュの 24 倍に相当する 30 MB の L3 キャッシュがあります。 L3 キャッシュのレイテンシは L2 よりもさらに悪いですが、CPU が必要なデータを RAM に要求する必要をなくすためには、大規模な L3 キャッシュを持つことが非常に重要です。ストレージを除けば、RAM はメモリ階層の中で速度と遅延が最も悪く、CPU が必要なデータを取得するために RAM にアクセスする必要があるたびに、処理が停止してしまいます。理想的には、大幅な速度低下を防ぐために、重要なものはすべて少なくとも L3 キャッシュ内に保存されることになります。

一部の CPU には L4 キャッシュもありますが、通常は CPU パッケージ上の RAM として機能します。 Broadwell アーキテクチャに基づく Intel の最初の 14nm CPU の一部には 128MB の組み込み DRAM が含まれており、同社の今後の Sapphire Rapids サーバー CPU には、追加レベルのキャッシュのように使用される HBM2 が搭載されています。

CPU キャッシュとは何ですか?なぜゲームにとって CPU キャッシュがそれほど重要なのでしょうか?

CPUキャッシュはゲームにとって重要ですか?

3D V-Cache CPUを保持するAMD CEO。

。シングルスレッドのパフォーマンス、クロックあたりの命令 (IPC)、およびクロック速度がゲームのパフォーマンスにおいて最も重要な要素だと伝統的に言われてきましたが、 AMD と AMD の競争においてはおそらくキャッシュが最も重要な要素であることが非常に明らかになりました。 インテル

今日のゲームの設計方法により、キャッシュはゲームにとって非常に重要です。最近のゲームにはランダム性が多く、CPU は常に単純な命令を実行する必要があります。十分なキャッシュがないと、グラフィックス カードは命令が積み重なって ボトルネックを引き起こす ため CPU で待機することになります。 Far Cry 6 AMD の 3D V-Cache テクノロジがどの程度の違いを生むかについては、以下の例をご覧ください。

Far Cry 6 における Ryzen 7 5800X3D のパフォーマンス。

近年、ゲーム用のキャッシュが増加する傾向にあります。 AMD の Ryzen 3000 CPU は、前世代の 2 倍の L3 キャッシュを備え、ゲーム速度が大幅に向上し、Intel にほぼ追いつきました。 Ryzen 5000が発売されたとき、AMDはキャッシュを追加しませんでしたが、CPU内のL3キャッシュの2つのブロックを統合し、レイテンシーを大幅に短縮し、AMDをゲームパフォーマンスでリードしました。 AMD は、 Ryzen 7 5800X3D で 3D V キャッシュ テクノロジーを倍増させ、CPU の上部に L3 キャッシュの 64MB チップをスタックし、合計 96MB となり、主力製品である Ryzen 9 5950X をも上回ります。

Intel は AMD に追いつき続けており、その現行世代の Alder Lake CPU には最大 30MB の L3 キャッシュが搭載されていますが、これはほとんどの Ryzen CPU よりも大幅に少ないですが、さらに多くの L1 および L2 キャッシュも搭載しています。ただし、L3 容量における Intel の不利な点は、Ryzen 5000 CPU がゲーム用にはるかに高速であることを意味するものではありません。 、12900K がゲームのパフォーマンスにおいて Ryzen 9 5950X と同等であることがわかりました。

キャッシュを巡る競争は、今後登場する Ryzen 7000 および Raptor Lake CPU でもほぼ確実に続くでしょう。 Ryzen 7000 は Ryzen 5000 の 2 倍の L2 キャッシュを備えていることが確認されており、おそらく V-Cache を使用する CPU がさらに増えるでしょう。一方、Intel には独自バージョンの V-Cache がありませんが、Raptor Lake は CPU 自体にだけでも Alder Lake よりもはるかに多くの L3 キャッシュを搭載していると噂されています。

「 CPU キャッシュとは何ですか?なぜゲームにとって CPU キャッシュがそれほど重要なのでしょうか?」についての動画選定!

【高校情報Ⅰ】3-2 CPUとメモリの仕組み:レジスタ・クロック信号・クロック周波数・マルチコアプロセッサ
CPUとメモリとは?誰にでもわかるように解説します【テックアイエス漫画】