マナビング基本情報技術者

キャッシュメモリの実効アクセス時間はどう比べる?

基本情報技術者試験 平成31年度春期 午前 問10 / コンピュータ構成要素 › メモリ

過去問にチャレンジ

平成31年度春期 午前 問10

A~Dを,主記憶の実効アクセス時間が短い順に並べたものはどれか。

平成31年度春期 午前 問10の図
  1. ア

    A,B,C,D

  2. イ

    A,D,B,C

  3. ウ

    C,D,A,B

  4. エ

    D,C,A,B

会話形式の解説

講師講師
まずキャッシュの有無を分けて考えます。キャッシュがある構成は、ヒット時とミス時の時間をそれぞれの発生率で重み付けします。
受験者受験者
Dはキャッシュのアクセス時間が10ナノ秒で、ヒット率も90%です。Aの15ナノ秒より短そうです。
講師講師
Dでは残りの10%で、80ナノ秒かかります。実効アクセス時間は10×0.9+80×0.1=17ナノ秒です。
受験者受験者
ヒット時の9ナノ秒分とミス時の8ナノ秒分を足すのですね。Aの15ナノ秒のほうが短いです。
講師講師
そのとおりです。AとBにはキャッシュがないので、表の主記憶のアクセス時間をそのまま使います。Aは15ナノ秒、Bは30ナノ秒です。
受験者受験者
Cはヒット率60%なので、ミスは40%ですね。20ナノ秒と70ナノ秒をその割合で計算しますか。
講師講師
はい。Cは20×0.6+70×0.4=40ナノ秒です。四つの値がそろいました。
受験者受験者
短い順は15、17、30、40ナノ秒です。つまりA、D、B、Cの並びです。
講師講師
正解です。A、B、C、Dの並びは、30ナノ秒のBを17ナノ秒のDより前に置くため誤りです。
受験者受験者
Cから始まる並びも、Cが40ナノ秒で最も長いので違いますね。
講師講師
そうです。D、C、A、Bの並びも、DをAより前に、CをBより前に置いていますが、どちらも計算結果と逆です。
受験者受験者
キャッシュがあるかどうかだけで順番を決めず、各構成の実効アクセス時間を出してから比べればよいのですね。
講師講師
はい。ヒット率を小数に直し、ミスの発生率を1からヒット率を引いて求めると、計算を整理できます。

まとめ

キャッシュがないAとBの実効アクセス時間は、それぞれ15ナノ秒と30ナノ秒です。キャッシュがあるCとDはヒット時とミス時を重み付けして計算し、それぞれ40ナノ秒と17ナノ秒になります。短い順はA、D、B、Cなので、正解はイです。

解答・解説

正解はイです

この問題のテーマ

キャッシュメモリのヒット率を考慮して、主記憶の実効アクセス時間を比較する問題です。

解き方の考え方

キャッシュがないAとBの実効アクセス時間は、表にある主記憶のアクセス時間そのもので、それぞれ15ナノ秒と30ナノ秒です。キャッシュがある場合は、ヒット時とミス時の時間をそれぞれの発生率で重み付けします。Cは20×0.6+70×0.4=40ナノ秒、Dは10×0.9+80×0.1=17ナノ秒です。4つの値を短い順に並べると、A、D、B、Cになります。

選択肢ごとの解説

  1. ×ア  A,B,C,D
    A、B、C、Dの順では、BをDより前に置いています。しかし、Bは30ナノ秒、Dは17ナノ秒なので、Dのほうが先です。
  2. ○イ  A,D,B,C
    A、D、B、Cの順は、15、17、30、40ナノ秒という計算結果の小さい順と一致します。したがって、この並びが正解です。
  3. ×ウ  C,D,A,B
    C、D、A、Bの順では、Cを最初に置いています。しかし、Cは40ナノ秒で4つの中で最も長いため、最初にはなりません。
  4. ×エ  D,C,A,B
    D、C、A、Bの順では、DをAより前に、CをBより前に置いています。実際にはAの15ナノ秒がDの17ナノ秒より短く、Bの30ナノ秒もCの40ナノ秒より短いです。

POINT

  • キャッシュがない場合は、主記憶のアクセス時間をそのまま使います。
  • ヒット率を小数に直し、ミスの発生率は1からヒット率を引いて求めます。
  • 実効アクセス時間を数値で求めてから、大小を比較します。

※出典:平成31年度春期 基本情報技術者試験 午前 問10(一部改変)