![]() |
|---|
日常生活でもパソコンでもキャッシュは必要
今回は「キャッシュ」という用語を取り上げよう。日常会話でキャッシュといえば「現金」を意味することが多いが、もともとキャッシュには「たくわえる」という意味がある。パソコン用語のキャッシュは「データを一時的にたくわえる」ための高速なメモリーを指すことが多い。
キャッシュはCPUとメインメモリーの間、メインメモリーとHDDの間などに搭載されている。ここでは、CPUに搭載されているキャッシュについて解説していく。
キャッシュがCPU本来の性能を引き出している
CPUがデータの処理(演算など)をする際は、2つの作業を行なっている。まずはじめに、メインメモリーからデータやプログラムを読み込んで処理を行なう。その後に、その結果をメインメモリーに書き込んでいるのだ。
その際に問題になるのが、CPUとメインメモリーの速度差。CPUの動作速度(CPUクロック)が年々向上しているのに対して、メインメモリーのデータ転送速度やFSBクロックはあまり向上していない。そのため、両者の速度に大きな差が生じてしまっている。
![]() |
|---|
| キャッシュの仕組み。メインメモリーからデータを読み込む際はまず、キャッシュにその内容をコピーする。次に同じデータが必要になったら、メインメモリーからではなくキャッシュから読み込むことになる |
メインメモリーの速度が遅いと、データを読み込んでいる間、CPUはすることがなく遊んでしまう。言ってみれば、本来の性能を持て余している状態だ。そこで考えられたのがキャッシュだ。
CPUが処理をする場合は、同じデータを何度も読み込むことが多い。そこでCPUの内部に、容量が小さく、コストが高い代わりに超高速なメモリー(SRAMメモリーなど)を搭載して、メインメモリーの一時的な「代わり」にしているのだ。
CPUがメインメモリーからデータを読み込む際にはまずデータがキャッシュ上にコピーされる。2回目からそのデータを読み込む際は、低速なメインメモリーではなく、高速なキャッシュから読み込むことでパフォーマンスを上げる。これがキャッシュの基本的な仕組みだ。
CPUのキャッシュには階層がある
キャッシュに使うメモリーは高速だが、コストやサイズの関係であまり大容量にはできない。そこで階層化することでより効率のいいデータ転送を行なっている。
階層化されたキャッシュは、CPUに近い側から、Level1キャッシュ(1次キャッシュ)、Level2キャッシュ(2次キャッシュ)、Level3キャッシュ(3次キャッシュ)のように呼ばれる。CPUに近い側のキャッシュほど、アクセス速度は高速だが、容量は小さくなる。
![]() |
|---|
| L1キャッシュとL2キャッシュの関係。CPUに近い側から、L1キャッシュ、L2キャッシュと呼ばれる。まず、L1キャッシュを探して欲しいデータが見つかればL1キャッシュから読み込み、なければL2キャッシュを探す |
現在、パソコンで使われているCPUの大部分は、同じダイの中にL1キャッシュとL2キャッシュを搭載している。L2キャッシュの容量は「MB」で表され、同じ設計(アーキテクチャー)のCPUでも上位製品と下位製品ではL2キャッシュの容量が異なることが多い。
![]() |
|---|
| インテル「Core 2 Duo」シリーズのCPUダイ。左側の大部分を占めているのがキャッシュメモリー |
例えばインテルのCPUの場合、「Core 2 Duo E8xxx」シリーズは6MBのL2キャッシュを搭載しているが、「Core 2 Duo E6xxx」シリーズのL2キャッシュは4MB。また、廉価版である「Pentium Dual-Core」シリーズでは1MBとかなり小容量だ。
CPUのクロックが同じ場合はL2キャッシュの容量が大きい方がパフォーマンスは高くなる。L2キャッシュ容量が2倍になっても性能が2倍になるわけではない。だが、1~2割程度と少なくない差が出てくるため、CPUの性能に大きな影響を与える要素になる。
(次のページにつづく)
■キャラクター紹介
![]() |
|---|
デコ
ど近眼。パソコンなどのデジものが大好きで、パーツ屋にもよく通っている。頭に耳のようなものがついており、メガネがどうなっているのかは謎。
![]() |
|---|
アコ
ど天然。デジものはすべて間違ったスイッチを押すと爆発するものと信じている。「よく食べ、よく遊び、よく眠る」を信条とする健康優良少女。




















