パイプライン処理とは?ぱいぷらいんしょり
パイプライン処理とは、1件あたりの所要時間は縮めず、処理を段に区切って重ねることで単位時間あたりの処理数を増やす方式。命令数I、段数D、1段の所要時間(ピッチ)Pのとき全体は (I+D−1)×P となり、Iが大きいほど1命令あたりPに近づく。段数を増やすほど理論上のスループットは上がるが、流れが乱れたときの回復コストも増える。
最終更新:2026-10-06
この語が出る過去問を解く →背景
動作周波数を上げる以外の性能向上手段として現れた。1段あたりの論理を短く割れば、その分だけクロックを上げられるという回路上の事情も背景にある。ただし分岐の行き先が確定するまで先の段を埋められず、投機的に進めた結果が外れれば途中まで進んだ仕事を捨てることになる。システムアーキテクトの読者にとっては、工程を重ねてスループットを稼ぐという発想がバッチ設計や配信基盤にもそのまま効く点が使いどころ。
具体例
5段パイプラインで100命令なら (100+5−1)×ピッチ。Intelが高クロックを狙ったNetBurst世代では20段を超える深いパイプラインを採り、外れたときの損失を抑えるために分岐予測を強化した。CI/CDのパイプライン(JenkinsやGitHub Actions)も、ビルド・テスト・配置を重ねて回す同じ発想である。
試験での引っ掛け
縮むのはスループットであってレイテンシではなく、1件だけ流すなら段に分けた分むしろ遅い。また分岐やデータ依存によるハザードで段が乱れると理論値どおりにはならず、深いほど1回の乱れの損失が大きい点も併せて問われる。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:令和3年度 春期 システムアーキテクト試験 午前Ⅱ 問21(IPA)
パイプラインの深さをD、パイプラインピッチをP秒とすると、I個の命令をパイプラインで実行するのに要する時間を表す式はどれか。ここで、パイプラインは1本だけとし、…
正解:(I+D-1)×P
要点:パイプラインの所要時間は(I+D-1)×ピッチで求まる
パイプラインでは最初の命令が全Dステージを終えるのにDピッチかかり、以降の命令は1ピッチごとに順次完了する。したがってI個の命令に要するピッチ数はD+(I−1)、すなわち(I+D−1)ピッチであり、所要時間は(I+D−1)×P秒となる。
出典・参考
高度試験 午前I(基本情報 相当)のシラバスの2 コンピュータシステム > 1. プロセッサ > (8) プロセッサの高速化技術に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。