l1、l2、l3キャッシュとは何ですか、またどのように機能しますか?

目次:
- CPUのキャッシュメモリとは
- ストレージレベル
- 第3レベル、最速
- キャッシングの仕組み
- メモリーコントローラーが登場する
- L1、L2、およびL3キャッシュ
- L1キャッシュメモリ
- L2キャッシュメモリ
- L3キャッシュメモリ
- プロセッサーのキャッシュL1、L2、L3を知る方法
- レイテンシ、バス幅、キャッシュ不足
- L1、L2、およびL3キャッシュメモリに関する結論
キャッシュL1、L2、L3について聞いたことがありますか? 確かにそうですが、これらのキャッシュレベルが実際に何を意味するのかわからない場合は、この記事ですべてを説明します。 これからは、プロセッサのメモリ特性について理解を深めることができます。
コンピューターの最も重要なコンポーネントの1 つがそのメモリであることはすでにご存じでしょう。もちろん、 RAMメモリーとは、すべてのプログラムとオペレーティングシステムが読み込まれ、プロセッサーで使用されるか、ディスクにアクセスする必要があるものです難しい。
RAMは、ハードドライブ、特に機械式ドライブよりもはるかに高速です。 しかし、私たちのコンピュータ、特にプロセッサ内には、より高速なメモリがまだあります。これがキャッシュメモリです。 これが、今日見られるものです。
コンテンツインデックス
CPUのキャッシュメモリとは
最初に知っておく必要があるのは、一般的なキャッシュとは何かです。 すでに述べたように、PC内にはいくつかのタイプのメモリがあり、正確にはキャッシュメモリが最も高速です。
ストレージレベル
最初に、最初のステップで、間違いなくハードドライブであるプライマリストレージを用意します 。 それらの中にすべての情報が永久に保存され、そこからオペレーティングシステムが機能的なPCを作ります。 これは、最も遅いメモリであり、HDD (メカニカルハードドライブ)で約 150 MB /秒から 、市場で最も高速なSSDの3, 500 MB /秒 までの範囲です。
次に、 ランダムアクセスメモリまたはRAMがあります 。 これは、より小さなソリッドステートメモリであり、 データを永続的に保存することはできず 、ハードディスクとプロセッサ間のゲートウェイとして機能します。 DDR4で30, 000 MB /秒を超える 速度を提供します。 メモリは、情報の損失を防ぐために常に更新する必要があるため、 DRAM (ダイナミックRAM)とも呼ばれます。
第3レベル、最速
そして最後に、一番上にあるのがキャッシュです。 これは、 独自のマイクロプロセッサの内部にインストールされ 、 SRAM (スタティックRAM)タイプの非常に小さなメモリです。 通常のRAMよりも製造コストがはるかに高く、常に更新しなくてもデータを保持できます。
CPUの内部にインストールされるという事実は、CPUをプロセッシングコアに最も近いものにします。 実際、それは200 GB /秒を超える速度と約10または11 ns (ナノ秒)のレイテンシに達します 。 キャッシュメモリは、CPUによってすぐに処理される命令を格納し、可能な限り迅速に命令にアクセスできるようにします。
次に、キャッシュメモリはいくつかのレベルに分割されます 。各レベルはより高速で、より小さく、プロセッサに近くなります。 プロセッサは現在、内部に合計3レベルのキャッシュメモリを備えています。 これに入る前に、キャッシュがどのように機能するかを簡単に見てみましょう。
キャッシングの仕組み
ご存じないかもしれませんが、実際には、コンピューターのすべての周辺機器と要素には、ハードドライブ自体、プリンター、そしてもちろんグラフィックスカードのGPUなど、 独自のキャッシュメモリ があります 。 そして、CPUを含むすべての機能は同じになります。
私たちが知っているように、コンピュータはオペレーティングシステムとそのプログラムのおかげで「スマート」です。 これらの各プログラムは、 プログラミング言語から作成されます。 プログラミング言語 は、CPUで規則正しく実行する必要がある一連の命令です 。 現時点では、さまざまなレベルのストレージを確立することが理にかなっているため、秩序立った方法で言います。
データはハードドライブに固定された方法で保存されますが、非常に遅く、CPUから「遠く」離れているため、RAMメモリにロードされます。これは、はるかに高速なストレージであり、稼働中。
メモリーコントローラーが登場する
しかし、それでもまだ十分ではありません。今日のCPUは非常に高速で、各コアで毎秒数百万の操作を実行できるため、キャッシュに入ります。 CPUの内部には、以前はノースブリッジまたはノースブリッジと呼ばれていた、マザーボードに搭載されたチップであるメモリコントローラーがあります。 さて、 このメモリコントローラーは現在CPU内にあり、実行される命令をRAMから取得し、処理サイクルの結果を返す役割も担っています。
ただし、CPUとRAMメモリの通信を担当するバスには、データバスとアドレスバスの2種類があります。
- データバス :基本的に、データと命令が循環するトラックです。 RAM、キャッシュ、コアを相互に通信するデータバスがあります。 アドレスバス :これは、CPUがデータが配置されているメモリアドレスを要求する独立したチャネルです。 命令はアドレスを持つメモリセルに格納され、問題のデータを見つけるためにRAM、キャッシュ、CPUの両方がそれを認識している必要があります。
L1、L2、およびL3キャッシュ
今では、PCでストレージがどのように機能するか 、およびキャッシングがどのように機能するかを大まかに理解しています。 しかし、CPU内にL1、L2、L3のキャッシュがあることを知っておく必要があります。非常に小さなものが非常に適切に収まることは信じられないようです。 これら3つのレベルのキャッシュメモリでは、速度と容量の階層に対応します。
L1キャッシュメモリ
L1キャッシュは最速の構成で、コアに最も近いものです。 これは、CPUによってすぐに使用されるデータを格納します。そのため、速度は約1150 GB /秒であり、遅延は0.9 nsです。
このキャッシュメモリのサイズは合計で約256 KBですが、CPUパワー(およびコスト)によって異なりますが、実際には、 Intel Core i9-7980 XEなどのワークステーションプロセッサには、合計1152 KB。
このL1キャッシュは、L1データキャッシュとL1命令キャッシュの 2つのタイプに分けられます 。1つ目は処理するデータの格納を担当し、2つ目は実行する演算に関する情報(加算、減算、乗算、など)。
さらに、 各コアには独自のL1キャッシュがあるため、6コアのプロセッサを使用している場合、6つのL1キャッシュがL1 DとL1 Iに分割されます。Intelプロセッサでは、それぞれ32 KBで、 AMDプロセッサもL1 Iで32 KBまたは64 KBです。 もちろん、いつものように、それらは品質とパワーによって異なります。
L2キャッシュメモリ
次に見つけるのは、 L2またはレベル2のキャッシュです。 少し遅くなりますが、これはより多くのストレージ容量を持っていますが、約470 GB /秒、遅延は2.8 nsです。 ストレージサイズは通常256 KBから18 MBの間で変化します。 私たちが扱う速度には、かなりの能力があることはすでにわかっています。
命令とデータはそこに格納され、すぐにCPUによって使用されます 。この場合、命令とデータに分割されません 。 ただし、 コアごとにL2キャッシュがあります。少なくともこれは、最も関連性の高いプロセッサの場合です。 各コアには 、通常256、512、または最大1024 KBがあります。
L3キャッシュメモリ
最後に、プロセッサチップ上に専用のスペースがあるL3キャッシュを見つけます。 これは最大で、最も低速ですが、200 GB /秒と11 nsのレイテンシについて話しています 。
現在、価値のあるプロセッサには少なくとも4MBのL3キャッシュがあり 、 最大64MBのドライブを見ることができます。 L3は通常、 コアあたり約2MBに分散していますが、各コアの内部にないため、それらと通信するためのデータバスがあります。 CPUのソルベンシーと速度は、このバスとRAMメモリ自体に大きく依存します。これが、IntelがAMDから力を得るところです。
プロセッサーのキャッシュL1、L2、L3を知る方法
この情報を知る最も速い方法の1つは、完全に無料でCPUに関する非常に完全な情報を提供するCPU-Zツール を ダウンロードすることです。 3つのレベルと、それぞれのストレージの容量です。 公式サイトからダウンロードできます。
メーカーとモデルをブラウザに配置して、メーカーのページに移動することもできますが、通常はL3キャッシュに関する情報しか提供されません。 もちろん、プロセッサーに関するすべてのレビューでは、各CPUのキャッシュに関する完全な情報を提供し、そのパフォーマンスのベンチマークを行っています。
レイテンシ、バス幅、キャッシュ不足
データは、ハードドライブからすべてのメモリレベルを介して処理コアに流れることがわかっています。 プロセッサーが最初に処理する次の命令を検索する場所は、キャッシュメモリです。品質システムは、データへのアクセス時間を最小限に抑えるために、その重要性に基づいてデータを正しく見つける方法を知っている必要があります。 。
レイテンシは、 メモリからデータにアクセスするのにかかる時間です。 より遠く、遅く、待ち時間が長く、CPUが長くなると、次の命令を待つ必要があります。 したがって、命令がキャッシュメモリにない場合、プロセッサはRAMメモリで命令を直接探す必要があります 。これは、キャッシュの不足またはキャッシュのミスと呼ばれます 。これは、低速のPCが使用されている場合です。
バス幅は、 より大きなデータブロックをメモリからCPUに転送する能力を示すため、速度にとっても非常に重要です。 CPUとRAMはどちらも64ビットですが、 デュアルチャネル機能はこの容量を128ビットに倍増できるため、これらの要素間の転送の容量が大きくなります。
L1、L2、およびL3キャッシュメモリに関する結論
私たちは常にコアの数とプロセッサの速度をよく見ています。それが全体の速度を大きく左右することは明らかです。 ただし、通常は考慮されない要素はキャッシュメモリであり、強力なプロセッサを使用する場合に不可欠です。
たとえば、4 MBまたは16 MBのL3キャッシュを搭載した6コアCPUは、パフォーマンスを測定する場合、特に複数のオープンプログラムがある場合に非常に重要です。 したがって、すべてを周波数に依存するわけではないので、今後は、プロセッサを購入する際にこのセクションをよく確認してください。
このトピックにはもっと興味深いチュートリアルがあるので、ここではそのままにしておきます。
また、更新されたハードウェアガイドをお勧めします。
これらすべての情報が、プロセッサとキャッシュメモリについてさらに理解するのに役立つことを願っています。 ご不明な点がございましたら、コメント欄でお問い合わせください。 次のチュートリアルでお会いしましょう!