A〜Dを,主記憶の実効アクセス時間が短い順に並べたものはどれか。
(表:キャッシュメモリ有無|キャッシュメモリアクセス時間(ナノ秒)|キャッシュメモリヒット率(%)|主記憶アクセス時間(ナノ秒)/A|なし|-|-|15/B|なし|-|-|30/C|あり|20|60|70/D|あり|10|90|80)
正答2
解説
正解は2です。
キャッシュメモリを考慮した実効アクセス時間を求める問題です。
キャッシュメモリがない場合は、主記憶のアクセス時間がそのまま実効アクセス時間です。
キャッシュメモリがある場合は、ヒット率で重み付けした平均を求めます。
【計算】
実効アクセス時間=キャッシュのアクセス時間×ヒット率+主記憶のアクセス時間×(1-ヒット率)
A:キャッシュなしなので15ナノ秒です。
B:キャッシュなしなので30ナノ秒です。
C:20×0.6+70×0.4=12+28=40ナノ秒です。
D:10×0.9+80×0.1=9+8=17ナノ秒です。
短い順は、A(15)、D(17)、B(30)、C(40)です。
【選択肢別解説】
1:× A、B、C、Dの順は表の並び順のままです。
Dは17ナノ秒でBの30ナノ秒より短いので、この順にはなりません。
2:○ 計算結果の短い順A、D、B、Cと一致します。
3:× Cは40ナノ秒で4つの中で最も長いので、先頭にはなりません。
4:× Dは17ナノ秒ですが、Aの15ナノ秒より長いので、先頭にはなりません。
【ポイント】
キャッシュがあっても、ヒット率が低く主記憶が遅ければ、実効アクセス時間は長くなります。
Cのように、キャッシュなしのBより遅くなる場合もあります。