キャッシュメモリとは?階層(L1・L2・L3)と、ヒット率

公開: 更新: カテゴリ: テクノロジ系

30秒で結論

キャッシュメモリとは(全体像)

キャッシュメモリとは、CPUと主メモリ(メインメモリ)の間に置く、高速で小容量のメモリのことだ。

なぜ必要かというと、主メモリは容量が大きいが、CPUから見ると少し遠くて遅い。そこで、よく使うデータを、CPUのすぐ近くにある速いメモリ(キャッシュ)にコピーしておくことで、待ち時間を減らし、処理を速くする。

倉庫と机でたとえると分かりやすい。主メモリは「大きいけれど遠い倉庫」、キャッシュは「小さいけれど手元にある引き出し」。よく使うものを引き出しに入れておけば、いちいち倉庫まで取りに行かなくてすむ。

ここで一番のポイント。キャッシュは「大きいほど良い」わけではない。速いメモリは値段が高いので、速さとコストのバランス(トレードオフ)で、容量が決められている。「キャッシュは、いくらでも大きくできる(大きいほど良い)」と思い込むと誤りになる。


詳しく:階層(L1・L2・L3)と、ヒット率

ここが心臓部。キャッシュの階層を表で押さえよう。

キャッシュメモリの階層

階層速さ容量イメージ
L1(1次)最も高速最も小さい手元のペン立て
L2(2次)L1より低速L1より大きい机の引き出し
L3(3次)L2より低速さらに大きい部屋の棚(全コアで共有)

キャッシュは、L1・L2・L3の階層になっている。L1が最も高速で小容量、番号が大きくなるほど(L2→L3)、低速だが大容量になる。ここで注意。L1が最上位(最も速い)だ。「L1が一番下(遅い)」と思い込むと誤りになる。

そして、性能を左右するのがヒット率。これは、CPUが必要としたデータが、キャッシュにある割合のこと。ヒット率が高いほど、主メモリまで取りに行く回数が減り、処理が速くなる

わかりやすく言い換えると

身近なたとえで整理しよう。

キャッシュメモリは、「よく使うものを入れておく、手元の引き出し」のイメージ。遠い倉庫(主メモリ)まで行かずにすむので、速くなる。

階層(L1・L2・L3)は、「近くて速い小さな置き場(L1)から、少し遠くて大きい置き場(L3)まで」の段階。要するに、L1が一番近くて速い。

ヒット率は、「ほしいデータが、手元の引き出しにある確率」。つまり、ヒット率が高いほど、待ち時間が減って速くなる。


試験のツボ

🔴 一番出る:キャッシュメモリの役割

①CPUと主メモリの間にある、高速で小容量のメモリ

②よく使うデータを近くに置いて、処理を速くする

🔴 次に出る:階層(L1・L2・L3)

①L1が最も高速で小容量(L1が最上位)

②番号が大きいほど(L2→L3)低速だが大容量

🟡 押さえると安定:ヒット率

①必要なデータがキャッシュにある割合

②ヒット率が高いほど、処理が速くなる


よくある間違い

「L1キャッシュは、いちばん遅い(最下位の)キャッシュだ」→ ✗  L1が最も高速で、最上位。番号が大きいほど(L2→L3)低速だが大容量。

「キャッシュメモリは、大きければ大きいほど良い」→ ✗  速いメモリは高価。速さとコストのバランス(トレードオフ)で容量が決まる。

「ヒット率が低いほど、処理が速くなる」→ ✗  逆で、ヒット率が高いほど、主メモリへ取りに行く回数が減って速くなる。


試験での出題パターン

実際の問題でたしかめてみよう。

オリジナル問題1(キャッシュメモリの役割)

📝 オリジナル問題 1 キャッシュメモリの役割

キャッシュメモリに関する次の記述のうち、最も適切なものはどれか。

  1. CPUと主メモリの間にある、高速で小容量のメモリのことである
  2. 社員の出退勤を記録して、毎月の給与を計算するためのしくみだ
  3. 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指す
  4. 完成したシステムを宣伝して、より多く売るための広告活動である
セクハム
セクハム 解答・解説

解答は 1 だよ!

キャッシュメモリは、CPUと主メモリの間にある、高速で小容量のメモリなんだよ!よく使うデータを近くに置いて、処理を速くするんだね!

選択肢2は給与計算、選択肢3は請求書の事務、選択肢4は広告で、どれも違うよ!

選択肢判定理由
1CPUと主メモリの間の高速小容量メモリで正しい
2給与計算のしくみではない
3請求書の事務の話
4広告活動ではない

オリジナル問題2(階層)

📝 オリジナル問題 2 キャッシュの階層

キャッシュの階層に関する次の記述のうち、最も適切なものはどれか。

  1. 社員の給与を計算するときだけ、階層が分かれるとされているものだ
  2. 取引先へ請求書を郵送するときだけ、階層が分かれるとされている
  3. L1が最も高速で小容量、番号が大きいほど低速だが大容量である
  4. L1がいちばん遅く、番号が大きいほど高速になるとされているのだ
セクハム
セクハム 解答・解説

解答は 3 だよ!

キャッシュは、L1が最も高速で小容量、番号が大きいほど低速だが大容量なんだよ!L1が最上位(一番速い)なんだね!

選択肢1の給与、選択肢2の請求書、選択肢4の「L1がいちばん遅い」は、いずれも違うよ!

選択肢判定理由
1給与計算で分かれるのではない
2請求書で分かれるのではない
3L1が最速・番号が大きいほど大容量で正しい
4L1が最も高速

オリジナル問題3(ヒット率)

📝 オリジナル問題 3 ヒット率

キャッシュのヒット率に関する次の記述のうち、最も適切なものはどれか。

  1. 社員の給与の計算しだいで、ヒット率が決まるとされているものだ
  2. 必要なデータがキャッシュにある割合で、高いほど処理が速くなる
  3. 取引先への請求書の枚数しだいで、ヒット率が決まるとされている
  4. ヒット率が低いほど、処理が速くなるものだとされているのである
セクハム
セクハム 解答・解説

解答は 2 だよ!

ヒット率は、必要なデータがキャッシュにある割合で、高いほど処理が速くなるんだよ!主メモリまで取りに行く回数が減るからなんだね!

選択肢1の給与、選択肢3の請求書、選択肢4の「低いほど速い」は、いずれも違うよ!

選択肢判定理由
1給与計算で決まるのではない
2ほしいデータがある割合・高いほど速いで正しい
3請求書の枚数で決まるのではない
4高いほど速くなる

まとめ

押さえどころ

次に学ぶ


執筆: SikakuQuest編集部

勉強は、クエストになった。

資格の勉強を、冒険に変えるRPG学習アプリ

App Storeで見る