主記憶・キャッシュ・平均アクセス時間の全体像
記憶階層は「速いが小さい記憶」と「遅いが大きい記憶」を組み合わせて性能と容量を両立する考え方である。キャッシュが当たる確率と各アクセス時間から平均アクセス時間を計算する。
この単元で学ぶこと
- 主記憶の意味と役割を説明できる
- キャッシュの意味と役割を説明できる
- ヒット率の意味と役割を説明できる
- 記憶階層の役割を説明し、ヒット率から平均アクセス時間を求められる
本文解説
CPUに近いほど高速・小容量・高価になりやすく、遠いほど低速・大容量・安価になりやすい。キャッシュは主記憶の一部のコピーを保持し、参照の局所性を利用して平均待ち時間を短縮する。
主記憶 実行中の命令やデータをCPUが利用するために保持する記憶。 一般にDRAMが使われ、補助記憶より高速だが電源断で内容を失う。
キャッシュ CPUと主記憶の速度差を埋めるため、よく使うデータのコピーを高速に保持する記憶。 容量は小さいが主記憶より高速。
ヒット率 要求したデータがキャッシュに存在する割合。 0〜1または百分率で表し、平均アクセス時間へ影響する。
ミス率 要求データがキャッシュにない割合で、1-ヒット率。 ミス時は下位階層へアクセスする。
平均アクセス時間 ヒット時とミス時の所要時間を確率で重み付けした平均。 問題文の「ミス時時間」が追加時間か総時間かを読む必要がある。
平均値問題は「確率×その場合の時間」の総和にする。ミス時にキャッシュ確認時間を含むかは問題文の定義を確認する。ヒット率95%なら0.95、ミス率0.05へ直す。
ヒット時2ns、ミス時82ns、ヒット率90%なら0.9×2+0.1×82=10ns。ミス時82nsが総時間として与えられている前提で計算する。
図解
重要ポイント
- 主記憶: 実行中の命令やデータをCPUが利用するために保持する記憶。
- キャッシュ: CPUと主記憶の速度差を埋めるため、よく使うデータのコピーを高速に保持する記憶。
- ヒット率: 要求したデータがキャッシュに存在する割合。
- ミス率: 要求データがキャッシュにない割合で、1-ヒット率。
- 平均アクセス時間は場合分けした時間を確率で重み付けする。
間違えやすい点
- ヒット率95%を95のまま式へ入れない。
- ミス率はヒット率との和が1になる。
- ミス時の時間が「追加時間」か「総時間」かを読み分ける。
用語解説
- 主記憶
- 実行中の命令やデータをCPUが利用するために保持する記憶。
- キャッシュ
- CPUと主記憶の速度差を埋めるため、よく使うデータのコピーを高速に保持する記憶。
- ヒット率
- 要求したデータがキャッシュに存在する割合。
- ミス率
- 要求データがキャッシュにない割合で、1-ヒット率。
- 平均アクセス時間
- ヒット時とミス時の所要時間を確率で重み付けした平均。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。