Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

TensorRT

Optimice los modelos de aprendizaje profundo con TensorRT para una inferencia más rápida y eficiente en las GPU NVIDIA . Consigue rendimiento en tiempo real con YOLO y las aplicaciones de IA.

TensorRT es un kit de desarrollo de software (SDK) de alto rendimiento desarrollado por NVIDIA específicamente para optimizar y ejecutar modelos de aprendizaje profundo. Funciona como un motor de inferencia especializado que redes neuronales entrenadas y las reestructura para ejecutarlas con la máxima eficiencia en NVIDIA NVIDIA (GPU). A través de de memoria, TensorRT reduce significativamente la latencia de la inferencia e incrementa la la latencia de la inferencia y aumenta el rendimiento, lo que la convierte en una herramienta esencial para los desarrolladores que crean aplicaciones que requieren respuestas inmediatas en tiempo real.

Cómo optimiza el rendimiento TensorRT

El objetivo principal de TensorRT es salvar la brecha entre un modelo entrenado en un marco flexible y un modelo desplegado por velocidad. Lo consigue mediante varias técnicas de optimización sofisticadas:

  • Fusión de capas y optimización de grafos: TensorRT analiza la arquitectura de la red y fusiona múltiples capas en una única operación. Por ejemplo, puede combinar una capa de capa de convolución con un paso de polarización y activación. Esta reducción del número de operaciones minimiza la sobrecarga de lanzamiento de kernels en la GPU.
  • Calibración de precisión: Para acelerar aún más el rendimiento, TensorRT soporta cuantificación de modelos. Este proceso convierte los pesos del modelo de 32 bits estándar de punto flotante (FP32) a formatos de menor precisión como precisión mixta (FP16) o enteros de 8 bits (INT8). Esto reduce drásticamente el uso de ancho de banda de memoria, manteniendo una alta precisión. precisión.
  • Ajuste automático del kernel: Las distintas arquitecturas de GPU manejan las operaciones matemáticas de forma diferente. TensorRT selecciona automáticamente las mejores capas de datos y algoritmos a partir de una amplia biblioteca de kernels optimizados, garantizando que el modelo se ejecute de forma óptima en el hardware de destino específico, como una NVIDIA Jetson o un centro de datos A100.
  • Memoria Tensor dinámica: El SDK optimiza la asignación de memoria reutilizando la memoria para los tensores (contenedores de datos (contenedores de datos) que no se necesitan simultáneamente, reduciendo eficazmente la huella de memoria total durante el despliegue del modelo. despliegue del modelo.

Aplicaciones reales de TensorRT

Debido a su capacidad para procesar cantidades masivas de datos con un retardo mínimo, TensorRT es ampliamente adoptado en industrias que dependen de la visión por ordenador y de tareas complejas de IA.

  1. Vehículos autónomos: En el campo de la IA en automoción, los coches autónomos deben procesar imágenes de vídeo procedentes de varias cámaras para detect peatones, señales y obstáculos al instante. Utilizando TensorRT modelos de percepción como las redes de detección de objetos pueden analizar fotogramas en milisegundos, lo que permite al sistema de control del vehículo tomar decisiones críticas para la seguridad sin retrasos. retraso.
  2. Fabricación inteligente: Las fábricas modernas utilizan IA en la fabricación para la inspección óptica automatizada. Las cámaras de alta velocidad capturan imágenes de los productos en las líneas de montaje y los modelos TensorRT identifican los defectos o las anomalías en tiempo real. identifican defectos o anomalías en tiempo real. Esto garantiza que el control de calidad siga el ritmo de los entornos de producción de alta velocidad. de producción de alta velocidad, a menudo desplegando dispositivos de IA en el borde la planta de producción.

Uso de TensorRT con Ultralytics YOLO11

Integrar TensorRT en su flujo de trabajo es sencillo con las herramientas modernas de IA. El sitio ultralytics paquete ofrece un método sencillo para convertir las PyTorch en motores TensorRT . Esto permite a los usuarios aprovechar la arquitectura de vanguardia de Ultralytics YOLO11 con la aceleración por hardware de NVIDIA GPU.

El siguiente ejemplo muestra cómo exportar un modelo YOLO11 a un archivo del motor TensorRT (.engine) y utilizarlo para la inferencia:

from ultralytics import YOLO

# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TensorRT format (creates 'yolo11n.engine')
# This step optimizes the model for the specific GPU currently in use
model.export(format="engine")

# Load the optimized TensorRT model for high-speed inference
tensorrt_model = YOLO("yolo11n.engine")
results = tensorrt_model("https://ultralytics.com/images/bus.jpg")

TensorRT frente a otras tecnologías de inferencia

Es importante distinguir TensorRT de otras herramientas del ecosistema del aprendizaje automático.

  • TensorRT frente a marcos de entrenamiento: Bibliotecas como PyTorch y TensorFlow están diseñadas principalmente para modelos de entrenamiento, priorizando la flexibilidad y la facilidad de depuración. TensorRT es estrictamente para inferencia, priorizando la velocidad bruta y la eficiencia en hardware específico.
  • Tiempo de ejecución deTensorRT frente a ONNX : El ONNX (Intercambio Abierto de Redes Neuronales) está diseñado para la interoperabilidad entre diferentes plataformas. Mientras que ONNX Runtime es un motor versátil que funciona en distintos tipos de hardware, TensorRT proporciona optimizaciones más profundas, específicas del hardware y exclusivas de las GPU NVIDIA , que a menudo proporcionan un rendimiento superior al de los ejecutores genéricos. ejecutores genéricos.
  • TensorRT vs. OpenVINO: Al igual que TensorRT está optimizado para el hardware de NVIDIA , el kit de herramientas de OpenVINO está diseñado para acelerar la inferencia en procesadores Intel (CPUs y GPUs integradas). La elección entre ellos depende enteramente de su despliegue hardware.

Para las implantaciones escalables en la nube, los motores TensorRT suelen servirse utilizando el NVIDIA Triton Inference Server, que gestiona las versiones del modelo y maneja las solicitudes concurrentes de manera eficiente.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora