令和4年度 秋期 応用情報技術者試験 午前 問10

L1,L2と2段のキャッシュをもつプロセッサにおいて,あるプログラムを実行したとき,L1キャッシュのヒット率が 0.95,L2キャッシュのヒット率が 0.6 であった。このキャッシュシステムのヒット率は幾らか。ここで L1キャッシュにあるデータは全て L2キャッシュにもあるものとする。

解答・解説

正解: エ. 0.98

2段のキャッシュシステム(L1キャッシュおよびL2キャッシュ)において、全体のキャッシュヒット率は、プロセッサが要求したデータがL1キャッシュまたはL2キャッシュのいずれかに存在する確率を指します。

全体のキャッシュヒット率は以下の手順で計算します。

  1. L1キャッシュでヒットする確率:
    問題文より、L1キャッシュのヒット率は 0.950.95 です。

  2. L1キャッシュでミスし、かつL2キャッシュでヒットする確率:
    L1キャッシュでミスする確率は 1−0.95=0.051 - 0.95 = 0.05 です。
    L1キャッシュでミスしたデータのうち、L2キャッシュでヒットする確率は 0.60.6 です。
    したがって、L1でミスしてL2でヒットする確率は 0.05×0.6=0.030.05 \times 0.6 = 0.03 となります。

  3. 全体のキャッシュヒット率:
    L1でヒットする確率と、L1でミスしてL2でヒットする確率を足し合わせます。
    0.95+0.03=0.98 0.95 + 0.03 = 0.98

したがって、正解は エ(0.98) となります。

各選択肢の解説

  • ア(0.57): 誤り。L1キャッシュとL2キャッシュのヒット率を単純に掛け合わせた値(0.95×0.6=0.570.95 \times 0.6 = 0.57)です。
  • イ(0.6): 誤り。L2キャッシュ単体のヒット率です。
  • ウ(0.95): 誤り。L1キャッシュ単体のヒット率です。
  • エ(0.98): 正解。L1キャッシュでヒットする確率と、L1キャッシュでミスしてL2キャッシュでヒットする確率の合計です。

Spineチーム