平均アクセス時間

問題

応用情報技術者 平成22年秋期 午前問11

容量がaMバイトでアクセス時間がxナノ秒のキャッシュメモリと,容量がbMバイトでアクセス時間がyナノ秒の主記憶をもつシステムにおいて,CPUからみた,主記憶とキャッシュメモリとを合わせた平均アクセス時間を表す式はどれか。ここで,読み込みたいデータがキャッシュメモリに存在しない確率をrとし,キャッシュメモリ管理に関するオーバヘッドは無視できるものとする。

$$ \frac{(1-r) \cdot a}{a+b} \cdot x + \frac{ r \cdot a}{a+b} \cdot y$$

$$ (1-r) \cdot x + r \cdot y $$

$$ \frac{ r \cdot a}{ a + b} \cdot x + \frac{(1-r) \cdot a}{ a+b } \cdot y $$

$$ r \cdot x + (1-r) \cdot y $$

答え

$$ (1-r) \cdot x + r \cdot y $$

解説

ヒット率

CPUはキャッシュメモリにデータが存在する場合はキャッシュメモリから、存在しない場合は主記憶からデータを読み込みます。キャッシュメモリにデータが存在する確率ヒット率と言います。


CPUが必要とするデータがキャッシュメモリにない場合、メインメモリにアクセスする。このとき、必要なデータがキャッシュメモリにある確率をヒット率あるいはアクセス確率という[1]。キャッシュメモリにない確率はNFP(Not Found Probability)と呼ばれ、これはヒット率の余事象であるので「1-ヒット率」で求めることができる[1]。キャッシュメモリがある場合、CPUからメインメモリのアクセス時間を計算するにはヒット率あるいはNFPが必要となる。このとき、キャッシュメモリがある場合のアクセス時間を実効アクセス時間と呼ぶ[1]


出典: フリー百科事典『ウィキペディア(Wikipedia)』

平均アクセス時間の計算式

キャッシュが1層であるとき、システム全体の平均アクセス時間は、次の計算式で求められる。

キャッシュのアクセス時間 x ヒット率 + キャッシュ対象の記憶装置のアクセス時間 x (1 - ヒット率)