10 / 24 · 概念
レイテンシ、スループット、開始間隔
1件のトランザクションの遅延と、継続的な完了率を別々に計算します。
レッスンは無料で読めます。受講登録すると進捗を保存できます。
早く終わることと、頻繁に終わることは異なる
レイテンシは1つの入力の受け入れから出力の引き渡しまでの時間です。スループットは観測時間あたりの引き渡したトランザクション数です。開始間隔IIは、新しい処理開始の間隔の最小サイクル数です。レイテンシにはサイクルまたはナノ秒、スループットにはトランザクション/サイクルまたは/秒、IIにはサイクル/トランザクションを使います。
ここでの転送はすべて立ち上がりエッジで起こります。2レジスタのパイプラインでは、エッジ0で受け入れた入力はエッジ1の後に見えるようになり、エッジ2で転送されます。受け入れから引き渡しまでのレイテンシは2サイクルです。異なる段が異なるトランザクションを同時に処理するため、満たされたストールなしのパイプラインは各エッジで1結果を引き渡します。II=1はレイテンシ=1を意味しません。
| 構造 | 引き渡しまでのレイテンシ | II | ストールなしの継続スループット |
|---|---|---|---|
| 1レジスタの演算器 | 1サイクル | 1 | 1トランザクション/サイクル |
| 2段パイプライン | 2サイクル | 1 | 1トランザクション/サイクル |
| 4エッジにわたる共有演算 | インターフェースのスケジュールによる | 1より大きい | 1トランザクション/サイクル未満 |
物理的な処理率を比較するときはクロック周期を含めます。組み合わせ処理が6ナノ秒、レジスタのオーバーヘッドと余裕が0.5 nsだとします。1段では周期は6.5 nsと見積もられます。3ナノ秒ずつに均等に分割した段では3.5 nsです。両者のIIは1で、毎秒約153.8百万および285.7百万トランザクションとなります。一方、1件の遅延は6.5から7ナノ秒に増えることがあります。これは例示の計算で、実装のタイミング測定値ではありません。
クロックは最も遅い段に制限されます。5と1に分割すると5.5 nsの見積もりになり、均等な分割より悪くなります。レジスタの追加はオーバーヘッド、配線、制御のコストも増やすため、実際の実装タイミングを確認してください。
エッジ0から3で受け入れた4入力の出力はエッジ2から5で転送されます。短いバッチでは立ち上がりと排出が影響します。測定区間を指定してください。ストールがあるとレイテンシはトランザクションごとに変わり、提示されても受け入れられなかった入力は数えません。疑わしいボトルネックを最適化する前に、入力の受け入れ、出力の引き渡し、ストールしたサイクルを別々に記録します。
自分で考えてみましょう
II=1、クロック4ナノ秒の3段パイプラインについて、継続スループットと引き渡しまでのレイテンシを求めてください。最初の入力をエッジ0で受け入れると、5番目の出力はどのエッジで引き渡されますか。
解説を見る
スループットは毎秒250百万トランザクション、レイテンシは12 nsです。ストールがなければ、5番目の入力はエッジ4で受け入れられ、エッジ7で引き渡されます。