SkillStack
テクノロジ系9 / 80問

応用情報技術者試験 令和5年度 秋期 午前 問9

パイプラインの性能を向上させるための技法の一つで、分岐条件の結果が決定する前に、分岐先を予測して命令を実行するものはどれか。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】ウ

投機実行は、命令の実行結果が確定していない段階で、今後必要になる可能性が高い命令を予測に基づいて先に実行する技法です。条件分岐があると、本来は条件判定が終わるまで次に実行する命令を確定できません。そこで分岐先を予測し、その経路の命令を先行して実行します。予測が当たれば待ち時間を減らしてパイプラインを効率よく動かせます。予測が外れた場合は、先行して実行した結果を破棄し、正しい分岐先から実行し直します。

アのアウトオブオーダー実行は誤りです。これは、プログラムに記述された命令順序にこだわらず、必要なデータがそろった実行可能な命令から先に処理する方式です。

イの遅延分岐は誤りです。これは、分岐命令の直後にある命令を分岐結果にかかわらず実行する仕組みで、その位置に有用な命令を配置して分岐による損失を減らす技法です。

エのレジスタリネーミングは誤りです。これは、同じレジスタ名の使用によって生じる見かけ上の依存関係を、別の物理レジスタへ割り当てることで解消する技法です。

【ポイント】 分岐予測は進む経路を予測し、投機実行はその予測に従って命令を先に実行します。 予測成功時は高速化できますが、予測失敗時には結果の破棄とパイプラインのやり直しが必要です。

出典:令和5年度 秋期 応用情報技術者試験 午前 問9
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の80問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める