応用情報技術者 2017年 秋期 午前2 問11
問題文
容量がMバイトでアクセス時間がナノ秒の命令キャッシュと、容量がMバイトでアクセス時間がナノ秒の主記憶をもつシステムにおいて、CPUからみた、主記憶と命令キャッシュとを合わせた平均アクセス時間を表す式はどれか。ここで、読み込みたい命令コードがキャッシュに存在しない確率をとし、キャッシュ管理に関するオーバヘッドは無視できるものとする。
選択肢
ア:
イ:(正解)
ウ:
エ:
容量とアクセス時間から求める平均アクセス時間の計算式【午前2 解説】
要点まとめ
- 結論:平均アクセス時間は「キャッシュヒット率 × キャッシュアクセス時間 + ミス率 × 主記憶アクセス時間」で表される。
- 根拠:命令キャッシュに存在しない確率はミス率、存在する確率はヒット率であり、それぞれのアクセス時間を重み付け平均する。
- 差がつくポイント:容量比で重み付けするのではなく、アクセス確率(ヒット率・ミス率)で加重平均する点を理解することが重要。
正解の理由
選択肢イの式 は、キャッシュに命令が存在する確率(ヒット率)にキャッシュのアクセス時間を掛け、存在しない確率(ミス率)に主記憶のアクセス時間を掛けて加算しています。これは平均アクセス時間の定義に完全に合致します。容量やはアクセス時間の計算に直接影響しないため、式に含める必要はありません。
よくある誤解
容量の比率でアクセス時間を重み付けする誤りが多いですが、実際はアクセス確率(ヒット率・ミス率)で加重平均します。容量はキャッシュの性能指標の一つですが、平均アクセス時間の計算式には直接関係しません。
解法ステップ
- 問題文から「キャッシュに存在しない確率」をミス率と認識する。
- キャッシュに存在する確率は(ヒット率)とする。
- 平均アクセス時間は「ヒット率 × キャッシュアクセス時間 + ミス率 × 主記憶アクセス時間」で表す。
- 容量やはアクセス時間の計算に影響しないため無視する。
- 選択肢の中からこの式に合致するものを選ぶ。
選択肢別の誤答解説
- ア: 容量比で重み付けしているが、アクセス確率とは無関係で誤り。
- イ: 正解。ヒット率とミス率で加重平均している。
- ウ: アクセス確率と容量を混同し、誤った重み付けをしている。
- エ: ヒット率とミス率の順序が逆で、意味が異なるため誤り。
補足コラム
キャッシュメモリの性能評価では、ヒット率(命令がキャッシュに存在する割合)が重要です。平均アクセス時間はこのヒット率とミス率を用いて計算し、システム全体の性能指標となります。容量はキャッシュのヒット率に影響を与えますが、直接的に平均アクセス時間の計算式に含めるものではありません。
FAQ
Q: なぜ容量は平均アクセス時間の計算に含めないのですか?
A: 容量はキャッシュのヒット率に影響しますが、平均アクセス時間はヒット率とアクセス時間の加重平均で求めるため、容量自体は直接関係しません。
A: 容量はキャッシュのヒット率に影響しますが、平均アクセス時間はヒット率とアクセス時間の加重平均で求めるため、容量自体は直接関係しません。
Q: キャッシュのオーバヘッドがある場合、平均アクセス時間はどう変わりますか?
A: オーバヘッドがある場合は、その時間も加味して平均アクセス時間を計算しますが、本問題では無視できるとされています。
A: オーバヘッドがある場合は、その時間も加味して平均アクセス時間を計算しますが、本問題では無視できるとされています。
関連キーワード: キャッシュメモリ、平均アクセス時間、ヒット率、ミス率、アクセス時間、メモリ階層

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

