Guida rapida: NVIDIA Spark con Ultralytics YOLO11
Questa guida completa fornisce una procedura dettagliata per l'implementazione Ultralytics YOLO11 NVIDIA Spark, il supercomputer AI desktop compatto NVIDIA. Inoltre, presenta benchmark delle prestazioni per dimostrare le capacità di YOLO11 questo potente sistema.

Nota
Questa guida è stata testata con NVIDIA Spark Founders Edition con sistema operativo DGX basato su Ubuntu. Dovrebbe funzionare con le ultime versioni del sistema operativo DGX.
Che cos'è NVIDIA Spark?
NVIDIA Spark è un supercomputer AI desktop compatto basato sul superchip NVIDIA Grace Blackwell. Offre fino a 1 petaFLOP di prestazioni di calcolo AI con precisione FP4, rendendolo ideale per sviluppatori, ricercatori e data scientist che necessitano di potenti funzionalità AI in un formato desktop.
Specifiche chiave
| Specifiche | Dettagli |
|---|---|
| Prestazioni AI | Fino a 1 PFLOP (FP4) |
| GPU | Architettura NVIDIA con Tensor di quinta generazione e RT Core di quarta generazione |
| CPU | Processore Arm a 20 core (10 Cortex-X925 + 10 Cortex-A725) |
| Memoria | Memoria di sistema unificata LPDDR5x da 128 GB, interfaccia a 256 bit, 4266 MHz, larghezza di banda di 273 GB/s |
| Stoccaggio | 1 TB o 4 TB NVMe M.2 con crittografia automatica |
| Rete | 1x RJ-45 (10 GbE), ConnectX-7 Smart NIC, Wi-Fi 7, Bluetooth 5.4 |
| Connettività | 4 porte USB Type-C, 1 porta HDMI 2.1a, audio multicanale HDMI |
| Elaborazione video | 1x NVENC, 1x NVDEC |
DGX OS
NVIDIA OS è una distribuzione Linux personalizzata che fornisce una base operativa stabile, testata e supportata per l'esecuzione di applicazioni di intelligenza artificiale, machine learning e analisi sui sistemi DGX. Include:
- Una solida base Linux ottimizzata per i carichi di lavoro AI
- Driver e impostazioni di sistema preconfigurati per NVIDIA
- Aggiornamenti di sicurezza e funzionalità di manutenzione del sistema
- Compatibilità con l'ecosistema NVIDIA più ampio
DGX OS segue un programma di rilascio regolare con aggiornamenti forniti in genere due volte all'anno (intorno a febbraio e agosto), con patch di sicurezza aggiuntive fornite tra le versioni principali.
Pannello di controllo DGX
DGX Spark è dotato di un pannello di controllo DGX integrato che offre:
- Monitoraggio del sistema in tempo reale: panoramica delle metriche operative attuali del sistema
- Aggiornamenti di sistema: possibilità di applicare gli aggiornamenti direttamente dalla dashboard
- Impostazioni di sistema: modifica il nome del dispositivo e altre configurazioni
- JupyterLab integrato: accedi ai notebook Jupyter locali per lo sviluppo

Accesso alla dashboard
Fai clic sul pulsante "Mostra app" nell'angolo in basso a sinistra del desktop Ubuntu, quindi seleziona "DGX Dashboard" per aprirlo nel browser.
# Open an SSH tunnel
ssh -L 11000:localhost:11000 <username>@<IP or spark-abcd.local>
# Then open in browser
# http://localhost:11000
Dopo aver effettuato la connessione con NVIDIA , fare clic sul pulsante "DGX Dashboard" per aprire la dashboard all'indirizzo http://localhost:11000.
JupyterLab integrato
La 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 utilizzare Ultralytics YOLO11 NVIDIA Spark è eseguire immagini Docker predefinite. La stessa immagine Docker che supporta Jetson AGX Thor (JetPack 7.0) funziona su 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 $t
Una volta fatto ciò, passa alla sezione Utilizzo TensorRT NVIDIA Spark.
Inizia con l'installazione nativa
Per un'installazione nativa senza Docker, segui questi passaggi.
Installa il pacchetto Ultralytics
Qui installeremo Ultralytics su DGX Spark con dipendenze opzionali in modo da poter esportare il PyTorch in altri formati diversi. Ci concentreremo principalmente sulle TensorRT NVIDIA TensorRT perché TensorRT ci TensorRT di ottenere le massime prestazioni da DGX Spark.
Aggiorna l'elenco dei pacchetti, installa pip ed esegui l'aggiornamento all'ultima versione
sudo apt update sudo apt install python3-pip -y pip install -U pipInstalla
ultralyticspacchetto pip con dipendenze opzionalipip install ultralytics[export]Riavvia il dispositivo
sudo reboot
Installa PyTorch e Torchvision
ultralytics sopra indicata installerà Torch Torchvision. Tuttavia, questi pacchetti installati tramite pip potrebbero non essere completamente ottimizzati per l'architettura ARM64 di DGX Spark con CUDA . Pertanto, si consiglia di installare le versioni compatibili CUDA :
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130
Info
Quando si esegue PyTorch .9.1 su NVIDIA Spark, è possibile che si verifichi il seguente problema UserWarning durante l'inizializzazione CUDA ad esempio durante l'esecuzione di 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 tranquillamente ignorato. Per risolvere definitivamente il problema, è stata inviata una correzione in PyTorch #164590 che sarà inclusa nella versione PyTorch .10.
Installa onnxruntime-gpu
Il onnxruntime-gpu package ospitato in PyPI non ha aarch64 binari per sistemi ARM64. Quindi dobbiamo installare manualmente questo pacchetto. Questo pacchetto è necessario per alcune esportazioni.
Qui scaricheremo e installeremo onnxruntime-gpu 1.24.0 con Python3.12 supporto.
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whl
Utilizza TensorRT NVIDIA Spark
Tra tutti i formati di esportazione dei modelli supportati da Ultralytics, TensorRT le migliori prestazioni di inferenza su NVIDIA Spark, rendendolo la nostra prima scelta per le implementazioni. Per le istruzioni di configurazione e l'utilizzo avanzato, consulta la nostra guida dedicata TensorRT .
Converti il modello in TensorRT ed esegui l'inferenza
Il modello YOLO11n in formato PyTorch viene convertito in TensorRT per eseguire l'inferenza con il modello esportato.
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model to TensorRT
model.export(format="engine") # creates 'yolo11n.engine'
# Load the exported TensorRT model
trt_model = YOLO("yolo11n.engine")
# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TensorRT format
yolo export model=yolo11n.pt format=engine # creates 'yolo11n.engine'
# Run inference with the exported model
yolo predict model=yolo11n.engine source='https://ultralytics.com/images/bus.jpg'
Nota
Visita la pagina di esportazione per accedere ad argomenti aggiuntivi durante l'esportazione di modelli in diversi formati
YOLO11 NVIDIA Spark YOLO11
YOLO11 sono stati eseguiti dal Ultralytics su diversi formati di modelli, misurandone la velocità e la precisione: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF , MNN, NCNN, ExecuTorch. I benchmark sono stati eseguiti su NVIDIA Spark con precisione FP32 e dimensione predefinita dell'immagine di input pari a 640.
Tabella comparativa dettagliata
La tabella sottostante riporta i risultati dei benchmark per cinque diversi modelli (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) in diversi formati, fornendo lo stato, le dimensioni, la metrica mAP50(B) e il tempo di inferenza per ciascuna combinazione.
Prestazioni
| Formato | Stato | Dimensione su disco (MB) | mAP50-95(B) | Tempo di inferenza (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 |
| Formato | Stato | Dimensione su disco (MB) | mAP50-95(B) | Tempo di inferenza (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 18.4 | 0.5767 | 5.38 |
| TorchScript | ✅ | 36.5 | 0.5781 | 5.48 |
| ONNX | ✅ | 36.3 | 0.5784 | 8.17 |
| OpenVINO | ✅ | 36.4 | 0.5809 | 27.12 |
| TensorRT (FP32) | ✅ | 39.8 | 0.5783 | 3.59 |
| TensorRT (FP16) | ✅ | 20.1 | 0.5800 | 1.85 |
| TensorRT (INT8) | ✅ | 17.5 | 0.5664 | 1.88 |
| TF SavedModel | ✅ | 90.8 | 0.5782 | 66.63 |
| TF GraphDef | ✅ | 36.3 | 0.5782 | 71.67 |
| TF Lite | ✅ | 36.3 | 0.5782 | 187.36 |
| MNN | ✅ | 36.2 | 0.5775 | 27.05 |
| NCNN | ✅ | 36.2 | 0.5806 | 26.26 |
| ExecuTorch | ✅ | 36.2 | 0.5782 | 54.73 |
| Formato | Stato | Dimensione su disco (MB) | mAP50-95(B) | Tempo di inferenza (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 38.8 | 0.6254 | 11.14 |
| TorchScript | ✅ | 77.3 | 0.6304 | 12.00 |
| ONNX | ✅ | 76.9 | 0.6304 | 13.83 |
| OpenVINO | ✅ | 77.1 | 0.6284 | 62.44 |
| TensorRT (FP32) | ✅ | 79.9 | 0.6305 | 6.96 |
| TensorRT (FP16) | ✅ | 40.6 | 0.6313 | 3.14 |
| TensorRT (INT8) | ✅ | 26.6 | 0.6204 | 3.30 |
| TF SavedModel | ✅ | 192.4 | 0.6306 | 139.85 |
| TF GraphDef | ✅ | 76.9 | 0.6306 | 146.76 |
| TF Lite | ✅ | 76.9 | 0.6306 | 568.18 |
| MNN | ✅ | 76.8 | 0.6306 | 67.67 |
| NCNN | ✅ | 76.8 | 0.6308 | 60.49 |
| ExecuTorch | ✅ | 76.9 | 0.6306 | 120.37 |
| Formato | Stato | Dimensione su disco (MB) | mAP50-95(B) | Tempo di inferenza (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 49.0 | 0.6366 | 13.95 |
| TorchScript | ✅ | 97.6 | 0.6399 | 15.67 |
| ONNX | ✅ | 97.0 | 0.6399 | 16.62 |
| OpenVINO | ✅ | 97.3 | 0.6377 | 78.80 |
| TensorRT (FP32) | ✅ | 99.2 | 0.6407 | 8.86 |
| TensorRT (FP16) | ✅ | 50.8 | 0.6350 | 3.85 |
| TensorRT (INT8) | ✅ | 32.5 | 0.6224 | 4.52 |
| TF SavedModel | ✅ | 242.7 | 0.6409 | 187.45 |
| TF GraphDef | ✅ | 97.0 | 0.6409 | 193.92 |
| TF Lite | ✅ | 97.0 | 0.6409 | 728.61 |
| MNN | ✅ | 96.9 | 0.6369 | 85.21 |
| NCNN | ✅ | 96.9 | 0.6373 | 77.62 |
| ExecuTorch | ✅ | 97.0 | 0.6409 | 153.56 |
| Formato | Stato | Dimensione su disco (MB) | mAP50-95(B) | Tempo di inferenza (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 109.3 | 0.6992 | 23.19 |
| TorchScript | ✅ | 218.1 | 0.6900 | 25.75 |
| ONNX | ✅ | 217.5 | 0.6900 | 27.43 |
| OpenVINO | ✅ | 217.8 | 0.6872 | 149.44 |
| TensorRT (FP32) | ✅ | 222.7 | 0.6902 | 13.87 |
| TensorRT (FP16) | ✅ | 111.1 | 0.6883 | 6.19 |
| TensorRT (INT8) | ✅ | 62.9 | 0.6793 | 6.62 |
| TF SavedModel | ✅ | 543.9 | 0.6900 | 335.10 |
| TF GraphDef | ✅ | 217.5 | 0.6900 | 348.86 |
| TF Lite | ✅ | 217.5 | 0.6900 | 1578.66 |
| MNN | ✅ | 217.3 | 0.6874 | 168.95 |
| NCNN | ✅ | 217.4 | 0.6901 | 132.13 |
| ExecuTorch | ✅ | 217.4 | 0.6900 | 297.17 |
Confrontato con Ultralytics .3.249
Riproduci i nostri risultati
Per riprodurre i benchmark Ultralytics di cui sopra su tutti i formati di esportazione, esegui questo codice:
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml", imgsz=640)
# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all export formats
yolo benchmark model=yolo11n.pt data=coco128.yaml imgsz=640
Si noti che i risultati dei benchmark possono variare in base alla configurazione hardware e software esatta di un sistema, nonché al carico di lavoro corrente del sistema al momento dell'esecuzione dei benchmark. Per ottenere risultati più affidabili, utilizzare un set di dati con un numero elevato di immagini, ad esempio data='coco.yaml' (5000 immagini val).
Best practice per NVIDIA Spark
Quando si utilizza NVIDIA Spark, è necessario seguire alcune best practice per ottenere le massime prestazioni con YOLO11.
Monitorare le prestazioni del sistema
Utilizza gli strumenti di monitoraggio NVIDIA per track CPU GPU CPU :
nvidia-smiOttimizza l'utilizzo della memoria
Con 128 GB di memoria unificata, DGX Spark è in grado di gestire batch e modelli di grandi dimensioni. Valuta la possibilità di aumentare la dimensione dei batch per migliorare la produttività:
from ultralytics import YOLO model = YOLO("yolo11n.engine") results = model.predict(source="path/to/images", batch=16)Utilizza TensorRT FP16 o INT8
Per ottenere prestazioni ottimali, esportare modelli con precisione FP16 o INT8:
yolo export model=yolo11n.pt format=engine half=True # FP16 yolo export model=yolo11n.pt format=engine int8=True # INT8
Aggiornamenti di sistema (Founders Edition)
Mantenere aggiornato DGX Spark Founders Edition è fondamentale per garantire prestazioni e sicurezza ottimali. NVIDIA due metodi principali per aggiornare il sistema operativo, i driver e il firmware del sistema.
Utilizzo della dashboard DGX (consigliato)
Il DGX Dashboard è il metodo consigliato per eseguire gli aggiornamenti di sistema garantendo la compatibilità. Consente di:
- Visualizza gli aggiornamenti di sistema disponibili
- Installare patch di sicurezza e aggiornamenti di sistema
- Gestisci gli aggiornamenti NVIDIA e del firmware NVIDIA
Aggiornamenti manuali del sistema
Per gli utenti esperti, gli aggiornamenti possono essere eseguiti manualmente tramite terminale:
sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo reboot
Attenzione
Assicurati che il tuo sistema sia collegato a una fonte di alimentazione stabile e che tu abbia eseguito il backup dei dati critici prima di eseguire gli aggiornamenti.
Prossimi passi
Per ulteriori informazioni e assistenza, consultare la YOLO11 Ultralytics YOLO11 .
FAQ
Come posso implementare Ultralytics YOLO11 NVIDIA Spark?
L'implementazione Ultralytics YOLO11 NVIDIA Spark è molto semplice. È possibile utilizzare l'immagine Docker predefinita per una configurazione rapida oppure installare manualmente i pacchetti richiesti. I passaggi dettagliati per ciascun approccio sono disponibili nelle sezioni Avvio rapido con Docker e Avvio con installazione nativa.
Quali prestazioni posso aspettarmi da YOLO11 NVIDIA Spark?
YOLO11 offrono prestazioni eccellenti su DGX Spark grazie al superchip GB10 Grace Blackwell. Il TensorRT garantisce le migliori prestazioni di inferenza. Consulta la sezione Tabella comparativa dettagliata per i risultati specifici dei benchmark relativi a modelli di diverse dimensioni e formati.
Perché dovrei usare TensorRT YOLO11 DGX Spark?
TensorRT altamente raccomandato per l'implementazione YOLO11 su DGX Spark grazie alle sue prestazioni ottimali. Accelera l'inferenza sfruttando le GPU Blackwell, garantendo la massima efficienza e velocità. Per ulteriori informazioni, consulta la sezione Utilizzo TensorRT NVIDIA Spark.
Come si comporta DGX Spark rispetto ai dispositivi Jetson per YOLO11?
DGX Spark offre una potenza di calcolo significativamente superiore rispetto ai dispositivi Jetson, con prestazioni AI fino a 1 PFLOP 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 AI desktop, mentre i dispositivi Jetson sono sistemi integrati ottimizzati per l'implementazione edge.
Posso usare la stessa immagine Docker per DGX Spark e Jetson AGX Thor?
Sì! Il ultralytics/ultralytics:latest-nvidia-arm64 L'immagine Docker supporta sia NVIDIA Spark (con DGX OS) che Jetson AGX Thor (con JetPack 7.0), poiché entrambi utilizzano l'architettura ARM64 con CUDA e stack software simili.