キャッシュ実効アクセス時間の練習問題

結論

ヒット率からの実効アクセス時間、ヒット率や主記憶時間の逆算、2階層キャッシュ、書込み方式を、何問でも生成する練習問題。ヒット率とミス率の取り違えをその場で指摘します。

式そのものは短いのに、本番で崩れるのは「ヒット率とミス率のどちらを、どちらの時間に掛けるのか」です。数字を入れ替えても計算は最後まで通ってしまうので、答えが出た時点では間違いに気づけません。手を動かして、速いほうに大きい重みが付くという形を体に入れるのが早いです。

問(1〜50)

この練習問題の作り

出題される型

例題

実際に出題される問題の例です。ページ上のアプリでは、これと同じ形式の問題が何問でも生成されます。

例題 1ミス率 → 実効アクセス時間

キャッシュメモリのアクセス時間が 25 ナノ秒、主記憶のアクセス時間が 80 ナノ秒、キャッシュのミス率(NFP率)が 0.2 のとき、実効アクセス時間は何ナノ秒ですか。

  1. 20 ナノ秒
  2. 36 ナノ秒 ← 正解
  3. 80 ナノ秒
  4. 52.5 ナノ秒

ミス率が 0.2 なので、ヒット率は 1 − 0.2 = 0.8 です。ここで取り違えると答えが 69 ナノ秒 になります。実効アクセス時間 = ヒット率 × キャッシュ + ミス率 × 主記憶 なので、0.8 × 25 + 0.2 × 80 = 20 + 16 = 36 ナノ秒 です。速いほうに大きい重みが付くので、答えは必ずキャッシュと主記憶の間で、キャッシュ寄りになります。

例題 2キャッシュ導入による高速化

キャッシュを導入する前、主記憶だけを参照していたときの平均アクセス時間は 150 ナノ秒でした。キャッシュを導入したところ実効アクセス時間は 15 ナノ秒になりました。アクセス速度は何倍になりましたか。

  1. 0.1 倍
  2. 1.111111 倍
  3. 10 倍 ← 正解
  4. 9 倍

速くなった倍率は「導入前 ÷ 導入後」です。150 ÷ 15 = 10 倍 になります。時間が短くなるほど倍率は大きくなるので、割る向きを間違えると1より小さい値が出ます。そうなったら向きが逆だと気づけます。

例題 3ヒット率 → 実効アクセス時間

キャッシュメモリのアクセス時間が 5 ナノ秒、主記憶のアクセス時間が 60 ナノ秒、キャッシュのヒット率が 0.6 のとき、実効アクセス時間は何ナノ秒ですか。

  1. 27 ナノ秒 ← 正解
  2. 3 ナノ秒
  3. 60 ナノ秒
  4. 32.5 ナノ秒

ミス率は 1 − 0.6 = 0.4 です。実効アクセス時間 = ヒット率 × キャッシュ + ミス率 × 主記憶 なので、0.6 × 5 + 0.4 × 60 = 3 + 24 = 27 ナノ秒 です。速いほうに大きい重みが付くので、答えは必ずキャッシュと主記憶の間で、キャッシュ寄りになります。

よくある質問

キャッシュ実効アクセス時間の練習問題は何問ありますか。

問題は固定ではなく、その場で生成しています。1〜50問の範囲で解きたい問題数を指定でき、何度でも新しい問題が出ます。

同じ問題をもう一度解けますか。

解けます。出題するとURLに問題セットの識別子が付きます。そのURLを開き直せば、まったく同じ問題が同じ順番で出ます。

間違えた問題だけ解き直せますか。

解き直せます。結果画面に「間違えた問題だけ解き直す」ボタンがあります。型別の正答率も表示されるので、どの型で落としているかが分かります。

ほかの練習問題