応用情報技術者 2012年 春期 午前2 問12
問題文
同じ命令セットをもつコンピュータ AとBがある。それぞれのCPUクロック周期、及びあるプログラムを実行したときの CPI (Cycles Per Instruction)は、表のとおりである。そのプログラムを実行したとき、コンピュータ Aの処理時間は、コンピュータBの処理時間の何倍になるか。

選択肢
ア:
イ:
ウ:(正解)
エ:
コンピュータAとBの処理時間比較【午前2 解説】
要点まとめ
- 結論:コンピュータAの処理時間はコンピュータBの2倍である。
- 根拠:処理時間は「クロック周期 × CPI × 命令数」で求められ、命令数は同じなので比率はクロック周期とCPIの積の比で決まる。
- 差がつくポイント:クロック周期とCPIの両方を正しく掛け合わせて比較することが重要で、片方だけで判断しないこと。
正解の理由
コンピュータAの処理時間は、
(単位はナノ秒×命令数)
コンピュータBの処理時間は、
よって、Aの処理時間はBの処理時間の
倍となり、選択肢のウが正解です。
コンピュータBの処理時間は、
よって、Aの処理時間はBの処理時間の
倍となり、選択肢のウが正解です。
よくある誤解
クロック周期が短い方が速いと考え、CPIを無視してしまう誤りが多いです。両者の積で比較することが必須です。
解法ステップ
- 各コンピュータの処理時間を「クロック周期 × CPI」で計算する。
- 命令数は同じなので無視し、処理時間の比を求める。
- コンピュータAの処理時間をコンピュータBの処理時間で割る。
- 得られた比率から正しい選択肢を選ぶ。
選択肢別の誤答解説
- ア:
クロック周期とCPIの積を誤って掛け合わせた結果、極端に小さい値を選んでいる。 - イ:
クロック周期の差だけを見て、CPIを考慮していない。 - ウ:
正解。両者のクロック周期とCPIの積の比を正しく計算している。 - エ:
クロック周期とCPIの積を誤って掛け合わせ、過大評価している。
補足コラム
処理時間は「命令数 × CPI × クロック周期」で表されます。命令セットが同じ場合、命令数は一定なので、性能比較はCPIとクロック周期の積で行うのが基本です。CPIは命令の平均サイクル数、クロック周期は1サイクルの時間を示します。
FAQ
Q: クロック周期が短い方が必ず速いですか?
A: いいえ。CPIが大きいと処理時間が長くなるため、両方を考慮する必要があります。
A: いいえ。CPIが大きいと処理時間が長くなるため、両方を考慮する必要があります。
Q: CPIとは何ですか?
A: CPIは「Cycles Per Instruction」の略で、1命令あたりの平均クロックサイクル数を示します。
A: CPIは「Cycles Per Instruction」の略で、1命令あたりの平均クロックサイクル数を示します。
関連キーワード: クロック周期、CPI, 処理時間、性能比較、コンピュータアーキテクチャ

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

