ロボット推論遅延:カメラ露出からアクチュエータコマンドまで

ロボット推論遅延とは、物理的な観測が利用可能になるまでの経過時間であり、対応するコマンドが発動するまでの時間を指します。ニューラルネットワークのランタイムは一つの区間だけです。露出、センサーバッファリング、転送、デコード、前処理、キューイング、ポストプロセッシング、ミドルウェア、コントローラースケジューリング、アクチュエーターの適用も同様に重要になり得ます。

有用な予算は、同期されたタイムスタンプで1フレームまたは状態サンプルを追跡することです。処理時間とデータ時代を区別し、定義されたワークロード下で観測された中央値、高いパーセンタイル、最大値を報告します。スループットやフレーム毎秒数は、ロボットがコマンドを適用した時の古い時間を示すものではありません。

このガイドを ROS 2 リアルタイム制御ガイド および ロボット VLA 評価ガイドと組み合わせてご利用ください。知覚やポリシーパスに遅延が変動しても、下位制御ループは制限されています。

物理的な開始と終了のタイムスタンプを定義する

カメラ露出、ライダー取得、ロボット状態サンプリングのいずれかの開始点を選び、アプリケーションのコールバックが実行された時点からではありません。コマンドを受け入れたり適用したりするコントローラーかドライブイベントの停止を選択してください。ソフトウェアの入力と返還時間は、輸送やハードウェアの遅延を省略します。

共有クロックを使うか、クロックのオフセットやドリフトを特性付けしてください。利用可能な場合はハードウェアタイムスタンプが望ましいです。入力から出力までのシーケンス識別子を保持し、どのフレームが各アクションを生み出したかを証明できるようにしましょう。同一性がなければ、高速コールバックは古いバッファ付きフレームを処理している可能性があります。

ライダー搭載、モーターコントローラー、配線を備えたTurtleBot3バーガー
オンボードロボットは動作が変わる前にセンサーデータをプロセッサ、メモリ、コントローラーに移動させるため、経路全体にわたってタイミングを測定する必要があります。出典: Kuscu0(Wikimedia Commons)。ライセンス: CC BY-SA 4.0

センサーキャプチャは推論が始まる前に年齢を生み出します

ローリングシャッター、露光時間、フレーム表示、センサー側の画像処理が遅延を増やします。30フレーム毎秒で動作するカメラは、異なる行時間を表すフレームを提供でき、ホスト転送前にすでにフレームのごく一部をキャプチャに費やしています。

ドキュメントトリガーモード、露出、バッファ深度、ドロップポリシー、タイムスタンプの原点。最新型コンシューマーはフレームをドロップして低年数を保つことができますが、キューに入ったコンシューマーはすべてのフレームを保持しますが、過負荷になると徐々に古くなります。どちらの方針も普遍的に正しいわけではありません。制御の結果が決定します。

舞台スタートイベントイベント終了隠れた遅延
捕獲身体的曝露センサーフレーム準備完了読み取りとISP
移籍DMAまたはパケット送信利用可能なホストバッファコピーとバスキュー
前処理フレーム選択入力テンソル準備完了デコードとサイズ変更
推論リクエストが待ち受けています出力同期ホストとデバイスの作業
応用出力デコードドライブがコマンドを受け入れるミドルウェアと制御フェーズ

コピー数やキュー数はモデル計算を上回ることがあります

画像のデコード、色変換、リサイズ、正規化、ホストからデバイスへのコピー、テンソルレイアウトの変更など、それぞれバッファを作成することがあります。ゼロコピー設計は転送を減らすことができますが、寿命やアラインメントの制約を加えます。フレームワークが記憶を排除したと仮定するのではなく、実際の記憶の動きをプロファイリングしましょう。

インストゥルメントキューはサービス時間とは別に待機します。CPUスレッド競合、コールバックエグゼキュータ、GPUストリーム、非同期ドライバは、見える関数間の待機を隠すことができます。キューの深さを限定し、到着する入力が前の作業を置き換えるか、スキップするか、待機するかを定義します。

モデルレイテンシには明示的な同期が必要です

GPUの起動APIはしばしば非同期です。ホスト通話のみを測定することで、完了した推論ではなくエンキュー時間を記録できます。適切なデバイスイベントを使用するか、出力境界で同期しつつ、アプリケーションパス全体にウォールクロック測定を保持します。

現在の TensorRT性能ベンチマークのドキュメント では、スループット、ホストレイテンシ、転送、GPU計算時間、エンキュー時間が分離されています。推論のみのメトリクスは分離に有用ですが、ロボットのセンサーやコントローラーの段階は、アプリケーションが測定しない限り含まれません。

5段階ロボット推論遅延予算
中央値、テールレイテンシ、データ年齢は代表的な競合およびヒートの下で報告されなければなりません。出典:Physical AI Lab。

スループットとレイテンシは異なる問いに答えます

スループットは単位時間あたりの完了推論数です。レイテンシとは、1回のリクエストに対する経過時間のことです。バッチや並行ストリームは、集合スループットを向上させる一方で、個々のロボットフレームで見られる待ち時間や競合時間を増加させる可能性があります。同じスケジューリング設定で両方報告してください。

パイプラインは、生産量が消費を上回りキューが増えた場合、高いスループットと無限の寿命を持つこともあります。コマンド適用時のフレーム年齢と推論数を並べてプロットします。制御に関しては、より低いレートの最新の観測の方が、順序通りに提供されるすべての古い観測よりも有用であることが多いです。

メートル法答えは何でしょうか統計ロボットのリスク
モデル計算デバイスカーネルの動作時間中央と尾保険期間の欠席
エンドツーエンドレイテンシ観察がどれくらい時間をかけられるかP50、P95、P99、最大遅い反応
データ時代どのくらい古い証拠が使われているか分布古い指揮
スループットどれくらいのリクエストが終わるか秒単位キューの成長
ジッタータイミングの変化範囲とパーセンタイル制御の不均一さ

テールレイテンシは稀な物理的故障を決定します

平均レイテンシはスケジューラの一時停止、初回使用コンパイル、キャッシュミス、熱的スロットリング、動的形状、ネットワークの再トライを隠します。ウォームアップを別々に記録し、珍しい争いを観察するために十分な時間走りましょう。P95およびP99は、それらのパーセンタイルを解釈するのに十分なサンプル数でのみ報告してください。

最悪の観察値を「証明済みの上限」と呼ばずに追跡し、システムや分析がその主張を支持しない限り。外れ値は電力、温度、クロック、CPU負荷、メモリ負荷、ネットワークおよびプロファイルの変化と相関します。いくつかの遅いコマンドが衝突やグラスプの失敗を支配することもあります。

オンボード、エッジ、クラウドの各パスには異なる予算があります

オンボード推論は広域ネットワークの変動を回避しつつ、電力と熱の制限をロボットと共有します。エッジサーバーは無線、スイッチング、キュー機能を追加しつつ、より多くの計算能力を提供します。クラウドパスはルーティングやサービスの競合を追加し、切断や応答遅延に対する明確な動作が必要です。

実際の展開領域およびローミングや干渉下での往復分布を測定します。フレームの年齢制限を超えた状態でコマンドを送信しないでください。ロボットでシーケンスチェックとデッドラインチェックを使い、遅延しても有効に認証された応答が現在の状態を変えないようにしましょう。

最適化は精度、負荷、スケジューリングのトレードを優先します

精度の低下、量子化、剪定、解像度の低下、フレームスキップは計算量を減らしますが、それぞれモデルの出力が変わります。目標ハードウェア上で最適化後、タスクの精度と故障モードを検証します。シフトキャリブレーションやサポートなしのエンジンは同等の方針ではありません。

現在の TensorRTベストプラクティスガイド では、クロック、電源、熱状態、転送、ソフトウェア設定の制御を推奨しており、再現可能な数値を保つことが推奨されています。組み立てたエンジンをハードウェアやドライバー環境にピンで固定し、ベンダーのベンチマークを別のロボットと比較するのではなく、

ポリシーレートとサーボレートは分離されるべきです

ビジョンや VLA ポリシーは数十ヘルツで更新される一方で、共同制御は1秒間に数百回から数千回も動作します。下位レイヤーは有界参照の補間、トラッキングの監視、古いコマンドの拒否が可能です。ハードタイミング経路の中から神経推論を待つべきではありません。

ロボット アクションチャンクガイドと地平線を調整してください。ログ予測時間、実行プレフィックス、コマンド年齢。推論が期限を過ぎた場合は、任意の古いアクションを繰り返し演じるのではなく、ホールド、減速、より安全な状態への遷移などのテスト済みのバックアップを選びましょう。

現実的なストレス下でのタイミングの検証

代表的なカメラ、ログ、ネットワーク、マッピング、UIのワークロードを同時に運用しましょう。温度、パワーモード、動的な形状、オブジェクト数、背景の交通量を変化させます。ロボットの応答を測定しながら、フレームのドロップ、遅延パケット、推論オーバーランを注入します。

各段階でターゲットと測定された分布を含むバージョン化されたレイテンシ予算を維持しましょう。モデル、前処理、ミドルウェア、ドライバー、ファームウェア、またはコンピュートの変更後に再確認してください。段階最適化は、センサーからアクチュエータへの完全な経路とタスク結果が改善された場合にのみ受け入れるべきです。

  • タイムスタンプ、物理的なキャプチャ、コマンドの適用。
  • 各段階でシーケンスの同一性を持ち続けてください。
  • キュー待ち、ホスト作業、デバイス作業を別々に行います。
  • 遅延の尾行、スループット、データ経過を報告してください。
  • 過負荷、発熱、ネットワーク損失、フォールバックの動作をテストしてください。

よくある質問

モデルが10msで動作した場合、ロボットは10msで反応しますか?

いいえ。キャプチャ、転送、前処理、キュー、後処理、通信、コントローラスケジューリング、アクチュエータ応答はモデル計算外に残ります。

FPSとレイテンシーは同じ指標なのでしょうか?

いいえ。FPSはスループットです。パイプラインは、個々のフレームがキューで待機し、ロボットに遅れて到達する間に1秒間に多くのフレームを完了できます。

なぜ平均レイテンシが不十分なのでしょうか?

稀な失速が最も重要な物理的な故障を引き起こすことがあります。パーセンタイル、最大観測値、サンプル数、および外れ値に関連する条件を報告してください。

古いフレームは単純に削除されることはありますか?

多くの場合、最新のみのポリシーは年齢を下げますが、削除すると時間的サンプリングやモデルの挙動が変わります。タスクとコントローラーでドロップルールを検証してください。

クラウド推論はロボットにも使えますか?

ネットワークの変動を許容する締め切りやバックアップのタスクもサポートできます。実際の経路を測定し、ロボットのコマンド年齢制限を超える応答は却下します。

推論タイミング証拠境界

レイテンシーの数値は、定義されたセンサー、モデル、ハードウェア、ソフトウェア、負荷および測定境界に適用されます。推論ベンチマークだけでは、ロボットの反応時間が制限されている証拠にはなりません。