平成27年度秋期 応用情報技術者試験 午前 問8

分野:コンピュータ構成要素(プロセッサ・メモリ・キャッシュ・入出力・IoTデバイス)|実際に出題されたIPA過去問題

CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。ここで,CPUは命令の読込みとデータのアクセスを分離したアーキテクチャとする。

  1.  CASE文を多くする。
  2.  関数の個数をできるだけ多くする。
  3.  分岐命令を少なくする。
  4.  メモリアクセス命令を少なくする。
解答・解説を見る

正解:ウ

AI解説

パイプライン処理は複数の命令を段階(ステージ)をずらして並行実行する方式である。分岐命令があると、先読みして処理中の後続命令が分岐成立時に無駄になり、パイプラインをやり直す必要が生じる(分岐ハザード)。したがって分岐命令を少なくするプログラミングがパイプラインを有効に機能させる。 ア: CASE文は多方向分岐であり、分岐命令を増やしてパイプラインの乱れ(ハザード)を増やすため逆効果である。 イ: 関数呼出しもジャンプ(分岐)を伴うため、個数を増やすことはパイプラインには不利に働く。 ウ: 正解。分岐命令を減らせば命令の流れが乱れず、パイプラインの並行実行効果を最大限に発揮できる。 エ: 本問のCPUは命令読込みとデータアクセスを分離したアーキテクチャなので、メモリアクセス命令の削減はパイプライン阻害の主因への対策にならない。 💡 「パイプラインの敵=分岐(制御ハザード)」。対策技術である分岐予測・投機実行・遅延分岐とセットで覚えておくと関連問題にも対応できる。

出典:平成27年度 秋期 応用情報技術者試験 午前 問8 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「コンピュータ構成要素」分野の攻略ポイント

プロセッサ・メモリ・キャッシュ・入出力・IoTデバイスが対象です。実効アクセス時間やCPI(命令あたりクロック数)の計算は毎年の定番で、公式さえ覚えれば短時間で確実に1問確保できます。

コンピュータ構成要素の攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(コンピュータ構成要素(プロセッサ・メモリ・キャッシュ・入出力・IoTデバイス))の過去問