並列 HTTP API
Roboflow Inference の並列 HTTP サーバーを実行して、推論リクエストを非同期に処理し、スループットを高めてレイテンシを下げます。
最終更新
役に立ちましたか?
Roboflow Inference の並列 HTTP サーバーを実行して、推論リクエストを非同期に処理し、スループットを高めてレイテンシを下げます。
エンタープライズ機能。 この機能は Roboflow Enterprise ユーザーのみが利用できます。 営業チームにお問い合わせください Roboflow Enterprise について詳しく知るには。
並列処理を使って複数のモデルを並列に実行できます。これは、推論リクエストを非同期で処理する Roboflow Inference のバージョンです。
Inference Parallel は、コアモデル(CLIP と SAM)をサポートしない点を除いて、Roboflow Inference と同じ機能をサポートします。
Inference Parallel では、前処理、自動バッチ処理、推論、後処理がすべて別々のスレッドで実行され、サーバーの FPS スループットが向上します。同じモデルへの個別のリクエストは、許容される範囲でオンザフライにバッチ化されます。 $MAX_BATCH_SIZE、その後のレスポンス処理は独立して行われます。画像は Python の SharedMemory モジュールを介して渡され、スループットが最大化されます。
これらの変更により、最大で 76% の高速化 が、ある測定対象のワークロードで得られました。
まず、並列サーバーをビルドします:
./inference/enterprise/parallel/build.sh次に、サーバーを実行します:
./inference/enterprise/parallel/run.shターミナルに、サーバーが実行中で使用可能であることを示すメッセージが表示されます。
Docker Hub にコンテナが公開されています:
docker pull roboflow/roboflow-inference-server-gpu-parallel:latest固定タグを pull している場合は、 $TAG 変数を run.sh で一致するように変更してください。
さまざまなモデルで Inference Parallel の性能を評価し、 Roboflow Universeと、同じハードウェア、つまり 8 コアと 1 GPU を搭載したコンピューター上の Inference Server 0.9.5.rc と比較しました。インスタンスセグメンテーションの指標は "mask_decode_mode": "fast" をリクエストボディ内で設定しました。リクエストは並列度 1000 で同時に送信されました。
senior-design-project-j9gpp
nbafootage/3
物体検出
学習
30.2 fps
44.03 fps
niklas-bommersbach-jyjff
dart-scorer/8
物体検出
学習
26.6 fps
47.0 fps
geonu
water-08xpr/1
インスタンスセグメンテーション
検証
4.7 fps
6.1 fps
university-of-bradford
detecting-drusen_1/2
インスタンスセグメンテーション
学習
6.2 fps
7.2 fps
fy-project-y9ecd
cataract-detection-viwsu/2
分類
学習
48.5 fps
65.4 fps
hesunyu
playing-cards-ir0wr/1
分類
学習
44.6 fps
57.7 fps
並列処理を有効にした Inference は、すべてのテストでより高い FPS を達成しました。一部のモデルでは、FPS の向上が 10 FPS を超えました。
最終更新
役に立ちましたか?
役に立ちましたか?