戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

基本情報技術者 2010年 春期 午前(科目A)10


問題文

図に示す構成で、表に示すようにキャッシュメモリと主記憶のアクセス時間だけが異なり、ほかの条件は同じ2種類の CPU X と Y がある。あるプログラムを CPU X と Y でそれぞれ実行したところ、両者の処理時間が等しかった。このとき、キャッシュメモリのヒット率は幾らか。ここで,CPU 処理以外の影響はないものとする。
基本情報技術者 2010年 春期 午前(科目A) 問10の問題画像

選択肢

0.75
0.90(正解)
0.95
0.96

🔒 解説は解答すると表示されます

キャッシュヒット率の計算【午前解説】

正解の理由

CPU X と CPU Y はそれ以外の条件が同じで,両者の処理時間(=平均メモリアクセス時間)が等しい。平均アクセス時間 EAT はヒット率 h を用いて と表せます。これを X と Y で等しくすると h を解けます。計算の結果 h = 0.90 となり,選択肢は が正解です。

解法ステップ

  1. 平均アクセス時間の式を確認する:
  2. CPU X, Y それぞれについて式を書く:
    X:
    Y: (単位:ns)
  3. 条件「処理時間が等しい」より とする。
  4. 方程式を解く:

    左辺展開:
    右辺展開:
    これらを等しくして整理:
  5. 結果の妥当性を確認:X, Y 両方の EAT を計算すると ns, ns で一致する。

選択肢別の誤答解説

  • ア: 0.75 — 主に主記憶時間の取り扱いを単純な差の比として誤計算した場合に出やすい。たとえば (580−400)/(580−20) のような誤った比で求めるミス。
  • イ: 0.90 — 正解。両 CPU の平均アクセス時間を等式で結び,正しく代数的に解くと得られる値。
  • ウ: 0.95 — 小さな計算ミス(係数や符号の扱い誤り)で発生しやすい。例えば 200h = 100 のように誤って右辺を半分にしてしまうケース。
  • エ: 0.96 — 端数処理や丸めの誤用で出る値。実際の式からは導かれず,数値を近似的に取り扱った結果の誤答。

よくある誤解

  • 「キャッシュ時間だけを比べれば良い」と考えてミス率側の主記憶時間を無視してしまう。平均は両方を加重平均する点を忘れない。
  • ヒット率が CPU 固有だと思い込む:ヒット率はプログラムとキャッシュ構成で決まり,本問では両 CPU が同じプログラム・構成を仮定している。
  • 方程式の立て方を誤る(例えばミス時の時間を足す順序や係数を間違える)ことで誤答を招く。

補足コラム

この問題は「有効アクセス時間(Effective Access Time, EAT)」の典型問題です。EAT はキャッシュの高速性と主記憶の遅さのトレードオフを表すため,ヒット率が性能に与える影響が直感的に分かります。今回の例で h = 0.9 のとき EAT = 76 ns に収束しますが,ヒット率が 0.8 だと EAT は 0.8×40 + 0.2×400 = 112 ns(X の場合)となり性能差が顕著です。キャッシュ設計や性能評価ではこのような加重平均の考え方を常に用います。

FAQ

Q. ヒット率が CPU ごとに異なることはありますか?
A. あり得ます。実際はキャッシュ容量・置換方式・アクセスパターンなどで CPU ごとにヒット率は変わりますが,本問では「他の条件は同じ」として同一と仮定しています。
Q. もし CPU の内部処理時間も異なったら解き方は変わりますか?
A. はい。内部処理時間が異なるなら総処理時間(メモリ以外も含む)を等しくする条件を考慮し,メモリ部分と計算部分を別々に扱って調整する必要があります。
Q. 小数やパーセンテージで答えるべきですか?
A. 問題が小数(0.90)を選択肢に出している場合はそのまま小数で表すのが一般的で,パーセンテージ(90%)でも等価です。

関連キーワード: キャッシュメモリ、ヒット率、平均アクセス時間、EAT、有効アクセス時間、キャッシュミス、メモリ階層、加重平均、ナノ秒、性能評価
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

基本情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について