シカラボ

キャッシュメモリの仕組み|よく使うデータをCPUの近くに置く【ITパスポート】

シカラボ編集部
キャッシュメモリの仕組み|よく使うデータをCPUの近くに置く【ITパスポート】

調べものをするとき、よく開く本は机の上に置いておくのではないでしょうか。毎回それを書庫まで取りに行っていたら、作業がまったく進みません。コンピュータの中でも同じことが起きています。CPUから見ると主記憶は「書庫」で、取りに行くたびに待たされます。その待ち時間を減らすための「机の上」がキャッシュメモリです。

キャッシュメモリとは

キャッシュメモリとは、CPUと主記憶のあいだに置かれた、高速に読み書きできるメモリのことです。

CPUコアと主記憶の間にあって、データを高速に読み書きするためのメモリ

(出典:ITパスポート試験 平成22年春期 問66)

置き場所だけでなく、何のために置くのかも過去問がはっきり書いています。

主記憶とのアクセス時間を見かけ上短縮することによって、CPUの処理効率を高める。

(出典:ITパスポート試験 平成21年春期 問69)

ここで大事なのが「見かけ上」という言葉です。主記憶そのものが速くなるわけではありません。よく使うデータを手前に置いておくことで、結果として待ち時間の平均が短くなるという話です。この言い回しは平成27年春期の問52にも出てきます。

シラバス上は、テクノロジ系の「コンピュータシステム」に含まれるメモリのキーワードです。CPUの性能を語るときにほぼ必ずついてくるので、押さえておきましょう。

具体例でイメージをつかむ

机と書庫のたとえを、もう少し進めてみましょう。

机の上は手を伸ばせば届きますが、置ける本は数冊です。書庫はいくらでも入りますが、往復に時間がかかります。だから「よく開く本だけを机に置く」という使い分けをします。キャッシュメモリと主記憶の関係も同じで、キャッシュのほうが速いかわりに容量は小さいという関係になっています。

実は机も一段ではありません。手元の平積みと、すぐ横の本棚。コンピュータでも1次キャッシュと2次キャッシュに分かれています。

1次キャッシュは最初にアクセスされ、2次キャッシュは1次キャッシュにデータがないときにアクセスされる。

(出典:ITパスポート試験 平成26年春期 問65)

まず1次を見て、無ければ2次を見て、それでも無ければ主記憶へ。手前から順に探しにいくという一点さえ持っていれば、平成30年秋期の問65のような出題も落としません。

CPUがまず1次キャッシュ、次に2次キャッシュ、最後に主記憶へと手前から順に探しにいくことを示した図

なお、机に何を置くかを人が指定するわけではありません。平成29年春期の問92には「ヒット率を上げるために、よく使うプログラムを利用者が指定して常駐させる」という選択肢がありますが、これは誤りです。どのデータを置くかは装置側が決めます。

主記憶・補助記憶との違い

記憶装置は、速さと容量が逆向きに並びます。試験では、複数の記憶装置からアクセス時間が最も短いものを選ぶ形で問われます。

速さ容量位置づけ
キャッシュメモリ最も速い最も小さいCPUのすぐそば。よく使うデータを置く
主記憶(メインメモリ)速い中くらい実行中のプログラムとデータを置く
補助記憶(SSD・HDD)遅い大きい電源を切っても消えない。データを保存しておく

SSDとHDDは、記憶階層の上ではどちらも「補助記憶」の段に入ります。ITパスポートのシラバスでも、記憶階層の用語例は「キャッシュメモリ、主記憶、補助記憶」の3つなので、表では1段にまとめました。どちらも電源を切っても内容が残る点で、キャッシュメモリや主記憶とは役割が違うと整理しておきましょう。

キャッシュメモリ・主記憶・補助記憶(SSD・HDD)を階層として並べると、CPUに近いほど速く、容量が小さいという順になることを示した図

覚え方は「CPUに近いほど速くて小さい」です。キャッシュメモリが主記憶より大きいことはありません。平成29年春期の問92でも「キャッシュメモリのサイズは、主記憶のサイズよりも大きいか同じである」が誤答として並んでいます。

ただし、これはキャッシュメモリから補助記憶までを階層として並べたときの話です。同じCPUどうしを比べるなら、キャッシュメモリの容量が多いほど、よく使うデータを手前に置いておきやすくなり、処理速度の向上につながります。効果は処理内容によって異なります。

平成29年秋期の問75には「CPU内のキャッシュメモリの容量は、少ないほど処理速度が向上する」という選択肢がありますが、これは誤答です。令和4年の問81にもほぼ同じ選択肢が誤答として並んでいます。

試験ではこう出る

シカラボに収録されているITパスポートの過去問では、キャッシュメモリを主題にした問題は8問です(2026年9月時点)。内訳は、キャッシュメモリの説明として適切なものを選ぶ形が5問です。ほかに、アクセス時間が最も短い記憶装置を選ぶ形と、目的から用語を選ぶ形(平成27年春期 問52)が1問ずつあります。SRAMやDRAMとの組合せを問う形(令和元年秋期 問60)も1問あります。まずは肩慣らしに、アクセス時間を比べる1問からどうぞ。

腕試し問題

出典:ITパスポート試験 平成31年春期 問70

次の記憶装置のうち、アクセス時間が最も短いものはどれか。

解答と解説

解説(解答せずに開けます)

正解はウです。

キャッシュメモリはCPUのすぐそばにあり、4つの中でアクセス時間が最も短くなります。主記憶より速いからこそ、手前に置く意味があります。

  • ❌ ア「HDD」→ 補助記憶です。主記憶より遅いので、最も短くはなりません
  • ❌ イ「SSD」→ HDDと同じ補助記憶です。こちらも主記憶より遅くなります
  • ❌ エ「主記憶」→ キャッシュメモリが短縮しようとしている相手です

次は、8問のうち5問を占める「説明として適切なものを選ぶ」形を解いてみましょう。

腕試し問題

出典:ITパスポート試験 平成29年春期 問92

CPUのキャッシュメモリに関する説明のうち、適切なものはどれか。

解答と解説

解説(解答せずに開けます)

正解はイです。キャッシュメモリは主記憶の実効アクセス時間を短縮するために使われます。アはサイズの大小が逆です。ウは、主記憶を大きくしてもCPUとの速さの差は縮まらないので誤りです。書庫を広くしても往復の時間は変わらないのと同じで、主記憶の大きさにかかわらずキャッシュメモリの効果はなくなりません。エは前に触れたとおり、置くデータを利用者が指定するわけではありません。

まとめ

  • キャッシュメモリは、CPUと主記憶のあいだに置かれた高速なメモリ
  • ねらいは主記憶とのアクセス時間を「見かけ上」短縮すること。主記憶そのものが速くなるのではない
  • 1次 → 2次 → 主記憶と、手前から順に探しにいく
  • CPUに近いほど速くて小さい。キャッシュメモリが主記憶より大きいことはない(平成29年春期 問92 の誤答)。ただし同じCPUどうしなら、キャッシュメモリの容量が多いほど処理速度の向上につながる(効果は処理内容によって異なる)。容量は「少ないほど」速いとする選択肢は誤答(平成29年秋期 問75・令和4年 問81)
  • 何を置くかは装置側が決める。利用者が指定するものではない

机と書庫のたとえは、記憶装置の並びを思い出すときにも使えます。速さの順が出てきたら、CPUに近い順にキャッシュメモリ・主記憶・補助記憶の3段を思い浮かべてみてください。

この記事のタグ

関連記事