CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。ここで,CPUは命令の読込みとデータのアクセスを分離したアーキテクチャとする。
平成27年度 秋期 応用情報技術者 問8
テクノロジ系
正解と解説
正解 ウ
分岐命令があると、先読みした後続の命令が無駄になり、パイプラインが乱れます。分岐命令を少なくすると、パイプラインが有効に働きます。
パイプライン処理は、命令の読込み、解読、実行などの段階を重ねて、複数の命令を並行して処理する方式です。分岐命令で分岐が起こると、先に読み込んだ後続の命令を捨てて、分岐先から読み直します。この乱れを制御ハザードといい、処理効率が下がります。分岐命令を少なくすると、制御ハザードが減り、パイプラインが有効に機能します。問題文のCPUは命令の読込みとデータのアクセスを分離しているため、メモリアクセス命令による競合(構造ハザード)は起こりにくくなっています。
ア:CASE文は条件による分岐を増やします。分岐が多いほど先読みした命令が無駄になり、パイプラインが乱れます。
イ:関数の個数を増やすと、関数の呼出しと戻りという分岐が増えます。パイプラインの乱れが増えます。
エ:命令の読込みとデータのアクセスを分離したアーキテクチャでは、メモリアクセスによる競合は起こりにくいです。メモリアクセス命令を減らす効果は小さいです。
出典:平成27年度 秋期 応用情報技術者試験 問8
全年度から出題。10問で実力を判定します。登録不要。
出典:平成27年度 秋期 応用情報技術者試験 問8(独立行政法人情報処理推進機構)
解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方