コンテンツへスキップ

TensorRT YOLOv8 モデルのエクスポート

高性能環境でコンピュータビジョンモデルを展開するには、スピードと効率を最大化するフォーマットが必要になることがあります。これは、NVIDIA GPU上でモデルを展開する場合に特に当てはまります。

TensorRT エクスポート・フォーマットを使用することで Ultralytics YOLOv8NVIDIA モデルを強化することができます。このガイドでは、変換プロセスの手順をわかりやすく説明し、ディープラーニング・プロジェクトで NVIDIA の高度なテクノロジーを最大限に活用できるようにします。

TensorRT

TensorRT 概要

TensorRTNVIDIA 、高速ディープラーニング推論用に設計された先進的なソフトウェア開発キット(SDK)である。物体検出のようなリアルタイムアプリケーションに適している。

このツールキットは、ディープラーニングモデルをNVIDIA GPU 向けに最適化し、より高速で効率的なオペレーションを実現します。TensorRT モデルはTensorRT 最適化を受けますが、これにはレイヤー融合、精度キャリブレーション(INT8 および FP16)、動的tensor メモリ管理、カーネル自動チューニングなどの技術が含まれます。ディープラーニングモデルをTensorRT 形式に変換することで、開発者はNVIDIA GPUの潜在能力を十分に発揮することができます。

TensorRT は、TensorFlow 、 PyTorchおよびONNX を含む様々なモデル形式との互換性で知られ、開発者に異なるフレームワークのモデルを統合し最適化するための柔軟なソリューションを提供します。この汎用性により、多様なハードウェアおよびソフトウェア環境での効率的なモデル展開が可能になります。

TensorRT モデルの主な特徴

TensorRT モデルは、高速ディープラーニング推論における効率性と有効性に貢献する、さまざまな主要機能を提供する:

  • 精密キャリブレーション:TensorRT は精密キャリブレーションをサポートしており、特定の精度要件に合わせてモデルを微調整することができます。これにはINT8やFP16のような低精度フォーマットのサポートも含まれ、許容可能な精度レベルを維持しながら推論速度をさらに向上させることができます。

  • レイヤー融合:TensorRT 最適化プロセスには、ニューラルネットワークの複数のレイヤーを1つの演算に統合するレイヤー融合が含まれます。これにより計算オーバーヘッドが削減され、メモリアクセスと計算が最小化されるため推論速度が向上します。

TensorRT レイヤー・フュージョン

  • 動的なTensor メモリ管理:TensorRT 推論中のtensor メモリ使用量を効率的に管理し、メモリのオーバーヘッドを減らし、メモリ割り当てを最適化する。その結果、より効率的なGPU メモリ利用が可能になる。

  • 自動カーネル・チューニング:TensorRT は、モデルの各層に最も最適化されたGPU カーネルを選択する自動カーネル・チューニングを適用する。この適応的アプローチは、モデルがGPU の計算能力をフルに活用することを保証する。

配備オプションTensorRT

YOLOv8 モデルをTensorRT フォーマットにエクスポートするコードを見る前に、TensorRT モデルが通常どこで使われるのかを理解しよう。

TensorRT にはいくつかの導入オプションがあり、各オプションで統合のしやすさ、パフォーマンスの最適化、柔軟性のバランスが異なっている:

  • TensorFlow 内に配置する: この方法はTensorRT をTensorFlow に統合し、最適化されたモデルを使い慣れたTensorFlow 環境で実行できるようにします。TF-TRTはこれらを効率的に処理できるため、サポートされているレイヤーとサポートされていないレイヤーが混在するモデルに便利です。

TensorRT 概要

  • スタンドアロンTensorRT ランタイムAPI:きめ細かい制御が可能で、パフォーマンスを重視するアプリケーションに最適。より複雑ですが、サポートされていない演算子のカスタム実装が可能です。

  • NVIDIA Triton 推論サーバー:様々なフレームワークのモデルをサポートするオプション。特にクラウドやエッジ推論に適しており、モデルの同時実行やモデル分析などの機能を提供する。

YOLOv8 モデルのエクスポートTensorRT

YOLOv8 モデルをTensorRT フォーマットに変換することで、実行効率を改善し、パフォーマンスを最適化することができます。

インストール

必要なパッケージをインストールするには

インストール

# Install the required package for YOLOv8
pip install ultralytics

インストールプロセスに関する詳細な説明とベストプラクティスについては、YOLOv8 インストールガイドをご覧ください。YOLOv8 に必要なパッケージをインストールする際に、何らかの問題が発生した場合は、解決策やヒントについて、よくある問題ガイドを参照してください。

使用方法

使い方の説明に入る前に、 Ultralytics が提供するYOLOv8 モデルのラインナップをご確認ください。これは、あなたのプロジェクトの要件に最も適したモデルを選択するのに役立ちます。

使用方法

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TensorRT format
model.export(format="engine")  # creates 'yolov8n.engine'

# Load the exported TensorRT model
tensorrt_model = YOLO("yolov8n.engine")

# Run inference
results = tensorrt_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to TensorRT format
yolo export model=yolov8n.pt format=engine  # creates 'yolov8n.engine''

# Run inference with the exported model
yolo predict model=yolov8n.engine source='https://ultralytics.com/images/bus.jpg'

エクスポートプロセスの詳細については、Ultralytics ドキュメントのエクスポートに関するページをご覧ください。

INT8 量子化によるTensorRT のエクスポート

INT8精度の TensorRT を使用してUltralytics YOLO モデルをエクスポートすると、ポストトレーニング量子化(PTQ)が実行されます。TensorRT はPTQのためにキャリブレーションを使用します。これは、YOLO モデルが代表的な入力データに対して推論を処理する際に、各アクティベーションtensor 内のアクティベーションの分布を測定し、その分布を使用して各tensor のスケール値を推定します。量子化の候補となる各活性化tensor は、キャリブレーションプロセスによって推測される関連スケールを持つ。

暗黙的に量子化されたネットワークを処理するとき、TensorRT はレイヤーの実行時間を最適化するためにINT8を臨機応変に使用する。あるレイヤがINT8で高速に実行され、そのデータ入出力に量子化スケールが割り当てられている場合、INT8精度のカーネルがそのレイヤに割り当てられる。そうでない場合、TensorRT 、そのレイヤの実行時間がより速くなる方に基づいて、FP32またはFP16のいずれかの精度をカーネルに選択する。

チップ

較正結果はデバイスによって異なる可能性があるため、TensorRT モデルウェイトを配備に使用するデバイスと同じものを INT8 精度でエクスポートするために使用することが重要です。

INT8エクスポートの設定

を使用する際に提供される引数です。 輸出 Ultralytics YOLO モデルの場合 大いに はエクスポートされたモデルのパフォーマンスに影響します。また、利用可能なデバイスリソースに基づいて選択する必要がありますが、デフォルトの引数 べきである ほとんどの場合 Ampere (または新しい)NVIDIA ディスクリートGPU.使用される校正アルゴリズムは "ENTROPY_CALIBRATION_2" オプションの詳細については、こちらをご覧ください。 TensorRT 開発者ガイドUltralytics テストによると "ENTROPY_CALIBRATION_2" が最良の選択であり、輸出はこのアルゴリズムを使うことが確定している。

  • workspace :モデルの重みを変換する際のデバイスメモリの割り当てサイズ(GiB単位)を制御します。

    • を調整する。 workspace 校正のニーズとリソースの利用可能性に応じて、値を設定してください。より大きな workspace キャリブレーションにかかる時間は長くなるかもしれないが、TensorRT 、より幅広い最適化戦術を模索することができるようになり、モデルのパフォーマンスを向上させる可能性がある。 精度.逆に workspace は較正時間を短縮できるが、最適化戦略が制限され、量子化モデルの品質に影響を与える可能性がある。

    • デフォルトは workspace=4 (GiB)、キャリブレーションがクラッシュする(警告なしに終了する)場合は、この値を増やす必要があるかもしれません。

    • TensorRT 報告する UNSUPPORTED_STATE の値が workspace の値は、デバイスが利用可能なメモリよりも大きい。 workspace を下げるべきである。

    • もし workspace が最大値に設定され、較正が失敗/クラッシュする場合は、以下の値を下げることを検討してください。 imgsz そして batch を使用することで、必要なメモリを削減することができる。

    • INT8のキャリブレーションは各デバイスに固有であることを忘れないでください。キャリブレーションのために "ハイエンド"GPU を借用すると、推論を他のデバイスで実行したときにパフォーマンスが低下する可能性があります。

  • batch :推論に使用される最大バッチサイズ。推論中はより小さなバッチを使用することができるが、推論は指定されたバッチより大きなバッチは受け付けない。

キャリブレーション中、2回 batch 提供されたサイズが使用される。小バッチの使用は、較正時に不正確なスケーリングにつながる可能性があります。これは、プロセスが見たデータに基づいて調整するためです。小ロットの場合、値の全範囲を把握できない可能性があり、最終的な較正に問題が生じるため batch サイズは自動的に2倍になる。もし バッチサイズ が指定されている batch=1校正は batch=1 * 2 較正のスケーリング誤差を減らす。

NVIDIA の実験によると、INT8量子化キャリブレーションでは、モデルのデータを代表するキャリブレーション画像を少なくとも500枚使用することを推奨しています。これはガイドラインであり ハードあなたのデータセットで何が必要かを試してみる必要がある。 TensorRT 、INT8の較正には較正データが必要ですので、必ず data 引数 int8=True TensorRT 、使用する。 data="my_dataset.yaml"の画像を使用する。 バリデーション で校正する。に値が渡されない場合 data INT8量子化でTensorRT 。 モデルタスクに基づく "小さな "サンプルデータセット エラーをスローしない。

from ultralytics import YOLO

model = YOLO("yolov8n.pt")
model.export(
    format="engine",
    dynamic=True,  # (1)!
    batch=8,  # (2)!
    workspace=4,  # (3)!
    int8=True,
    data="coco.yaml",  # (4)!
)

# Load the exported TensorRT INT8 model
model = YOLO("yolov8n.engine", task="detect")

# Run inference
result = model.predict("https://ultralytics.com/images/bus.jpg")
  1. でエクスポートする場合、デフォルトで有効になります。 int8=True 明示的に設定されていない場合でも参照 輸出引数 をご覧ください。
  2. で較正するエクスポートモデルの最大バッチサイズを 8 に設定します。 batch = 2 * 8 校正時のスケーリングエラーを避けるため。
  3. 変換処理のためにデバイス全体を割り当てる代わりに、4GiBのメモリを割り当てる。
  4. COCOデータセットを校正に使用、特に検証に使用した画像(合計5,000枚)。
# Export a YOLOv8n PyTorch model to TensorRT format with INT8 quantization
yolo export model=yolov8n.pt format=engine batch=8 workspace=4 int8=True data=coco.yaml  # creates 'yolov8n.engine''

# Run inference with the exported TensorRT quantized model
yolo predict model=yolov8n.engine source='https://ultralytics.com/images/bus.jpg'
キャリブレーション・キャッシュ

TensorRT を生成します。 .cache これは、同じデータを使った将来のモデル重みのエクスポートを高速化するために再利用することができますが、データが大きく異なる場合や、次のような場合は、キャリブレーションがうまくいかない可能性があります。 batch 値が大幅に変更される。このような状況では、既存の .cache は名前を変えて別のディレクトリに移動するか、完全に削除する必要がある。

TensorRT INT8 でYOLO を使用する利点

  • モデルサイズの縮小:FP32からINT8への量子化により、(ディスク上またはメモリ上の)モデルサイズが4分の1になり、ダウンロード時間が短縮されます。

  • 消費電力の低減:INT8でエクスポートされたYOLO モデルの精度を下げた演算は、FP32モデルに比べて消費電力を抑えることができ、特にバッテリー駆動のデバイスに適しています。

  • 推論速度の向上: TensorRT は、ターゲットとなるハードウェアに合わせてモデルを最適化するため、GPU、組み込みデバイス、アクセラレータでの推論速度が向上する可能性があります。

推論速度に関するメモ

TensorRT INT8 にエクスポートされたモデルを使った最初の数回の推論呼び出しは、前処理、推論、後処理に通常より長い時間がかかることが予想されます。これは imgsz 推論中、特に imgsz は、エクスポート時に指定されたものと同じではありません(エクスポート imgsz はTensorRT 「最適」プロファイルとして設定されている)。

TensorRT INT8でYOLO 。

  • 評価指標の低下: より低い精度を使用すると mAP, Precision, Recall または モデルの性能を評価するために使用されるその他の指標 は多少悪くなる可能性が高い。以下の記事を参照されたい。 パフォーマンス結果セクション の違いを比較する。 mAP50 そして mAP50-95 様々なデバイスの小さなサンプルでINT8でエクスポートした場合。

  • 開発時間の増加:データセットとデバイスに応じたINT8較正の「最適」設定を見つけるには、かなりの量のテストが必要です。

  • ハードウェア依存性:キャリブレーションや性能向上はハードウェアに大きく依存する可能性があり、モデルの重み付けは移植性が低い。

Ultralytics YOLO TensorRT 輸出実績

NVIDIA A100

パフォーマンス

Ubuntu 22.04.3 LTSでテスト、 python 3.10.12, ultralytics==8.2.4, tensorrt==8.6.1.post1

80の訓練済みクラスを含むCOCO上で訓練されたこれらのモデルの使用例については、Detection Docsを参照してください。

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する0.520.51 | 0.568640
FP32COCOval0.520.520.371640
FP16予測する0.340.34 | 0.418640
FP16COCOval0.330.520.371640
INT8予測する0.280.27 | 0.318640
INT8COCOval0.290.470.331640

COCOで訓練されたこれらのモデルの使用例については、Segmentation Docsを参照してください。

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n-seg.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
mAPval
50(M
)
mAPval
50-95(M
)
batchサイズ
(ピクセル)
FP32予測する0.620.61 | 0.688640
FP32COCOval0.630.520.360.490.311640
FP16予測する0.400.39 | 0.448640
FP16COCOval0.430.520.360.490.301640
INT8予測する0.340.33 | 0.378640
INT8COCOval0.360.460.320.430.271640

ImageNetで訓練されたこれらのモデルの使用例については、Classification Docsを参照してください。

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n-cls.engine

精密評価試験平均
(ms)
最小|最大
(ms)
トップトップ5batchサイズ
(ピクセル)
FP32予測する0.260.25 | 0.288640
FP32イメージネットバル0.260.350.611640
FP16予測する0.180.17 | 0.198640
FP16イメージネットバル0.180.350.611640
INT8予測する0.160.15 | 0.578640
INT8イメージネットバル0.150.320.591640

COCOで訓練されたこれらのモデルの使用例については、Pose Estimation Docsを参照してください。

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n-pose.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
mAPval
50(P
)
mAPval
50-95(P
)
batchサイズ
(ピクセル)
FP32予測する0.540.53 | 0.588640
FP32COCOval0.550.910.690.800.511640
FP16予測する0.370.35 | 0.418640
FP16COCOval0.360.910.690.800.511640
INT8予測する0.290.28 | 0.338640
INT8COCOval0.300.900.680.780.471640

DOTAv1で訓練されたこれらのモデルの使用例については、Oriented Detection Docsを参照のこと。

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n-obb.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する0.520.51 | 0.598640
FP32DOTAv1val0.760.500.361640
FP16予測する0.340.33 | 0.428640
FP16DOTAv1val0.590.500.361640
INT8予測する0.290.28 | 0.338640
INT8DOTAv1val0.320.450.321640

コンシューマー向けGPU

検出性能(COCO)

Windows 10.0.19045でテスト、 python 3.10.9, ultralytics==8.2.4, tensorrt==10.0.0b6

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する1.060.75 | 1.888640
FP32COCOval1.370.520.371640
FP16予測する0.620.75 | 1.138640
FP16COCOval0.850.520.371640
INT8予測する0.520.38 | 1.008640
INT8COCOval0.740.470.331640

Windows 10.0.22631でテスト、 python 3.11.9, ultralytics==8.2.4, tensorrt==10.0.1

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する1.761.69 | 1.878640
FP32COCOval1.940.520.371640
FP16予測する0.860.75 | 1.008640
FP16COCOval1.430.520.371640
INT8予測する0.800.75 | 1.008640
INT8COCOval1.350.470.331640

Pop!_OS 22.04 LTSでテスト、 python 3.10.12, ultralytics==8.2.4, tensorrt==8.6.1.post1

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する2.842.84 | 2.858640
FP32COCOval2.940.520.371640
FP16予測する1.091.09 | 1.108640
FP16COCOval1.200.520.371640
INT8予測する0.750.74 | 0.758640
INT8COCOval0.760.470.331640

組み込み機器

検出性能(COCO)

JetPack 6.0 (L4T 36.3) Ubuntu 22.04.4 LTSでテスト、 python 3.10.12, ultralytics==8.2.16, tensorrt==10.0.1

推論時間 mean, min (最速)、そして max (最も遅い) 事前学習された重みを使用した各テストについて yolov8n.engine

精密評価試験平均
(ms)
最小|最大
(ms)
mAPval
50(B
)
mAPval
50-95(B
)
batchサイズ
(ピクセル)
FP32予測する6.116.10 | 6.298640
FP32COCOval6.170.520.371640
FP16予測する3.183.18 | 3.208640
FP16COCOval3.190.520.371640
INT8予測する2.302.29 | 2.358640
INT8COCOval2.320.460.321640

インフォメーション

NVIDIA JetsonwithUltralytics YOLO の クイックスタートガイドで、セットアップと設定の詳細をご覧ください。

評価方法

これらのモデルがどのようにエクスポートされ、テストされたかについては、以下のセクションを参照してください。

エクスポート設定

エクスポート設定引数の詳細については、エクスポート・モードを参照してください。

from ultralytics import YOLO

model = YOLO("yolov8n.pt")

# TensorRT FP32
out = model.export(format="engine", imgsz=640, dynamic=True, verbose=False, batch=8, workspace=2)

# TensorRT FP16
out = model.export(format="engine", imgsz=640, dynamic=True, verbose=False, batch=8, workspace=2, half=True)

# TensorRT INT8 with calibration `data` (i.e. COCO, ImageNet, or DOTAv1 for appropriate model task)
out = model.export(
    format="engine", imgsz=640, dynamic=True, verbose=False, batch=8, workspace=2, int8=True, data="coco8.yaml"
)
予測ループ

詳細は予測モードを参照。

import cv2

from ultralytics import YOLO

model = YOLO("yolov8n.engine")
img = cv2.imread("path/to/image.jpg")

for _ in range(100):
    result = model.predict(
        [img] * 8,  # batch=8 of the same image
        verbose=False,
        device="cuda",
    )
バリデーション設定

参照 val モード を参照してください。

from ultralytics import YOLO

model = YOLO("yolov8n.engine")
results = model.val(
    data="data.yaml",  # COCO, ImageNet, or DOTAv1 for appropriate model task
    batch=1,
    imgsz=640,
    verbose=False,
    device="cuda",
)

エクスポートされたYOLOv8 TensorRT モデルの展開

Ultralytics YOLOv8 モデルをTensorRT フォーマットにエクスポートすることに成功しました。様々な設定におけるTensorRT モデルのデプロイに関する詳しい説明は、以下のリソースをご覧ください:

概要

このガイドでは、Ultralytics YOLOv8 のモデルを、NVIDIA'TensorRT のモデルフォーマットに変換することに焦点を当てた。この変換ステップは、YOLOv8 モデルの効率とスピードを改善し、より効果的で多様な展開環境に適したものにするために非常に重要です。

使い方の詳細については、TensorRT 公式ドキュメントをご覧ください。

その他のUltralytics YOLOv8 の統合についてご興味がおありでしたら、統合ガイドのページで、有益なリソースや洞察を幅広くご紹介しています。

よくあるご質問

YOLOv8 モデルをTensorRT フォーマットに変換する方法は?

Ultralytics YOLOv8 のモデルをTensorRT 形式に変換し、最適化されたNVIDIA GPU 推論を行うには、以下の手順に従う:

  1. 必要なパッケージをインストールする:

    pip install ultralytics
    
  2. YOLOv8 モデルをエクスポートします:

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.pt")
    model.export(format="engine")  # creates 'yolov8n.engine'
    
    # Run inference
    model = YOLO("yolov8n.engine")
    results = model("https://ultralytics.com/images/bus.jpg")
    

詳細については、YOLOv8 インストールガイドおよびエクスポートドキュメントをご覧ください。

YOLOv8 モデルにTensorRT を使用する利点は何ですか?

YOLOv8 モデルを最適化するためにTensorRT を使用すると、いくつかの利点がある:

  • 推論速度の高速化:TensorRT はモデルレイヤーを最適化し、高精度キャリブレーション(INT8とFP16)を使用することで、精度を大幅に犠牲にすることなく推論速度を高速化します。
  • メモリ効率:TensorRT はtensor のメモリを動的に管理し、オーバーヘッドを削減し、GPU のメモリ使用率を向上させる。
  • レイヤー融合:複数のレイヤーを1つの演算に統合し、計算の複雑さを軽減する。
  • カーネルの自動チューニング:各モデルレイヤーに最適化されたGPU カーネルを自動的に選択し、最高のパフォーマンスを保証します。

詳しくは、TensorRT の詳細機能をご覧ください。また、TensorRT の概要セクションもご覧ください。

TensorRT 、YOLOv8 モデルでINT8量子化を使用できますか?

はい、TensorRT 、INT8量子化を使ってYOLOv8 モデルをエクスポートすることができます。このプロセスには、学習後の量子化(PTQ)とキャリブレーションが含まれます:

  1. INT8でエクスポート

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.pt")
    model.export(format="engine", batch=8, workspace=4, int8=True, data="coco.yaml")
    
  2. 推論を実行する:

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.engine", task="detect")
    result = model.predict("https://ultralytics.com/images/bus.jpg")
    

詳細については、INT8量子化でTensorRT

YOLOv8 TensorRT モデルをNVIDIA Triton 推論サーバーにデプロイするには?

YOLOv8 TensorRT モデルをNVIDIA Triton Inference Server にデプロイするには、以下のリソースを使用する:

これらのガイドは、YOLOv8 モデルをさまざまな配備環境で効率的に統合するのに役立つ。

TensorRT にエクスポートされたYOLOv8 モデルで確認されたパフォーマンスの向上とは?

TensorRT によるパフォーマンスの向上は、使用するハードウェアによって異なります。以下は代表的なベンチマークです:

  • NVIDIA A100:

    • FP32推論:~0.52ミリ秒/画像
    • FP16推論:~0.34ミリ秒/画像
    • INT8推論:~0.28ミリ秒/画像
    • INT8精度ではmAPがわずかに減少しているが、スピードは大幅に向上している。
  • コンシューマー向けGPU(例:RTX 3080)

    • FP32推論:~1.06ミリ秒/画像
    • FP16推論:~0.62ミリ秒/画像
    • INT8推論:~0.52ミリ秒/画像

さまざまなハードウェア構成の詳細な性能ベンチマークは、性能のセクションで見ることができる。

TensorRT のパフォーマンスに関するより包括的な洞察については、Ultralytics のドキュメントおよびパフォーマンス分析レポートを参照してください。

📅作成 9ヶ月前 ✏️更新しました 1ヶ月前

コメント