دليل البدء السريع: NVIDIA DGX Spark مع Ultralytics YOLO26#
يقدم هذا الدليل الشامل شرحاً مفصلاً لنشر نموذج Ultralytics YOLO26 على NVIDIA DGX Spark، الحاسوب العملاق والمكتبي المدمج للذكاء الاصطناعي من NVIDIA. بالإضافة إلى ذلك، يعرض الدليل تقييمات الأداء لإظهار إمكانيات YOLO26 على هذا النظام القوي.
تم اختبار هذا الدليل مع NVIDIA DGX Spark Founders Edition الذي يعمل بنظام DGX OS القائم على Ubuntu. ومن المتوقع أن يعمل مع أحدث إصدارات DGX OS.
ما هو NVIDIA DGX Spark؟#
NVIDIA DGX Spark هو حاسوب فائق الجودة مدمج لسطح المكتب مخصص للذكاء الاصطناعي، يعمل بواسطة الشريحة الفائقة NVIDIA GB10 Grace Blackwell. يوفر أداء حوسبة ذكاء اصطناعي يصل إلى 1 بيتا فلوب (petaFLOP) بدقة FP4، مما يجعله مثاليًا للمطورين والباحثين وعلماء البيانات الذين يحتاجون إلى قدرات ذكاء اصطناعي قوية في شكل سطح مكتب.
Watch: How to Get up to 1000 FPS with Ultralytics YOLO26 on NVIDIA DGX Spark | TensorRT & Batch Inference
المواصفات الرئيسية#
| المواصفات | التفاصيل |
|---|---|
| أداء الذكاء الاصطناعي | ما يصل إلى 1 PFLOP (دقة FP4) |
| GPU | بنية NVIDIA Blackwell مع الجيل الخامس من Tensor Cores، والجيل الرابع من RT Cores |
| CPU | معالج Arm بـ 20 نواة (10 Cortex-X925 + 10 Cortex-A725) |
| الذاكرة | ذاكرة نظام موحدة 128 جيجابايت LPDDR5x، واجهة 256 بت، 4266 ميجاهرتز، نطاق ترددي 273 جيجابايت/ثانية |
| التخزين | 1 تيرابايت أو 4 تيرابايت NVMe M.2 مع تشفير ذاتي |
| الشبكة | 1x RJ-45 (10 جيجابت إيثرنت)، ConnectX-7 Smart NIC، Wi-Fi 7، Bluetooth 5.4 |
| الاتصال | 4x USB Type-C، 1x HDMI 2.1a، صوت متعدد القنوات عبر HDMI |
| معالجة الفيديو | 1x NVENC، 1x NVDEC |
نظام DGX OS#
NVIDIA DGX OS هو توزيعة لينكس مخصصة توفر أساساً مستقراً ومختبراً ومدعوماً لنظام التشغيل لتشغيل تطبيقات الذكاء الاصطناعي، والتعلم الآلي، وتحليلات البيانات على أنظمة DGX. وهي تتضمن ما يلي:
- أساس Linux قوي ومحسّن لأحمال عمل الذكاء الاصطناعي
- برامج تشغيل وإعدادات نظام مهيأة مسبقًا لأجهزة NVIDIA
- تحديثات أمنية وإمكانيات صيانة النظام
- التوافق مع نظام برمجيات NVIDIA الأوسع
يتبع DGX OS جدول إصدارات منتظم مع توفير التحديثات عادةً مرتين سنويًا (حوالي فبراير وأغسطس)، مع توفير تصحيحات أمنية إضافية بين الإصدارات الرئيسية.
لوحة تحكم DGX#
يأتي جهاز DGX Spark مزوداً بنظام مدمج DGX Dashboard والذي يوفر ما يلي:
- مراقبة النظام في الوقت الفعلي: نظرة عامة على مقاييس التشغيل الحالية للنظام
- تحديثات النظام: القدرة على تطبيق التحديثات مباشرة من لوحة التحكم
- إعدادات النظام: تغيير اسم الجهاز وتكوينات أخرى
- JupyterLab متكامل: الوصول إلى Jupyter Notebooks المحلية للتطوير
الوصول إلى لوحة التحكم#
انقر فوق زر "Show Apps" في الزاوية السفلية اليسرى من سطح مكتب Ubuntu، ثم حدد "DGX Dashboard" لفتحه في متصفحك.
تتضمن لوحة التحكم مثيل JupyterLab متكامل ينشئ تلقائيًا بيئة افتراضية ويثبت الحزم الموصى بها عند بدء التشغيل. يتم تعيين منفذ مخصص لكل حساب مستخدم للوصول إلى JupyterLab.
البدء السريع باستخدام Docker#
أسرع طريقة للبدء باستخدام Ultralytics YOLO26 على NVIDIA DGX Spark هي التشغيل باستخدام صور Docker جاهزة. صورة Docker نفسها التي تدعم Jetson AGX Thor (JetPack 7.0) تعمل على DGX Spark مع نظام DGX OS.
t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --device nvidia.com/gpu=all $tطلب جهاز CDI أعلاه ينطبق على DGX Spark الذي يعمل بنظام DGX OS. على Jetson AGX Thor، قم بتشغيل نفس الصورة باستخدام --runtime=nvidia بدلاً من ذلك، كما هو موضح في دليل NVIDIA Jetson.
بعد الانتهاء من ذلك، انتقل مباشرة إلى قسم Use TensorRT on NVIDIA DGX Spark section.
البدء بالتثبيت الأصلي (Native Installation)#
للتثبيت الأصلي بدون Docker، اتبع الخطوات التالية.
تثبيت حزمة Ultralytics#
هنا سنقوم بتثبيت حزمة Ultralytics على DGX Spark مع التبعيات الاختيارية حتى نتمكن من تصدير نماذج PyTorch إلى صيغ مختلفة أخرى. سنركز بشكل أساسي على NVIDIA TensorRT exports لأن TensorRT سيضمن لنا الحصول على أقصى أداء ممكن من DGX Spark.
-
تحديث قائمة الحزم، وتثبيت pip والترقية إلى الأحدث
sudo apt update sudo apt install python3-pip -y pip install -U pip -
تثبيت حزمة pip لـ
ultralyticsمع التبعيات الاختياريةpip install ultralytics[export] -
إعادة تشغيل الجهاز
sudo reboot
تثبيت PyTorch وTorchvision#
تثبيت ultralytics أعلاه سيقوم بتثبيت Torch و Torchvision. ومع ذلك، قد لا تكون هذه الحزم المثبتة عبر pip محسنة بالكامل لبنية ARM64 الخاصة بـ DGX Spark مع CUDA 13. لذلك، نوصي بتثبيت الإصدارات المتوافقة مع CUDA 13:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130عند تشغيل PyTorch 2.9.1 على NVIDIA DGX Spark، قد تواجه التحذير 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 رقم #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استخدام TensorRT على NVIDIA DGX Spark#
من بين جميع تنسيقات تصدير النماذج المدعومة بواسطة Ultralytics، توفر TensorRT أعلى أداء للاستدلال على NVIDIA DGX Spark، مما يجعلها توصيتنا الأولى لعمليات النشر. للحصول على تعليمات الإعداد والاستخدام المتقدم، راجع دليل تكامل TensorRT المخصص.
تحويل النموذج إلى TensorRT وتشغيل الاستنتاج#
تم تحويل نموذج YOLO26n بتنسيق PyTorch إلى 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")تفضل بزيارة صفحة التصدير للوصول إلى الوسائط الإضافية عند تصدير النماذج إلى تنسيقات نماذج مختلفة
معايير أداء NVIDIA DGX Spark YOLO11#
تم تشغيل تقييمات أداء YOLO11 بواسطة فريق Ultralytics على تنسيقات نماذج متعددة تقيس السرعة والدقة: PyTorch، TorchScript، ONNX، OpenVINO، TensorRT، TF SavedModel، TF GraphDef، TF Lite، MNN، NCNN، ExecuTorch. تم تشغيل تقييمات الأداء على NVIDIA DGX Spark بدقة FP32 precision مع حجم صورة إدخال افتراضي يبلغ 640.
جدول مقارنة مفصل#
يمثل الجدول أدناه نتائج المعايير لخمسة نماذج مختلفة (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) عبر تنسيقات متعددة، مما يعطينا الحالة والحجم ومقياس mAP50-95(B) ووقت الاستدلال لكل تركيبة.
| التنسيق | الحالة | الحجم على القرص (ميجابايت) | mAP50-95(B) | وقت الاستدلال (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 |
تمت مقارنة الأداء باستخدام 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)لاحظ أن نتائج مقارنة الأداء قد تختلف بناءً على التكوين الدقيق للأجهزة والبرامج للنظام، بالإضافة إلى عبء العمل الحالي للنظام في وقت تشغيل مقارنات الأداء. للحصول على أكثر النتائج موثوقية، استخدم مجموعة بيانات تحتوي على عدد كبير من الصور، على سبيل المثال، data='coco.yaml' (5000 صورة للتحقق).
أفضل الممارسات لـ NVIDIA DGX Spark#
عند استخدام NVIDIA DGX Spark، هناك بعض أفضل الممارسات التي يجب اتباعها لتمكين أقصى أداء عند تشغيل YOLO26.
-
مراقبة أداء النظام
استخدم أدوات المراقبة من NVIDIA لتتبع استخدام GPU و CPU:
nvidia-smi -
تحسين استخدام الذاكرة
مع ذاكرة موحدة بسعة 128 جيجابايت، يمكن لـ DGX Spark التعامل مع أحجام دفعات ونماذج كبيرة. فكر في زيادة حجم الدفعة لتحسين الإنتاجية:
from ultralytics import YOLO model = YOLO("yolo26n.engine") results = model.predict(source="path/to/images", batch=16) -
استخدم TensorRT مع FP16 أو INT8
للحصول على أفضل أداء، قم بتصدير النماذج بدقة FP16 أو INT8:
yolo export model=yolo26n.pt format=engine quantize=16 # FP16 yolo export model=yolo26n.pt format=engine quantize=8 # INT8
تحديثات النظام (إصدار المؤسسين Founders Edition)#
يعد الحفاظ على تحديث جهاز DGX Spark Founders Edition أمراً بالغ الأهمية للأداء والأمان. توفر NVIDIA طريقتين أساسيتين لتحديث نظام التشغيل وبرامج التشغيل والبرامج الثابتة.
استخدام لوحة تحكم DGX (موصى به)#
تعد DGX Dashboard الطريقة الموصى بها لإجراء تحديثات النظام مع ضمان التوافق. وهي تتيح لك ما يلي:
- عرض تحديثات النظام المتاحة
- تثبيت تصحيحات الأمان وتحديثات النظام
- إدارة تحديثات برنامج تشغيل NVIDIA والبرامج الثابتة
تحديثات النظام اليدوية#
للمستخدمين المتقدمين، يمكن إجراء التحديثات يدوياً عبر الطرفية (terminal):
sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo rebootتأكد من توصيل نظامك بمصدر طاقة مستقر وأنك قمت بنسخ البيانات المهمة احتياطياً قبل إجراء التحديثات.
الخطوات التالية#
لمزيد من التعلم والدعم، راجع وثائق Ultralytics YOLO26.
الأسئلة الشائعة#
يعد نشر Ultralytics YOLO26 على NVIDIA DGX Spark أمراً مباشراً. يمكنك استخدام صورة Docker الجاهزة للإعداد السريع أو تثبيت الحزم المطلوبة يدويًا. يمكن العثور على الخطوات التفصيلية لكل نهج في قسمي Quick Start with Docker و Start with Native Installation.
تقدم نماذج YOLO26 أداءً ممتازاً على DGX Spark بفضل شرائح GB10 Grace Blackwell Superchip. يوفر تنسيق TensorRT أفضل أداء للاستدلال. راجع قسم Detailed Comparison Table لمعرفة نتائج تقييم الأداء المحددة عبر أحجام النماذج والتنسيقات المختلفة.
يوصى بشدة باستخدام TensorRT لنشر نماذج YOLO26 على DGX Spark نظراً لأدائه الأمثل. فهو يسرع الاستدلال من خلال الاستفادة من قدرات معالج رسومات Blackwell، مما يضمن أقصى قدر من الكفاءة والسرعة. تعرف على المزيد في قسم Use TensorRT on NVIDIA DGX Spark.
يوفر DGX Spark ما يصل إلى 1 PFLOP من أداء الذكاء الاصطناعي و128 جيجابايت من الذاكرة الموحدة، مقارنة بـ 2070 TFLOPS و128 جيجابايت من الذاكرة في Jetson AGX Thor. تم تصميم DGX Spark كحاسوب فائق للذكاء الاصطناعي مكتبي، بينما تعد أجهزة Jetson أنظمة مدمجة محسنة للنشر على الحافة (edge).
نعم! صورة Docker
ultralytics/ultralytics:latest-nvidia-arm64تدعم كل من NVIDIA DGX Spark (مع نظام DGX OS) و Jetson AGX Thor (مع JetPack 7.0)، حيث يستخدم كلاهما بنية ARM64 مع CUDA 13 وحزم برمجية متشابهة.