令和元年度 秋期 午前 問10
コンピュータ構成要素
平均アクセス時間を表す式
容量が a M バイトでアクセス時間が x ナノ秒の命令キャッシュと,容量が b M バイトでアクセス時間が y ナノ秒の主記憶をもつシステムにおいて,CPU からみた,主記憶と命令キャッシュとを合わせた平均アクセス時間を表す式はどれか。ここで,読み込みたい命令コードがキャッシュに存在しない確率を r とし,キャッシュ管理に関するオーバヘッドは無視できるものとする。
- ア(1−r)·a / (a+b) · x + r·b / (a+b) · y
- イ(1−r)·x + r·y
- ウr·a / (a+b) · x + (1−r)·b / (a+b) · y
- エr·x + (1−r)·y
答えと解説を見る
✓ これが正解イ(1−r)·x + r·y
解説
容量ではなく、当たり外れの割合で時間を重み付けします。
平均アクセス時間は、それぞれの場合に掛かる時間を、その場合が起きる割合で重み付けして足し合わせた値です。読みたい命令がキャッシュに無い割合が r と与えられているので、有る割合はその残りの 1−r になります。有るときは x ナノ秒で済み、無いときは主記憶まで取りに行くので y ナノ秒が掛かります。したがって求める式は (1−r)·x + r·y と書けます。容量を表す a や b は、この式のどこにも現れません。どちらへ何回当たるかを決めるのは与えられた割合であって、記憶装置の大きさそのものではないからです。容量が効くのは、結果として r を小さくするという間接の形にとどまります。設問が無い確率を与えている点を、読み始めに押さえておきます。式の形だけで選ばないことが要点です。
ほかの選択肢はなぜ違うのか
- ア(1−r)·a / (a+b) · x …:容量の比を重みに使っています。大きいほうへ多く当たるという見立てですが、当たり外れの割合は設問で r として別に与えられています。与えられた値を使わずに、容量から重みを作り直してしまった形です。問題文の値を素直に使うのが先です。
- ウr·a / (a+b) · x + (1…:重みが容量の比である点に加えて、r と 1−r の付き先も入れ替わっています。r は無い割合と定められているので、速いほうの時間に掛かるのは 1−r です。二つの誤りが同時に重なった式になっています。
- エr·x + (1−r)·y:形は合っていますが、r と 1−r の付き先だけが逆です。r を有る割合と読み違えると、ちょうどこの式になります。存在しない確率と書かれている点を読み落とすと、速い側と遅い側の重みがそっくり入れ替わります。
この問題の用語
- キャッシュ一度取り寄せた内容を手元に置いて、次から早く使えるようにする仕組み。CPUとメモリの間や、ブラウザ、DNSなど、さまざまな場所で使われます。
出典:令和元年度 秋期 応用情報技術者試験 午前 問10
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)