パイプラインの処理能力は、トークンが流れる比率に関係する 2 つの条件によって制限されます。 最初に、パイプラインが N 個のトークンで実行される場合、N よりも多くの操作を並列に実行できないことは明白です。 N の正しい値を選択するには試行が必要です。 値が低すぎると並列処理が制限され、逆に高すぎると、より多くのリソース (例えば、より多くのバッファー) が必要になります。 次に、パイプラインの処理能力は最も遅いシーケンシャル・フィルターの処理能力に制限されます。 この制約は並列フィルターのないパイプラインにも当てはまります。 ほかのフィルターがどれだけ速くても、最も遅いシーケンシャル・フィルターがボトルネックになります。 したがって、一般に、シーケンシャル・フィルターを速い状態で保つ必要があります。可能であれば、作業を並列フィルターに移すようにしてください。
シーケンシャル・フィルターがシステムの I/O 速度によって制限されるため、テキスト処理のサンプルはあまり速くなりません。 ファイルがローカルディスク上にある場合でも、2 倍以上のスピードアップは見込めません。 実際にパイプラインの恩恵を得るには、並列フィルターがシーケンシャル・フィルターよりも重い処理を行う必要があります。
各トークンのウィンドウサイズ、またはサブ問題サイズも処理能力を制限します。 ウィンドウサイズを小さくしすぎると、オーバーヘッドが大きくなります。 ウィンドウサイズを大きくしすぎると、キャッシュに収まらなくなります。キャッシュに収まる、できるだけ大きなウィンドウサイズが理想的です。 最適なウィンドウサイズを見つけるには、多少の試行が必要です。