フォーラムではコア数やクロック周波数についてよく議論されますが、決定的な要素でありながらあまり注目されないのが、プロセッサのキャッシュメモリです。この統合された超高速メモリは、階層的に構成されており、RAMに常に依存することなくコアにデータを供給する役割を担います。その設計は、特にデータアクセスが大規模かつ継続的に行われるゲームや要求の厳しいソフトウェアにおいて、処理の滑らかさに直接影響を与えます。
キャッシュ階層:L1からL3へ、キャッシュミスを最小化する 🧠
効率性はその階層構造にあります。L1キャッシュは最も小さく高速で、各コアに専用で割り当てられています。L2キャッシュはレイテンシがやや高く容量も大きくなり、通常は複数のコアで共有されます。L3キャッシュ、すなわち共有キャッシュは最も大きく、チップ全体にサービスを提供します。コアがデータを必要とする時、この順序で検索が行われます。データが見つからなかった場合、キャッシュミスが発生し、RAMへのアクセスを余儀なくされます。RAMへのアクセスは数百サイクルも遅くなります。大容量で適切に管理されたキャッシュは、これらのミスを削減します。
CPUがRAMへの旅を強いられる時 🐌
これこそが劇的な瞬間です。キャッシュの速度に慣れ親しんだプロセッサが、求めるデータを見つけられません。そして、遠く離れたRAMメモリの地へと、遅くて重い旅に出発します。この旅は、クロックサイクルに換算すると、地球の中心への探検に匹敵します。その間、コアは虚ろな目で待つことになり、FPSはためらい、あなたは問題がグラフィックボードにあると思うでしょう。キャッシュは、CPUという厨房がRAMという市場に材料を買いに行かなくて済むようにする、効率的なウェイターのようなものなのです。