基本情報技術者 2013年 秋期 午前(科目A) 問09
問題文
1件のトランザクションについて80万ステップの命令実行を必要とするシステムがある。プロセッサの性能が200MIPSで、プロセッサの使用率が80%のときのトランザクションの処理能力(件/秒)は幾らか。
選択肢
ア:20
イ:200(正解)
ウ:250
エ:313
プロセッサ性能とトランザクション処理能力の計算【午前2 解説】
要点まとめ
- 結論:有効な命令実行率は200MIPS×0.8=1.6×10^8命令/秒で、1トランザクション80万命令で割ると200件/秒になります。
- 根拠:MIPSは「百万命令/秒」なので単位換算が必須で、CPU使用率は有効な処理能力に乗じて考える必要があります。
- 差がつくポイント:MIPSの「百万」や80万の桁、CPU使用率を掛ける手順を忘れると誤答になるため単位変換を確認してください。
正解の理由
正解:イ
計算は以下の通りです。まず200MIPSは 命令/秒。CPU使用率80%を掛けて有効命令率を求めます。
命令/秒(=160,000,000命令/秒)。
1トランザクションあたり80万命令(800,000命令)で割ると処理能力は
件/秒、よって選択肢は イ が正しいです。
計算は以下の通りです。まず200MIPSは 命令/秒。CPU使用率80%を掛けて有効命令率を求めます。
命令/秒(=160,000,000命令/秒)。
1トランザクションあたり80万命令(800,000命令)で割ると処理能力は
件/秒、よって選択肢は イ が正しいです。
よくある誤解
- MIPSの「M=百万」を見落として桁を1,000倍または10倍間違える(単位変換ミス)。
- CPU使用率(80%)を忘れて200MIPSをそのまま使うと過大評価してしまう。
- 「ステップ数」をミスリードして80万を80,000や8,000,000と誤認することで誤った商を出す。
解法ステップ
- MIPSを命令/秒に直す:.
- CPU使用率を掛ける:.
- 1トランザクションの命令数で割る:.
- 選択肢と照合して イ を選ぶ。
選択肢別の誤答解説
- ア: 20
- 例えば80万を8,000,000(桁を1つ増やす)と誤認すると となり誤答になります。桁数ミスが原因です。
- イ: 200(正解)
- 正しい単位変換とCPU使用率の適用により算出される値です。
- ウ: 250
- CPU使用率0.8を掛け忘れて とした場合に出る値で、使用率の適用忘れが原因です。
- エ: 313
- 単位(秒→ミリ秒等)や命令数の一部を誤って扱った場合に出やすい非現実的な値で、主に単位変換ミスや誤った除算が原因です。
補足コラム
- MIPSは歴史的指標で、命令の種類や実行時間が異なる現代の評価には限界があります。実際のスループット評価では命令のミックスやI/O待ち時間、マルチコア利用やスレッド並列性も考慮する必要があります。
- 本問は「理想的にCPUが唯一のボトルネックで、命令数が固定」という前提の下での単純計算問題です。実運用ではキューイング遅延やリソース競合により理論値から乖離します。
FAQ
Q1: MIPSとMHzは同じですか?
A1: いいえ。MHzはクロック周波数(周期/秒)で、MIPSは命令数/秒。命令あたりのクロック数(CPI)により関係が決まります。単純に同一視できません。
A1: いいえ。MHzはクロック周波数(周期/秒)で、MIPSは命令数/秒。命令あたりのクロック数(CPI)により関係が決まります。単純に同一視できません。
Q2: CPU使用率が100%に近いと何が問題ですか?
A2: スループットは増えますが遅延や待ち時間が増加し、システムが遅延に敏感な場合は性能が悪化します。余裕を残すことが望ましい場合も多いです。
A2: スループットは増えますが遅延や待ち時間が増加し、システムが遅延に敏感な場合は性能が悪化します。余裕を残すことが望ましい場合も多いです。
Q3: マルチコアならどう計算しますか?
A3: コアごとのMIPSが分かっていれば総MIPSに合算して同様に計算します。ただしスレッド並行性や共有資源の競合で単純合算どおりにならないことが多いです。
A3: コアごとのMIPSが分かっていれば総MIPSに合算して同様に計算します。ただしスレッド並行性や共有資源の競合で単純合算どおりにならないことが多いです。
関連キーワード: MIPS、CPU使用率、スループット、トランザクション処理、命令数、単位変換、性能計算、ボトルネック

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

