Ultralytics YOLO27:

Guida introduttiva rapida: NVIDIA DGX Spark con Ultralytics YOLO26#

Questa guida completa offre una panoramica dettagliata della distribuzione di Ultralytics YOLO26 su NVIDIA DGX Spark, il supercomputer IA desktop compatto di NVIDIA. Inoltre, presenta benchmark delle prestazioni per dimostrare le capacità di YOLO26 su questo potente sistema.

NVIDIA DGX Spark AI workstation overview

Nota

Questa guida è stata testata con NVIDIA DGX Spark Founders Edition con DGX OS basato su Ubuntu. È previsto che funzioni con le versioni più recenti di DGX OS.

Che cos'è NVIDIA DGX Spark?#

NVIDIA DGX Spark è un supercomputer IA desktop compatto basato sul superchip NVIDIA GB10 Grace Blackwell. Offre fino a 1 petaFLOP di prestazioni di calcolo IA con precisione FP4, rendendolo ideale per sviluppatori, ricercatori e data scientist che necessitano di potenti funzionalità IA in un formato desktop.



Watch: How to Get up to 1000 FPS with Ultralytics YOLO26 on NVIDIA DGX Spark | TensorRT & Batch Inference

Specifiche principali#

SpecificaDettagli
Prestazioni AIFino a 1 PFLOP (FP4)
GPUArchitettura NVIDIA Blackwell con Tensor Core di quinta generazione e RT Core di quarta generazione
CPUProcessore Arm a 20 core (10 Cortex-X925 + 10 Cortex-A725)
Memoria128 GB di memoria di sistema unificata LPDDR5x, interfaccia a 256 bit, 4266 MHz, larghezza di banda di 273 GB/s
ArchiviazioneNVMe M.2 da 1 TB o 4 TB con crittografia automatica
Rete1x RJ-45 (10 GbE), Smart NIC ConnectX-7, Wi-Fi 7, Bluetooth 5.4
Connettività4x USB Type-C, 1x HDMI 2.1a, audio multicanale HDMI
Elaborazione video1x NVENC, 1x NVDEC

DGX OS#

NVIDIA DGX OS è una distribuzione Linux personalizzata che fornisce una base del sistema operativo stabile, testata e supportata per eseguire applicazioni di IA, machine learning e analisi sui sistemi DGX. Include:

  • Una solida base Linux ottimizzata per i carichi di lavoro IA
  • Driver e impostazioni di sistema preconfigurati per l'hardware NVIDIA
  • Aggiornamenti di sicurezza e funzionalità di manutenzione del sistema
  • Compatibilità con il più ampio ecosistema software NVIDIA

DGX OS segue un calendario di rilascio regolare, con aggiornamenti generalmente forniti due volte all'anno (intorno a febbraio e agosto) e patch di sicurezza aggiuntive tra le versioni principali.

DGX Dashboard#

DGX Spark include un DGX Dashboard integrato che offre:

  • Monitoraggio del sistema in tempo reale: panoramica delle metriche operative attuali del sistema
  • Aggiornamenti del sistema: possibilità di applicare gli aggiornamenti direttamente dal dashboard
  • Impostazioni di sistema: modifica del nome del dispositivo e di altre configurazioni
  • JupyterLab integrato: accesso ai Jupyter Notebook locali per lo sviluppo

NVIDIA DGX management dashboard interface

Accesso al dashboard#

Fai clic sul pulsante "Show Apps" nell'angolo in basso a sinistra del desktop Ubuntu, quindi seleziona "DGX Dashboard" per aprirlo nel browser.

JupyterLab integrato

Il dashboard include un'istanza JupyterLab integrata che crea automaticamente un ambiente virtuale e installa i pacchetti consigliati all'avvio. A ogni account utente viene assegnata una porta dedicata per l'accesso a JupyterLab.

Guida rapida con Docker#

Il modo più veloce per iniziare a usare Ultralytics YOLO26 su NVIDIA DGX Spark è eseguire immagini Docker predefinite. L'immagine NVIDIA ARM64 supporta DGX Spark con DGX OS.

t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --device nvidia.com/gpu=all $t

La richiesta di dispositivi CDI sopra indicata si applica a DGX Spark con DGX OS in esecuzione. Per i carichi di lavoro PyTorch su Jetson AGX Thor, consulta i requisiti di sistema separati e la restrizione di TensorRT nella guida NVIDIA Jetson.

Questa immagine utilizza NVIDIA PyTorch 26.08, CUDA 13.4 e TensorRT 11. Aggiorna il driver host di DGX OS a una versione supportata da NVIDIA PyTorch 26.08 e ricompila i motori TensorRT dopo aver modificato l'immagine o la GPU di destinazione.

Al termine, passa alla sezione Usa TensorRT su NVIDIA DGX Spark.

Inizia con l'installazione nativa#

Per un'installazione nativa senza Docker, segui questi passaggi.

Installare il pacchetto Ultralytics#

Qui installeremo il pacchetto Ultralytics su DGX Spark. Le dipendenze per l'esportazione vengono installate automaticamente la prima volta che esporti un modello, quindi qui è sufficiente il pacchetto di base. Ci concentreremo principalmente sulle esportazioni NVIDIA TensorRT, perché TensorRT garantisce di ottenere le massime prestazioni da DGX Spark.

  1. Aggiornare l'elenco dei pacchetti, installare pip e aggiornarlo all'ultima versione

    sudo apt update
    sudo apt install python3-pip -y
    pip install -U pip
  2. Installare il pacchetto pip ultralytics

    pip install ultralytics
  3. Riavviare il dispositivo

    sudo reboot

Installare PyTorch e Torchvision#

L'installazione di ultralytics descritta sopra installerà Torch e Torchvision. Tuttavia, questi pacchetti installati tramite pip potrebbero non essere completamente ottimizzati per l'architettura ARM64 di DGX Spark con CUDA 13. Pertanto, ti consigliamo di installare le versioni compatibili con CUDA 13:

pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130
Informazioni

Quando esegui PyTorch 2.9.1 su NVIDIA DGX Spark, potresti riscontrare il seguente UserWarning durante l'inizializzazione di CUDA (ad esempio eseguendo yolo checks, yolo predict, ecc.):

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)

Questo avviso può essere ignorato senza problemi. Per risolvere definitivamente il problema, è stata presentata una correzione nel PR di PyTorch #164590, che sarà inclusa nella versione PyTorch 2.10.

Installare onnxruntime-gpu#

Le attuali release di ONNX Runtime GPU forniscono wheel Linux ARM64, inclusa Python 3.12. L'immagine Docker NVIDIA ARM64 installa il pacchetto ufficiale; per le installazioni native di CUDA 13, usa:

pip install onnxruntime-gpu

Usa TensorRT su NVIDIA DGX Spark#

Tra tutti i formati di esportazione dei modelli supportati da Ultralytics, TensorRT offre le migliori prestazioni di inferenza su NVIDIA DGX Spark, rendendolo la nostra scelta principale per le distribuzioni. Per le istruzioni di configurazione e l'uso avanzato, consulta la nostra guida dedicata all'integrazione di TensorRT.

Converti il modello in TensorRT ed esegui l'inferenza#

Il modello YOLO26n in formato PyTorch viene convertito in TensorRT per eseguire l'inferenza con il modello esportato.

Esempio
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")
Nota

Visita la pagina Esportazione per accedere ad argomenti aggiuntivi durante l'esportazione dei modelli in formati diversi.

Benchmark di YOLO11 su NVIDIA DGX Spark#

Il team Ultralytics ha eseguito benchmark di YOLO11 su più formati di modello, misurando velocità e accuratezza: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch. I benchmark sono stati eseguiti su NVIDIA DGX Spark con precisione FP32 e una dimensione predefinita dell'immagine di input pari a 640.

Tabella di confronto dettagliata#

La tabella seguente mostra i risultati dei benchmark per cinque modelli diversi (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) in più formati, indicando stato, dimensione, metrica mAP50-95(B) e tempo di inferenza per ogni combinazione.

Prestazioni
FormatoStatoDimensione su disco (MB)mAP50-95(B)Tempo di inferenza (ms/im)
PyTorch5.40.50712.67
TorchScript10.50.50832.62
ONNX10.20.50745.92
OpenVINO10.40.505814.95
TensorRT (FP32)12.80.50851.95
TensorRT (FP16)7.00.50681.01
TensorRT (INT8)18.60.48801.62
TF SavedModel25.70.507636.39
TF GraphDef10.30.507641.06
TF Lite10.30.507564.36
MNN10.10.507512.14
NCNN10.20.504112.31
ExecuTorch10.20.507527.61

Benchmark eseguito con Ultralytics 8.3.249

Riproduci i nostri risultati#

Per riprodurre i benchmark Ultralytics precedenti su tutti i formati di esportazione, esegui questo codice:

Esempio
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)

Tieni presente che i risultati dei benchmark possono variare in base alla configurazione hardware e software esatta di un sistema, nonché al carico di lavoro del sistema nel momento in cui vengono eseguiti i benchmark. Per ottenere i risultati più affidabili, usa un dataset con un numero elevato di immagini, ad esempio data='coco.yaml' (5000 immagini di validazione).

Best practice per NVIDIA DGX Spark#

Quando usi NVIDIA DGX Spark, segui alcune best practice per ottenere le massime prestazioni durante l'esecuzione di YOLO26.

  1. Monitora le prestazioni del sistema

    Usa gli strumenti di monitoraggio NVIDIA per tenere sotto controllo l'utilizzo di GPU e CPU:

    nvidia-smi
  2. Ottimizza l'utilizzo della memoria

    Con 128 GB di memoria unificata, DGX Spark è in grado di gestire batch e modelli di grandi dimensioni. Valuta di aumentare la dimensione del batch per migliorare il throughput:

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.engine")
    results = model.predict(source="path/to/images", batch=16)
  3. Usa TensorRT con FP16 o INT8

    Per ottenere le migliori prestazioni, esporta i modelli con precisione FP16 o INT8:

    yolo export model=yolo26n.pt format=engine quantize=16 # FP16
    yolo export model=yolo26n.pt format=engine quantize=8  # INT8

Aggiornamenti del sistema (Founders Edition)#

Mantenere aggiornata la tua DGX Spark Founders Edition è fondamentale per le prestazioni e la sicurezza. NVIDIA fornisce due metodi principali per aggiornare il sistema operativo, i driver e il firmware.

Utilizzo di DGX Dashboard (consigliato)#

Il DGX Dashboard è il metodo consigliato per eseguire gli aggiornamenti del sistema, garantendo la compatibilità. Ti consente di:

  • Visualizzare gli aggiornamenti di sistema disponibili
  • Installare patch di sicurezza e aggiornamenti del sistema
  • Gestire gli aggiornamenti dei driver e del firmware NVIDIA

Aggiornamenti manuali del sistema#

Gli utenti avanzati possono eseguire manualmente gli aggiornamenti tramite terminale:

sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo reboot
Attenzione

Assicurati che il sistema sia collegato a una fonte di alimentazione stabile e di aver eseguito il backup dei dati critici prima di effettuare gli aggiornamenti.

Passaggi successivi#

Per ulteriori informazioni e supporto, consulta la documentazione di Ultralytics YOLO26.

FAQ#

  • La distribuzione di Ultralytics YOLO26 su NVIDIA DGX Spark è semplice. Puoi usare l'immagine Docker predefinita per una configurazione rapida oppure installare manualmente i pacchetti necessari. I passaggi dettagliati per ciascun approccio sono disponibili nelle sezioni Avvio rapido con Docker e Inizia con l'installazione nativa.

  • I modelli YOLO26 offrono prestazioni eccellenti su DGX Spark grazie al superchip GB10 Grace Blackwell. Il formato TensorRT offre le migliori prestazioni di inferenza. Consulta la sezione Tabella comparativa dettagliata per risultati specifici dei benchmark tra diverse dimensioni e formati dei modelli.

  • TensorRT è altamente consigliato per la distribuzione dei modelli YOLO26 su DGX Spark grazie alle sue prestazioni ottimali. Accelera l'inferenza sfruttando le funzionalità della GPU Blackwell, garantendo la massima efficienza e velocità. Scopri di più nella sezione Usa TensorRT su NVIDIA DGX Spark.

  • DGX Spark offre fino a 1 PFLOP di prestazioni IA e 128 GB di memoria unificata, rispetto ai 2070 TFLOPS e ai 128 GB di memoria di Jetson AGX Thor. DGX Spark è progettato come supercomputer IA desktop, mentre i dispositivi Jetson sono sistemi embedded ottimizzati per la distribuzione edge.

  • Per i carichi di lavoro PyTorch, ultralytics/ultralytics:latest-nvidia-arm64 supporta DGX Spark con DGX OS e Thor con JetPack 7.1. Il TensorRT 11.2 incluso non supporta JetPack, quindi i flussi di lavoro di TensorRT su Jetson devono utilizzare il runtime TensorRT 10.x supportato per la loro release di JetPack. Vedi i requisiti Docker per Jetson.

Commenti