Guía de inicio rápido: NVIDIA DGX Spark con Ultralytics YOLO26
Esta guía exhaustiva proporciona un recorrido detallado para implementar Ultralytics YOLO26 en NVIDIA DGX Spark, el superordenador de IA de escritorio compacto de NVIDIA. Además, muestra puntos de referencia de rendimiento para demostrar las capacidades de YOLO26 en este potente sistema.
Esta guía ha sido probada con la edición NVIDIA DGX Spark Founders Edition que ejecuta DGX OS basado en Ubuntu. Se espera que funcione con las últimas versiones de DGX OS.
¿Qué es NVIDIA DGX Spark?
NVIDIA DGX Spark es un superordenador de IA de escritorio compacto alimentado por el superchip NVIDIA GB10 Grace Blackwell. Ofrece hasta 1 petaFLOP de rendimiento de computación de IA con precisión FP4, lo que lo hace ideal para desarrolladores, investigadores y científicos de datos que necesitan potentes capacidades de IA en un formato de escritorio.
Watch: How to Get up to 1000 FPS with Ultralytics YOLO26 on NVIDIA DGX Spark | TensorRT & Batch Inference
Especificaciones clave
| Especificación | Detalles |
|---|---|
| Rendimiento de IA | Hasta 1 PFLOP (FP4) |
| GPU | Arquitectura NVIDIA Blackwell con Tensor Cores de 5.ª generación, RT Cores de 4.ª generación |
| CPU | Procesador Arm de 20 núcleos (10 Cortex-X925 + 10 Cortex-A725) |
| Memoria | 128 GB de memoria de sistema unificada LPDDR5x, interfaz de 256 bits, 4266 MHz, ancho de banda de 273 GB/s |
| Almacenamiento | 1 TB o 4 TB NVMe M.2 con autocifrado |
| Red | 1x RJ-45 (10 GbE), Smart NIC ConnectX-7, Wi-Fi 7, Bluetooth 5.4 |
| Conectividad | 4x USB Type-C, 1x HDMI 2.1a, audio multicanal HDMI |
| Procesamiento de vídeo | 1x NVENC, 1x NVDEC |
DGX OS
NVIDIA DGX OS es una distribución de Linux personalizada que proporciona una base de sistema operativo estable, probada y compatible para ejecutar aplicaciones de IA, aprendizaje automático y análisis en sistemas DGX. Incluye:
- Una base de Linux robusta optimizada para cargas de trabajo de IA
- Controladores y ajustes del sistema preconfigurados para hardware de NVIDIA
- Actualizaciones de seguridad y capacidades de mantenimiento del sistema
- Compatibilidad con el ecosistema de software más amplio de NVIDIA
DGX OS sigue un calendario de lanzamiento regular con actualizaciones proporcionadas normalmente dos veces al año (alrededor de febrero y agosto), con parches de seguridad adicionales proporcionados entre lanzamientos importantes.
Panel de control DGX
DGX Spark viene con un DGX Dashboard integrado que proporciona:
- Monitorización del sistema en tiempo real: Resumen de las métricas operativas actuales del sistema
- Actualizaciones del sistema: Capacidad de aplicar actualizaciones directamente desde el panel de control
- Ajustes del sistema: Cambia el nombre del dispositivo y otras configuraciones
- JupyterLab integrado: Accede a Jupyter Notebooks locales para el desarrollo
Acceder al panel de control
Haz clic en el botón "Show Apps" en la esquina inferior izquierda del escritorio de Ubuntu y, a continuación, selecciona "DGX Dashboard" para abrirlo en tu navegador.
El panel de control incluye una instancia de JupyterLab integrada que crea automáticamente un entorno virtual e instala los paquetes recomendados al iniciarse. A cada cuenta de usuario se le asigna un puerto dedicado para el acceso a JupyterLab.
Inicio rápido con Docker
La forma más rápida de empezar con Ultralytics YOLO26 en NVIDIA DGX Spark es ejecutarlo con imágenes de Docker preconstruidas. La misma imagen de Docker que admite Jetson AGX Thor (JetPack 7.0) funciona en DGX Spark con DGX OS.
t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia --gpus all $tUna vez hecho esto, pasa a la sección Usar TensorRT en NVIDIA DGX Spark.
Empezar con la instalación nativa
Para una instalación nativa sin Docker, sigue estos pasos.
Instalar el paquete Ultralytics
Aquí instalaremos el paquete Ultralytics en DGX Spark con dependencias opcionales para que podamos exportar los modelos de PyTorch a otros formatos diferentes. Nos centraremos principalmente en exportaciones de NVIDIA TensorRT porque TensorRT garantizará que podamos obtener el máximo rendimiento de DGX Spark.
-
Actualiza la lista de paquetes, instala pip y actualiza a la última versión
sudo apt update sudo apt install python3-pip -y pip install -U pip -
Instala el paquete
ultralyticsde pip con dependencias opcionalespip install ultralytics[export] -
Reinicia el dispositivo
sudo reboot
Instalar PyTorch y Torchvision
La instalación de ultralytics anterior instalará Torch y Torchvision. Sin embargo, es posible que estos paquetes instalados mediante pip no estén totalmente optimizados para la arquitectura ARM64 de DGX Spark con CUDA 13. Por lo tanto, recomendamos instalar las versiones compatibles con CUDA 13:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130Al ejecutar PyTorch 2.9.1 en NVIDIA DGX Spark, es posible que encuentres la siguiente UserWarning al inicializar CUDA (por ejemplo, al ejecutar yolo checks, yolo predict, etc.):
UserWarning: Found GPU0 NVIDIA GB10 which is of cuda capability 12.1.
Minimum and Maximum cuda capability supported by this version of PyTorch is (8.0) - (12.0)Esta advertencia puede ignorarse con seguridad. Para solucionar esto de forma permanente, se ha enviado una corrección en el PR de PyTorch #164590 que se incluirá en el lanzamiento de PyTorch 2.10.
Instalar onnxruntime-gpu
El paquete onnxruntime-gpu alojado en PyPI no tiene binarios aarch64 para sistemas ARM64. Por lo tanto, debemos instalar este paquete manualmente. Este paquete es necesario para algunas de las exportaciones.
Aquí descargaremos e instalaremos onnxruntime-gpu 1.24.0 con soporte para Python3.12.
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whlUsar TensorRT en NVIDIA DGX Spark
Entre todos los formatos de exportación de modelos admitidos por Ultralytics, TensorRT ofrece el mayor rendimiento de inferencia en NVIDIA DGX Spark, lo que lo convierte en nuestra principal recomendación para implementaciones. Para obtener instrucciones de configuración y uso avanzado, consulta nuestra guía de integración de TensorRT dedicada.
Convertir modelo a TensorRT y ejecutar inferencia
El modelo YOLO26n en formato PyTorch se convierte a TensorRT para ejecutar la inferencia con el modelo exportado.
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Export the model to TensorRT
model.export(format="engine") # creates 'yolo26n.engine'
# Load the exported TensorRT model
trt_model = YOLO("yolo26n.engine")
# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")Visita la página de exportación para acceder a argumentos adicionales al exportar modelos a diferentes formatos de modelo
Benchmarks de YOLO11 en NVIDIA DGX Spark
Los benchmarks de YOLO11 fueron ejecutados por el equipo de Ultralytics en múltiples formatos de modelo midiendo la velocidad y precisión: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch. Los benchmarks se ejecutaron en NVIDIA DGX Spark con precisión FP32 con un tamaño de imagen de entrada predeterminado de 640.
Tabla comparativa detallada
La siguiente tabla representa los resultados del benchmark para cinco modelos diferentes (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) en múltiples formatos, dándonos el estado, el tamaño, la métrica mAP50-95(B) y el tiempo de inferencia para cada combinación.
| Formato | Estado | Tamaño en disco (MB) | mAP50-95(B) | Tiempo de inferencia (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.4 | 0.5071 | 2.67 |
| TorchScript | ✅ | 10.5 | 0.5083 | 2.62 |
| ONNX | ✅ | 10.2 | 0.5074 | 5.92 |
| OpenVINO | ✅ | 10.4 | 0.5058 | 14.95 |
| TensorRT (FP32) | ✅ | 12.8 | 0.5085 | 1.95 |
| TensorRT (FP16) | ✅ | 7.0 | 0.5068 | 1.01 |
| TensorRT (INT8) | ✅ | 18.6 | 0.4880 | 1.62 |
| TF SavedModel | ✅ | 25.7 | 0.5076 | 36.39 |
| TF GraphDef | ✅ | 10.3 | 0.5076 | 41.06 |
| TF Lite | ✅ | 10.3 | 0.5075 | 64.36 |
| MNN | ✅ | 10.1 | 0.5075 | 12.14 |
| NCNN | ✅ | 10.2 | 0.5041 | 12.31 |
| ExecuTorch | ✅ | 10.2 | 0.5075 | 27.61 |
Evaluado con Ultralytics 8.3.249
Reproduce nuestros resultados
Para reproducir los benchmarks de Ultralytics anteriores en todos los formatos de exportación, ejecuta este código:
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Benchmark YOLO26n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml", imgsz=640)Ten en cuenta que los resultados de los benchmarks pueden variar según la configuración exacta del hardware y del software del sistema, así como de la carga de trabajo actual del sistema en el momento en que se ejecutan los benchmarks. Para obtener los resultados más fiables, utiliza un conjunto de datos con un gran número de imágenes, por ejemplo, data='coco.yaml' (5000 imágenes de validación).
Mejores prácticas para NVIDIA DGX Spark
Al usar NVIDIA DGX Spark, hay un par de mejores prácticas que debes seguir para permitir el máximo rendimiento al ejecutar YOLO26.
-
Monitoriza el rendimiento del sistema
Utiliza las herramientas de monitorización de NVIDIA para realizar un seguimiento de la utilización de la GPU y la CPU:
nvidia-smi -
Optimiza el uso de la memoria
Con 128 GB de memoria unificada, DGX Spark puede manejar tamaños de lote y modelos grandes. Considera aumentar el tamaño del lote para mejorar el rendimiento:
from ultralytics import YOLO model = YOLO("yolo26n.engine") results = model.predict(source="path/to/images", batch=16) -
Usa TensorRT con FP16 o INT8
Para obtener el mejor rendimiento, exporta modelos con precisión FP16 o INT8:
yolo export model=yolo26n.pt format=engine half=True # FP16 yolo export model=yolo26n.pt format=engine int8=True # INT8
Actualizaciones del sistema (Founders Edition)
Mantener tu DGX Spark Founders Edition actualizado es fundamental para el rendimiento y la seguridad. NVIDIA ofrece dos métodos principales para actualizar el sistema operativo, los controladores y el firmware.
Uso del DGX Dashboard (Recomendado)
El DGX Dashboard es la forma recomendada de realizar actualizaciones del sistema garantizando la compatibilidad. Te permite:
- Ver las actualizaciones del sistema disponibles
- Instalar parches de seguridad y actualizaciones del sistema
- Gestionar las actualizaciones de los controladores y del firmware de NVIDIA
Actualizaciones manuales del sistema
Para usuarios avanzados, las actualizaciones se pueden realizar manualmente a través del terminal:
sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo rebootAsegúrate de que tu sistema esté conectado a una fuente de alimentación estable y de haber realizado una copia de seguridad de los datos críticos antes de realizar las actualizaciones.
Siguientes pasos
Para seguir aprendiendo y obtener soporte, consulta la documentación de Ultralytics YOLO26.
Preguntas frecuentes
¿Cómo despliego Ultralytics YOLO26 en NVIDIA DGX Spark?
Desplegar Ultralytics YOLO26 en NVIDIA DGX Spark es sencillo. Puedes usar la imagen de Docker preconstruida para una configuración rápida o instalar manualmente los paquetes necesarios. Puedes encontrar pasos detallados para cada enfoque en las secciones Inicio rápido con Docker e Inicio con instalación nativa.
¿Qué rendimiento puedo esperar de YOLO26 en NVIDIA DGX Spark?
Los modelos YOLO26 ofrecen un rendimiento excelente en DGX Spark gracias al superchip GB10 Grace Blackwell. El formato TensorRT proporciona el mejor rendimiento de inferencia. Consulta la sección Tabla de comparación detallada para ver resultados de benchmarks específicos en diferentes tamaños y formatos de modelo.
¿Por qué debería usar TensorRT para YOLO26 en DGX Spark?
TensorRT es altamente recomendado para desplegar modelos YOLO26 en DGX Spark debido a su rendimiento óptimo. Acelera la inferencia aprovechando las capacidades de la GPU Blackwell, lo que garantiza la máxima eficiencia y velocidad. Aprende más en la sección Usa TensorRT en NVIDIA DGX Spark.
¿Cómo se compara DGX Spark con los dispositivos Jetson para YOLO26?
DGX Spark ofrece significativamente más potencia de cálculo que los dispositivos Jetson, con hasta 1 PFLOP de rendimiento de IA y 128 GB de memoria unificada, en comparación con los 2070 TFLOPS y 128 GB de memoria del Jetson AGX Thor. DGX Spark está diseñado como un superordenador de IA de escritorio, mientras que los dispositivos Jetson son sistemas integrados optimizados para el despliegue en el extremo (edge).
¿Puedo usar la misma imagen de Docker para DGX Spark y Jetson AGX Thor?
¡Sí! La imagen de Docker ultralytics/ultralytics:latest-nvidia-arm64 es compatible tanto con NVIDIA DGX Spark (con DGX OS) como con Jetson AGX Thor (con JetPack 7.0), ya que ambos utilizan la arquitectura ARM64 con CUDA 13 y pilas de software similares.