Glossar

TensorRT

Optimieren Sie Deep-Learning-Modelle mit TensorRT für schnellere und effizientere Inferenzen auf NVIDIA GPUs. Erzielen Sie Echtzeitleistung mit YOLO und KI-Anwendungen.

TensorRT ist ein hochleistungsfähiger Deep Learning Inferenz-Optimierer und eine Laufzeitbibliothek von NVIDIA. Sie wurde speziell entwickelt, um die Leistung von trainierten neuronalen Netzen (NN) auf NVIDIA Graphics Processing Units (GPUs) zu maximieren. Nachdem ein Modell mit einem Framework wie PyTorch oder TensorFlow trainiert wurde, nimmt TensorRT dieses Modell und wendet zahlreiche Optimierungen an, um es für den Einsatz vorzubereiten. Das Ergebnis ist eine hocheffiziente Laufzeit-Engine, die die Inferenz-Latenzzeit erheblich reduzieren und den Durchsatz verbessern kann, was sie ideal für Anwendungen macht, die Echtzeit-Inferenz erfordern.

Wie TensorRT funktioniert

TensorRT erreicht seine Leistungssteigerung durch einen mehrstufigen Optimierungsprozess, der ein standardmäßig trainiertes Modell in eine optimierte Inferenzmaschine verwandelt. Dieser Prozess ist weitgehend automatisiert und auf die spezifische NVIDIA-GPU-Architektur zugeschnitten, auf der er eingesetzt werden soll. Zu den wichtigsten Optimierungstechniken gehören:

  • Graph-Optimierung: TensorRT analysiert das trainierte Modell und führt Graph-Optimierungen durch, wie z.B. die Eliminierung unbenutzter Schichten und die vertikale (Kombination sequenzieller Schichten) und horizontale (Kombination paralleler Schichten) Verschmelzung von Schichten. Dies reduziert die Anzahl der Operationen und den Speicher-Overhead.
  • Präzisionskalibrierung: TensorRT unterstützt Inferenz mit geringerer Genauigkeit, wie z.B. gemischte Genauigkeit (FP16) und INT8. Durch die Konvertierung von Modellgewichten von 32-Bit-Gleitkommazahlen (FP32) in niedrigere Genauigkeiten durch Modellquantisierung reduziert TensorRT die Speichernutzung und die Rechenanforderungen drastisch mit minimalen Auswirkungen auf die Genauigkeit.
  • Kernel Auto-Tuning: TensorRT wählt aus einer umfangreichen Bibliothek von optimierten GPU-Kernels für jede Operation oder erstellt seine eigenen, speziell auf die Ziel-GPU abgestimmten Kernels. Dadurch wird sichergestellt, dass jede Berechnung so effizient wie möglich auf der Hardware durchgeführt wird.
  • Tensor-Speicher-Optimierung: Sie optimiert die Speichernutzung durch Wiederverwendung von Speicher für Tensoren während der Ausführung des Modells, wodurch der Speicherbedarf reduziert und die Leistung verbessert wird.

Ultralytics YOLO-Modelle können leicht in das TensorRT-Format exportiert werden, so dass Entwickler diese Optimierungen für ihre Computer-Vision-Anwendungen (CV) nutzen können.

Anwendungen in der realen Welt

TensorRT ist entscheidend für den Einsatz von Hochleistungs-KI in zeitkritischen und ressourcenbeschränkten Umgebungen.

  1. Autonome Fahrzeuge: In selbstfahrenden Autos müssen die Wahrnehmungssysteme Daten von Kameras und Sensoren in Echtzeit verarbeiten, um Fußgänger, andere Fahrzeuge und Hindernisse zu erkennen. Modelle wie Ultralytics YOLO11, die mit TensorRT optimiert wurden, können die Objekterkennung mit extrem geringer Latenz durchführen, was für sichere Fahrentscheidungen entscheidend ist.
  2. Intelligente Fertigung: In einer Fabrikhalle wird KI in der Fertigung für die automatische Qualitätskontrolle eingesetzt. Eine Kamera nimmt Bilder von Produkten auf einem Förderband auf, und ein Bildverarbeitungsmodell analysiert sie auf Fehler. Durch den Einsatz von TensorRT können diese Systeme mit Hochgeschwindigkeits-Produktionslinien Schritt halten, Probleme sofort erkennen und die Gesamteffizienz verbessern.

TensorRT vs. Verwandte Technologien

Obwohl TensorRT eine leistungsfähige Inferenzmaschine ist, ist es wichtig zu verstehen, wie sie sich von anderen Werkzeugen im AI-Ökosystem unterscheidet:

  • Deep Learning-Frameworks: Frameworks wie PyTorch und TensorFlow sind in erster Linie für das Training von Modellen gedacht. Sie haben zwar ihre eigenen Inferenzfähigkeiten, sind aber nicht so sehr für den Einsatz optimiert wie eine spezialisierte Laufzeitumgebung wie TensorRT.
  • ONNX Laufzeit: Das Open Neural Network Exchange (ONNX) Format bietet eine Möglichkeit, Modelle interoperabel darzustellen. ONNX Runtime kann Modelle auf verschiedenen Hardwareplattformen ausführen, einschließlich NVIDIA GPUs (wo es TensorRT als Ausführungsprovider verwenden kann). Die direkte Integration mit TensorRT bringt jedoch oft eine bessere Leistung auf NVIDIA-Hardware aufgrund seiner hardwarespezifischen Optimierungen.
  • Intel OpenVINO: OpenVINO ist ähnlich wie TensorRT, ist aber für Intel-Hardware (CPUs, iGPUs, VPUs) optimiert. Es dient dem gleichen Zweck der Beschleunigung der Inferenz, ist aber auf ein anderes Hardware-Ökosystem zugeschnitten.

Der Hauptvorteil von TensorRT ist die tiefe Integration in das NVIDIA-Ökosystem, von GPUs bis hin zu CUDA-Bibliotheken, was eine beispiellose Leistung für Modelle ermöglicht, die auf NVIDIA-Plattformen eingesetzt werden, wie oft in MLPerf-Benchmarks gezeigt wird. Die Verwaltung der Modellbereitstellung kann mit MLOps-Plattformen wie Ultralytics HUB weiter rationalisiert werden.

Werden Sie Mitglied der Ultralytics-Gemeinschaft

Beteiligen Sie sich an der Zukunft der KI. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert