修了試験 2014-06-22実施分 基本情報技術者試験 問10
CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。
正答3
解説
正解は3です。 パイプライン処理は、命令の取出し・解読・実行などの段階を重ねて、複数の命令を並行して進める方式です。 分岐命令で処理の流れが変わると、先読みしていた命令が無駄になり、パイプラインが乱れます(制御ハザード)。 【選択肢別解説】 1:× CASE文は条件によって処理先を振り分けるため、分岐命令が増えます。 パイプラインの乱れが増えるので逆効果です。 2:× 関数を増やすと、呼出しと戻りの分岐が増えます。 パイプラインを乱す要因が増えるため、有効ではありません。 3:○ 分岐命令を少なくすれば、先読みした命令が捨てられる機会が減ります。 パイプラインが途切れにくくなり、有効に機能します。 4:× メモリアクセス命令を減らすことは、主記憶の待ち時間対策にはなります。 しかし、パイプラインを有効に働かせる主要な方法として問われているのは分岐の削減です。 【ポイント】 パイプラインを乱す要因(ハザード)には、分岐による制御ハザード、資源競合による構造ハザード、データ依存によるデータハザードがあります。 分岐予測や遅延分岐は、制御ハザードへの対策です。まとめて解く
修了試験 2014-06-22実施分を通しで解く(80問)→