> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/ja/serufuhosuto/enterprise/parallel-http-api.md).

# 並列 HTTP API

{% hint style="warning" %}
**エンタープライズ機能。** この機能は Roboflow Enterprise ユーザーのみが利用できます。 [営業チームにお問い合わせください](https://roboflow.com/sales) Roboflow Enterprise について詳しく知るには。
{% endhint %}

並列処理を使って複数のモデルを並列に実行できます。これは、推論リクエストを非同期で処理する Roboflow Inference のバージョンです。

Inference Parallel は、コアモデル（CLIP と SAM）をサポートしない点を除いて、Roboflow Inference と同じ機能をサポートします。

Inference Parallel では、前処理、自動バッチ処理、推論、後処理がすべて別々のスレッドで実行され、サーバーの FPS スループットが向上します。同じモデルへの個別のリクエストは、許容される範囲でオンザフライにバッチ化されます。 `$MAX_BATCH_SIZE`、その後のレスポンス処理は独立して行われます。画像は Python の `SharedMemory` モジュールを介して渡され、スループットが最大化されます。

これらの変更により、最大で **76% の高速化** が、ある測定対象のワークロードで得られました。

## 並列処理で Inference を実行する方法

{% tabs %}
{% tab title="Bash" %}
まず、並列サーバーをビルドします:

```bash
./inference/enterprise/parallel/build.sh
```

次に、サーバーを実行します:

```bash
./inference/enterprise/parallel/run.sh
```

ターミナルに、サーバーが実行中で使用可能であることを示すメッセージが表示されます。
{% endtab %}

{% tab title="Docker" %}
Docker Hub にコンテナが公開されています:

```bash
docker pull roboflow/roboflow-inference-server-gpu-parallel:latest
```

固定タグを pull している場合は、 `$TAG` 変数を `run.sh` で一致するように変更してください。
{% endtab %}
{% endtabs %}

## ベンチマーク

さまざまなモデルで Inference Parallel の性能を評価し、 [Roboflow Universe](https://universe.roboflow.com/)と、同じハードウェア、つまり 8 コアと 1 GPU を搭載したコンピューター上の Inference Server 0.9.5.rc と比較しました。インスタンスセグメンテーションの指標は `"mask_decode_mode": "fast"` をリクエストボディ内で設定しました。リクエストは並列度 1000 で同時に送信されました。

| Workspace                   | モデル                        | モデルタイプ          | 分割 | 0.9.5.rc FPS | 0.9.5.parallel FPS |
| --------------------------- | -------------------------- | --------------- | -- | ------------ | ------------------ |
| 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 を超えました。
