主記憶のアクセス時間が60ナノ秒,キャッシュメモリのアクセス時間が10ナノ秒であるシステムがある。
キャッシュメモリを介して主記憶にアクセスする場合の実効アクセス時間が15ナノ秒であるとき,キャッシュメモリのヒット率は幾らか。
正答4
解説
正解は4です。
キャッシュメモリのヒット率を、実効アクセス時間から逆算する問題です。
ヒット率をhとすると、確率hでキャッシュメモリに、確率1-hで主記憶にアクセスします。
実効アクセス時間は、それぞれのアクセス時間を確率で重み付けした平均になります。
【計算】
実効アクセス時間=h×キャッシュのアクセス時間+(1-h)×主記憶のアクセス時間です。
15=10h+60(1-h)を立てます。
右辺を展開すると、15=60-50hになります。
50h=45となり、h=0.9です。
【選択肢別解説】
1:× h=0.1を代入すると、10×0.1+60×0.9=55ナノ秒になります。
15ナノ秒にはなりません。
2:× h=0.17を代入すると、10×0.17+60×0.83=51.5ナノ秒になります。
15ナノ秒にはなりません。
3:× h=0.83を代入すると、10×0.83+60×0.17=18.5ナノ秒になります。
15ナノ秒にはなりません。
4:○ h=0.9を代入すると、10×0.9+60×0.1=15ナノ秒になり、条件と一致します。
【ポイント】
ヒット率が高いほど、実効アクセス時間はキャッシュのアクセス時間に近づきます。
1-hはNFP(Not Found Probability)と呼ばれ、式に出てくることがあります。