تخطي إلى المحتوى

دليل البدء السريع: NVIDIA Spark مع Ultralytics YOLO11

يقدم هذا الدليل الشامل إرشادات تفصيلية لنشر Ultralytics YOLO11 NVIDIA Spark، وهو حاسوب عملاق صغير الحجم يعمل بالذكاء الاصطناعي NVIDIA. بالإضافة إلى ذلك، يعرض الدليل معايير أداء لإظهار قدرات YOLO11 هذا النظام القوي.

NVIDIA Spark

ملاحظة

تم اختبار هذا الدليل باستخدام NVIDIA Spark Founders Edition الذي يعمل بنظام التشغيل DGX OS المستند إلى Ubuntu. ومن المتوقع أن يعمل مع أحدث إصدارات نظام التشغيل DGX OS.

ما هو NVIDIA Spark؟

NVIDIA Spark هو حاسوب عملاق مكتبي صغير الحجم يعمل بنظام الذكاء الاصطناعي ويتم تشغيله بواسطة شريحة NVIDIA Grace Blackwell Superchip. يوفر هذا الحاسوب أداءً حاسوبيًا يصل إلى 1 بيتافلوب من الذكاء الاصطناعي بدقة FP4، مما يجعله مثاليًا للمطورين والباحثين وعلماء البيانات الذين يحتاجون إلى قدرات ذكاء اصطناعي قوية في شكل حاسوب مكتبي.

المواصفات الرئيسية

المواصفاتالتفاصيل
أداء الذكاء الاصطناعيحتى 1 بيتافلوب (FP4)
GPUبنية NVIDIA مع Tensor من الجيل الخامس ونوى RT من الجيل الرابع
وحدة المعالجة المركزية (CPU)معالج Arm ذو 20 نواة (10 Cortex-X925 + 10 Cortex-A725)
الذاكرةذاكرة نظام موحدة LPDDR5x سعة 128 جيجابايت، واجهة 256 بت، 4266 ميجاهرتز، عرض نطاق 273 جيجابايت/ثانية
التخزين1 تيرابايت أو 4 تيرابايت NVMe M.2 مع تشفير ذاتي
الشبكة1x RJ-45 (10 GbE)، ConnectX-7 Smart NIC، Wi-Fi 7، Bluetooth 5.4
الاتصال4 منافذ USB من النوع C، منفذ HDMI 2.1a واحد، صوت متعدد القنوات HDMI
معالجة الفيديو1x NVENC، 1x NVDEC

نظام التشغيل DGX

NVIDIA OS هو توزيع Linux مخصص يوفر أساسًا مستقرًا ومختبرًا ومدعومًا لنظام التشغيل لتشغيل تطبيقات الذكاء الاصطناعي والتعلم الآلي والتحليلات على أنظمة DGX. ويشمل:

  • أساس Linux قوي ومُحسّن لأعباء عمل الذكاء الاصطناعي
  • برامج تشغيل وإعدادات نظام مسبقة التهيئة NVIDIA
  • تحديثات الأمان وقدرات صيانة النظام
  • التوافق مع نظام NVIDIA الأوسع نطاقاً

يتبع نظام التشغيل DGX OS جدول إصدار منتظم مع توفير تحديثات عادةً مرتين في السنة (حوالي فبراير وأغسطس)، مع توفير تصحيحات أمان إضافية بين الإصدارات الرئيسية.

لوحة معلومات DGX

يأتي DGX Spark مزودًا بلوحة تحكم DGX مدمجة توفر:

  • مراقبة النظام في الوقت الفعلي: نظرة عامة على المقاييس التشغيلية الحالية للنظام
  • تحديثات النظام: إمكانية تطبيق التحديثات مباشرة من لوحة التحكم
  • إعدادات النظام: تغيير اسم الجهاز والتكوينات الأخرى
  • JupyterLab المدمج: الوصول إلى دفاتر Jupyter المحلية للتطوير

لوحة معلومات NVIDIA

الوصول إلى لوحة التحكم

انقر على زر "Show Apps" (إظهار التطبيقات) في الزاوية السفلية اليسرى من سطح مكتب Ubuntu، ثم حدد "DGX Dashboard" (لوحة تحكم DGX) لفتحها في متصفحك.

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

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

بعد الاتصال بـ NVIDIA ، انقر فوق الزر "DGX Dashboard" لفتح لوحة التحكم في http://localhost:11000.

JupyterLab المدمج

تتضمن لوحة التحكم نسخة مدمجة من JupyterLab تقوم تلقائيًا بإنشاء بيئة افتراضية وتثبيت الحزم الموصى بها عند بدء التشغيل. يتم تخصيص منفذ مخصص لكل حساب مستخدم للوصول إلى JupyterLab.

بداية سريعة مع Docker

أسرع طريقة لبدء استخدام Ultralytics YOLO11 NVIDIA 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 --runtime=nvidia --gpus all $t

بعد الانتهاء من ذلك، انتقل إلى قسم استخدام TensorRT NVIDIA Spark.

ابدأ بالتثبيت الأصلي

للتثبيت الأصلي بدون Docker، اتبع هذه الخطوات.

تثبيت حزمة Ultralytics

هنا سنقوم بتثبيت Ultralytics على DGX Spark مع التبعيات الاختيارية حتى نتمكن من تصدير PyTorch إلى تنسيقات أخرى مختلفة. سنركز بشكل أساسي على TensorRT 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 مُحسّنة بالكامل لهندسة ARM64 الخاصة بـ DGX Spark مع CUDA . لذلك، نوصي بتثبيت الإصدارات المتوافقة مع CUDA :

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

معلومات

عند تشغيل PyTorch .9.1 على NVIDIA 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 .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 Spark

من بين جميع تنسيقات تصدير النماذج التي تدعمها Ultralytics TensorRT أعلى أداء استدلال على NVIDIA Spark، مما يجعله أفضل توصية لدينا للنشر. للحصول على إرشادات الإعداد والاستخدام المتقدم، راجع دليل TensorRT المخصص لدينا.

تحويل النموذج إلى TensorRT وتشغيل الاستدلال

يتم تحويل نموذج YOLO11n بتنسيق PyTorch إلى TensorRT لتشغيل الاستدلال مع النموذج الذي تم تصديره.

مثال

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'

ملاحظة

تفضل بزيارة صفحة التصدير للوصول إلى المزيد من الوسائط عند تصدير النماذج إلى تنسيقات نماذج مختلفة

YOLO11 NVIDIA Spark YOLO11

تم تشغيل YOLO11 من قبل Ultralytics على تنسيقات نماذج متعددة لقياس السرعة والدقة: PyTorch و TorchScript و ONNX و OpenVINO و TensorRT و TF SavedModel و TF GraphDef و TF و MNN و NCNN و ExecuTorch. تم تشغيل المعايير على NVIDIA Spark بدقة FP32 مع حجم صورة إدخال افتراضي يبلغ 640.

جدول مقارنة تفصيلي

يمثل الجدول أدناه نتائج المقارنة المعيارية لخمسة نماذج مختلفة (YOLO11n و YOLO11s و YOLO11m و YOLO11l و YOLO11x) عبر تنسيقات متعددة، مما يوفر لنا الحالة والحجم ومقياس mAP50(B) ووقت الاستدلال لكل تركيبة.

الأداء

التنسيقالحالةالحجم على القرص (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
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
التنسيقالحالةالحجم على القرص (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
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
التنسيقالحالةالحجم على القرص (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
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
التنسيقالحالةالحجم على القرص (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
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
التنسيقالحالةالحجم على القرص (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
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 .3.249

إعادة إنتاج نتائجنا

لإعادة إنتاج معايير Ultralytics المذكورة أعلاه على جميع صيغ التصدير، قم بتشغيل هذا الكود:

مثال

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

لاحظ أن نتائج الاختبارات المعيارية قد تختلف بناءً على التكوين الدقيق للأجهزة والبرامج للنظام، بالإضافة إلى عبء العمل الحالي للنظام وقت تشغيل الاختبارات المعيارية. للحصول على النتائج الأكثر موثوقية، استخدم مجموعة بيانات تحتوي على عدد كبير من الصور، على سبيل المثال، data='coco.yaml' (5000 صورة تحقق).

أفضل الممارسات لـ NVIDIA Spark

عند استخدام NVIDIA Spark، هناك بعض أفضل الممارسات التي يجب اتباعها من أجل تحقيق أقصى أداء عند تشغيل YOLO11.

  1. مراقبة أداء النظام

    استخدم أدوات المراقبة NVIDIA track CPU GPU CPU :

    nvidia-smi
    
  2. تحسين استخدام الذاكرة

    بفضل ذاكرة موحدة سعة 128 جيجابايت، يمكن لـ DGX Spark معالجة أحجام دفعات ونماذج كبيرة. فكر في زيادة حجم الدفعة لتحسين الإنتاجية:

    from ultralytics import YOLO
    
    model = YOLO("yolo11n.engine")
    results = model.predict(source="path/to/images", batch=16)
    
  3. استخدم TensorRT FP16 أو INT8

    للحصول على أفضل أداء، قم بتصدير النماذج بدقة FP16 أو INT8:

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

تحديثات النظام (إصدار المؤسسين)

يعد الحفاظ على تحديث DGX Spark Founders Edition أمرًا ضروريًا للأداء والأمان. NVIDIA طريقتين أساسيتين لتحديث نظام التشغيل والبرامج التشغيلية والبرامج الثابتة.

لوحة معلومات DGX هي الطريقة الموصى بها لإجراء تحديثات النظام لضمان التوافق. وهي تتيح لك ما يلي:

  • عرض تحديثات النظام المتاحة
  • تثبيت تصحيحات الأمان وتحديثات النظام
  • إدارة تحديثات NVIDIA والبرامج الثابتة

تحديثات النظام اليدوية

بالنسبة للمستخدمين المتقدمين، يمكن إجراء التحديثات يدويًا عبر الجهاز الطرفي:

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

تحذير

تأكد من أن نظامك متصل بمصدر طاقة مستقر وأنك قمت بعمل نسخة احتياطية للبيانات المهمة قبل إجراء التحديثات.

كيف يمكنني تدريب YOLOv5 على مجموعة البيانات المخصصة الخاصة بي؟

لمزيد من التعلم والدعم، راجع وثائق Ultralytics YOLO11.

الأسئلة الشائعة

كيف يمكنني نشر Ultralytics YOLO11 NVIDIA Spark؟

يعد نشر Ultralytics YOLO11 NVIDIA Spark أمرًا سهلاً. يمكنك استخدام صورة Docker المعدة مسبقًا للإعداد السريع أو تثبيت الحزم المطلوبة يدويًا. يمكن العثور على الخطوات التفصيلية لكل نهج في قسمي "البدء السريع مع Docker " و" البدء مع التثبيت الأصلي".

ما هو الأداء الذي يمكنني توقعه من YOLO11 NVIDIA Spark؟

تقدم YOLO11 أداءً ممتازًا على DGX Spark بفضل رقاقة GB10 Grace Blackwell Superchip. يوفر TensorRT أفضل أداء استدلالي. راجع قسم جدول المقارنة التفصيلي للاطلاع على نتائج المقارنة المعيارية المحددة عبر أحجام وتنسيقات النماذج المختلفة.

لماذا يجب علي استخدام TensorRT YOLO11 DGX Spark؟

TensorRT بشدة TensorRT لنشر YOLO11 على DGX Spark نظرًا لأدائه الأمثل. فهو يعمل على تسريع الاستدلال من خلال الاستفادة من GPU Blackwell، مما يضمن أقصى قدر من الكفاءة والسرعة. تعرف على المزيد في قسم استخدام TensorRT NVIDIA Spark.

كيف يقارن DGX Spark بأجهزة Jetson بالنسبة لـ YOLO11؟

يوفر DGX Spark قوة حوسبة أكبر بكثير من أجهزة Jetson، حيث يصل أداء الذكاء الاصطناعي إلى 1 PFLOP وذاكرة موحدة تبلغ 128 جيجابايت، مقارنة بـ 2070 TFLOPS وذاكرة 128 جيجابايت في Jetson AGX Thor. تم تصميم DGX Spark كجهاز كمبيوتر مكتبي فائق للذكاء الاصطناعي، بينما أجهزة Jetson هي أنظمة مدمجة مُحسّنة للنشر المتطور.

هل يمكنني استخدام نفس صورة Docker لـ DGX Spark و Jetson AGX Thor؟

نعم! ultralytics/ultralytics:latest-nvidia-arm64 تدعم صورة Docker كلاً من NVIDIA Spark (مع DGX OS) و Jetson AGX Thor (مع JetPack 7.0)، حيث يستخدم كلاهما بنية ARM64 مع CUDA ومجموعات برامج مماثلة.



📅 تم إنشاؤه منذ 0 أيام ✏️ تم التحديث منذ 0 أيام
onuralpszr

تعليقات