跳转至内容

快速入门指南:NVIDIA DGX Spark与Ultralytics YOLO26

这份综合指南提供了在NVIDIA DGX Spark(NVIDIA的紧凑型桌面AI超级计算机)上部署Ultralytics YOLO26的详细步骤。此外,它还展示了性能基准,以证明YOLO26在该强大系统上的能力。

NVIDIA Spark AI工作站概述

注意

本指南已在运行基于 Ubuntu 的 DGX OS 的 NVIDIA DGX Spark 创始人版上进行测试。预计它将与最新的 DGX OS 版本兼容。

什么是 NVIDIA DGX Spark?

NVIDIA DGX Spark 是一款紧凑型桌面 AI 超级计算机,由 NVIDIA GB10 Grace Blackwell 超级芯片提供支持。它提供高达 1 petaFLOP 的 FP4 精度 AI 计算性能,使其成为需要桌面级强大 AI 功能的开发人员、研究人员和数据科学家的理想选择。

主要规格

规格详情
AI 性能高达 1 PFLOP (FP4)
GPUNVIDIA Blackwell 架构,配备第五代 Tensor Cores 和第四代 RT Cores
CPU20 核 Arm 处理器(10 个 Cortex-X925 + 10 个 Cortex-A725)
内存128 GB LPDDR5x 统一系统内存,256 位接口,4266 MHz,273 GB/秒 带宽
存储1 TB 或 4 TB NVMe M.2,带自加密功能
网络1个RJ-45 (10 GbE) 接口,ConnectX-7智能网卡,Wi-Fi 7,蓝牙5.4
连接性4个USB Type-C接口,1个HDMI 2.1a接口,HDMI多声道音频
视频处理1个NVENC,1个NVDEC

DGX OS

NVIDIA DGX OS 是一个定制的Linux发行版,为在DGX系统上运行AI、机器学习和分析应用提供了稳定、经过测试和受支持的操作系统基础。它包括:

  • 为AI工作负载优化的强大Linux基础
  • NVIDIA硬件的预配置驱动程序和系统设置
  • 安全更新和系统维护功能
  • 与更广泛的NVIDIA软件生态系统兼容

DGX OS遵循定期发布计划,更新通常每年提供两次(大约在2月和8月),并在主要版本之间提供额外的安全补丁。

DGX 控制面板

DGX Spark内置了DGX Dashboard,提供:

  • 实时系统监控:系统当前运行指标概览
  • 系统更新:能够直接从仪表板应用更新
  • 系统设置:更改设备名称及其他配置
  • 集成JupyterLab:访问本地Jupyter Notebook进行开发

NVIDIA 管理仪表板界面

访问仪表板

点击Ubuntu桌面左下角的“显示应用程序”按钮,然后选择“DGX Dashboard”以在浏览器中打开它。

# Open an SSH tunnel
ssh -L 11000:localhost:11000 username@spark-abcd.local

# Then open in browser
# http://localhost:11000

连接NVIDIA Sync后,点击“DGX Dashboard”按钮以打开仪表板,地址为 http://localhost:11000.

集成JupyterLab

仪表板包含一个集成的JupyterLab实例,该实例在启动时会自动创建一个虚拟环境并安装推荐的软件包。每个用户账户都被分配一个专用的端口用于JupyterLab访问。

Docker 快速入门

在NVIDIA DGX Spark上开始使用Ultralytics YOLO26的最快方法是运行预构建的Docker镜像。支持Jetson AGX Thor (JetPack 7.0) 的相同Docker镜像可在运行DGX OS的DGX Spark上工作。

t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia --gpus all $t

完成此操作后,请跳至在 NVIDIA DGX Spark 上使用 TensorRT 部分

本地安装入门

对于不使用 Docker 的原生安装,请遵循以下步骤。

安装 Ultralytics 软件包

在此,我们将在 DGX Spark 上安装带有可选依赖项的 Ultralytics 包,以便我们将 PyTorch 模型导出为其他不同格式。我们将主要关注 NVIDIA TensorRT 导出,因为 TensorRT 将确保我们能从 DGX Spark 中获得最大性能。

  1. 更新软件包列表,安装 pip 并升级到最新版本

    sudo apt update
    sudo apt install python3-pip -y
    pip install -U pip
    
  2. 安装 ultralytics 带有可选依赖项的 pip 软件包

    pip install ultralytics[export]
    
  3. 重新启动设备

    sudo reboot
    

安装 PyTorch 和 Torchvision

上述 Ultralytics 安装将安装 Torch 和 Torchvision。然而,通过 pip 安装的这些包可能未针对 DGX Spark 的 ARM64 架构和 CUDA 13 进行完全优化。因此,我们建议安装 CUDA 13 兼容版本:

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

信息

在 NVIDIA DGX Spark 上运行 PyTorch 2.9.1 时,您可能会遇到以下情况 UserWarning 初始化 CUDA 时(例如运行 yolo checks, yolo predict等):

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)

此警告可以安全忽略。要永久解决此问题,PyTorch PR #164590 中已提交了一个修复程序,该修复程序将包含在 PyTorch 2.10 版本中。

安装 onnxruntime-gpu

字段 onnxruntime-gpu 托管在PyPI上的包不包含 aarch64 适用于 ARM64 系统的二进制文件。因此我们需要手动安装此包。此包是某些导出所必需的。

在此我们将下载并安装 onnxruntime-gpu 1.24.0 使用 Python3.12 支持。

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whl

在 NVIDIA DGX Spark 上使用 TensorRT

在 Ultralytics 支持的所有模型导出格式中,TensorRT 在 NVIDIA DGX Spark 上提供最高的推理性能,使其成为我们部署的首选推荐。有关设置说明和高级用法,请参阅我们的 专用 TensorRT 集成指南

将模型转换为 TensorRT 并运行推理

PyTorch格式的YOLO26n模型被转换为TensorRT,以使用导出的模型运行推理。

示例

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")
# Export a YOLO26n PyTorch model to TensorRT format
yolo export model=yolo26n.pt format=engine # creates 'yolo26n.engine'

# Run inference with the exported model
yolo predict model=yolo26n.engine source='https://ultralytics.com/images/bus.jpg'

注意

访问导出页面以访问将模型导出为不同模型格式时的其他参数

NVIDIA DGX Spark YOLO11 基准测试

Ultralytics 团队对多种模型格式进行了 YOLO11 基准测试,衡量了速度和 准确性:PyTorch、TorchScript、ONNX、OpenVINO、TensorRT、TF SavedModel、TF GraphDef、TF Lite、MNN、NCNN、ExecuTorch。基准测试在 NVIDIA DGX Spark 上以 FP32 精度 运行,默认输入图像大小为 640。

详细对比表

下表显示了五种不同模型(YOLO11n、YOLO11s、YOLO11m、YOLO11l、YOLO11x)跨多种格式的基准测试结果,为我们提供了每种组合的状态、大小、mAP50-95(B) 指标和推理时间。

性能

格式状态磁盘占用空间 (MB)mAP50-95(B)推理时间 (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
格式状态磁盘占用空间 (MB)mAP50-95(B)推理时间 (ms/im)
PyTorch18.40.57675.38
TorchScript36.50.57815.48
ONNX36.30.57848.17
OpenVINO36.40.580927.12
TensorRT (FP32)39.80.57833.59
TensorRT (FP16)20.10.58001.85
TensorRT (INT8)17.50.56641.88
TF SavedModel90.80.578266.63
TF GraphDef36.30.578271.67
TF Lite36.30.5782187.36
MNN36.20.577527.05
NCNN36.20.580626.26
ExecuTorch36.20.578254.73
格式状态磁盘占用空间 (MB)mAP50-95(B)推理时间 (ms/im)
PyTorch38.80.625411.14
TorchScript77.30.630412.00
ONNX76.90.630413.83
OpenVINO77.10.628462.44
TensorRT (FP32)79.90.63056.96
TensorRT (FP16)40.60.63133.14
TensorRT (INT8)26.60.62043.30
TF SavedModel192.40.6306139.85
TF GraphDef76.90.6306146.76
TF Lite76.90.6306568.18
MNN76.80.630667.67
NCNN76.80.630860.49
ExecuTorch76.90.6306120.37
格式状态磁盘占用空间 (MB)mAP50-95(B)推理时间 (ms/im)
PyTorch49.00.636613.95
TorchScript97.60.639915.67
ONNX97.00.639916.62
OpenVINO97.30.637778.80
TensorRT (FP32)99.20.64078.86
TensorRT (FP16)50.80.63503.85
TensorRT (INT8)32.50.62244.52
TF SavedModel242.70.6409187.45
TF GraphDef97.00.6409193.92
TF Lite97.00.6409728.61
MNN96.90.636985.21
NCNN96.90.637377.62
ExecuTorch97.00.6409153.56
格式状态磁盘占用空间 (MB)mAP50-95(B)推理时间 (ms/im)
PyTorch109.30.699223.19
TorchScript218.10.690025.75
ONNX217.50.690027.43
OpenVINO217.80.6872149.44
TensorRT (FP32)222.70.690213.87
TensorRT (FP16)111.10.68836.19
TensorRT (INT8)62.90.67936.62
TF SavedModel543.90.6900335.10
TF GraphDef217.50.6900348.86
TF Lite217.50.69001578.66
MNN217.30.6874168.95
NCNN217.40.6901132.13
ExecuTorch217.40.6900297.17

使用 Ultralytics 8.3.249 进行基准测试

复现我们的结果

要在所有导出格式上重现上述 Ultralytics 基准测试,请运行以下代码:

示例

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)
# Benchmark YOLO26n speed and accuracy on the COCO128 dataset for all export formats
yolo benchmark model=yolo26n.pt data=coco128.yaml imgsz=640

请注意,基准测试结果可能因系统的具体硬件和软件配置而异,也可能因运行基准测试时系统的当前工作负载而异。为了获得最可靠的结果,请使用包含大量图像的数据集,例如: data='coco.yaml' (5000 张验证图像)。

NVIDIA DGX Spark 的最佳实践

在使用NVIDIA DGX Spark时,有一些最佳实践需要遵循,以便在运行YOLO26时实现最大性能。

  1. 监控系统性能

    使用 NVIDIA 的监控工具来 track GPU 和 CPU 利用率:

    nvidia-smi
    
  2. 优化内存使用

    凭借 128GB 统一内存,DGX Spark 可以处理大批量大小和模型。考虑增加批量大小以提高吞吐量:

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.engine")
    results = model.predict(source="path/to/images", batch=16)
    
  3. 使用 TensorRT 配合 FP16 或 INT8

    为获得最佳性能,请以 FP16 或 INT8 精度导出模型:

    yolo export model=yolo26n.pt format=engine half=True # FP16
    yolo export model=yolo26n.pt format=engine int8=True # INT8
    

系统更新(创始人版)

使您的 DGX Spark Founders Edition 保持最新对于性能和安全性至关重要。NVIDIA 提供了两种主要方法来更新系统操作系统、驱动程序和固件。

DGX Dashboard 是执行系统更新并确保兼容性的推荐方式。它允许您:

  • 查看可用的系统更新
  • 安装安全补丁和系统更新
  • 管理 NVIDIA 驱动程序和固件更新

手动系统更新

对于高级用户,可以通过终端手动执行更新:

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

警告

在执行更新之前,请确保您的系统连接到稳定的电源,并且您已备份关键数据。

下一步

如需进一步学习和支持,请参阅Ultralytics YOLO26文档

常见问题

我如何将Ultralytics YOLO26部署到NVIDIA DGX Spark上?

在NVIDIA DGX Spark上部署Ultralytics YOLO26非常简单。您可以使用预构建的Docker镜像进行快速设置,或手动安装所需的软件包。每种方法的详细步骤可在使用Docker快速入门本机安装入门部分找到。

我能从NVIDIA DGX Spark上的YOLO26获得怎样的性能?

得益于GB10 Grace Blackwell超级芯片,YOLO26模型在DGX Spark上提供了卓越的性能。TensorRT格式提供最佳推理性能。请查看详细比较表部分,获取针对不同模型尺寸和格式的具体基准测试结果。

为什么我应该在DGX Spark上为YOLO26使用TensorRT?

强烈推荐使用TensorRT在DGX Spark上部署YOLO26模型,因为它具有最佳性能。它通过利用Blackwell GPU的能力来加速推理,确保最大效率和速度。在在NVIDIA DGX Spark上使用TensorRT部分了解更多信息。

DGX Spark与Jetson设备相比,YOLO26的表现如何?

DGX Spark提供比Jetson设备显著更强的计算能力,AI性能高达1 PFLOP,并配备128GB统一内存,而Jetson AGX Thor则为2070 TFLOPS和128GB内存。DGX Spark被设计为桌面AI超级计算机,而Jetson设备则是针对边缘部署优化的嵌入式系统。

DGX Spark 和 Jetson AGX Thor 可以使用相同的 Docker 镜像吗?

是的!该 ultralytics/ultralytics:latest-nvidia-arm64 Docker 镜像支持 NVIDIA DGX Spark(搭载 DGX OS)和 Jetson AGX Thor(搭载 JetPack 7.0),因为两者都使用 ARM64 架构、CUDA 13 和类似的软件栈。



📅 创建于 21 天前 ✏️ 更新于 9 天前
glenn-jocherlakshanthadonuralpszr

评论