دليل البدء السريع: NVIDIA جيتسون مع Ultralytics YOLO11
يقدم هذا الدليل الشامل شرحًا تفصيليًا لنشر Ultralytics YOLO11 على أجهزة NVIDIA Jetson. بالإضافة إلى ذلك، فإنه يعرض معايير الأداء لتوضيح قدرات YOLO11 على هذه الأجهزة الصغيرة والقوية.
شاهد: كيفية الإعداد NVIDIA جيتسون مع Ultralytics YOLO11
ملاحظة
تم اختبار هذا الدليل مع كل من Seeed Studio reComputer J4012 الذي يعتمد على NVIDIA Jetson Orin NX 16GB الذي يعمل بأحدث إصدار ثابت من JetPack JP6.0، وإصدار JetPack JP5.1.3 وإصدار JP5.1.3 وSeeed Studio reComputer J1020 v2 الذي يعتمد على NVIDIA Jetson Nano 4GB الذي يعمل بإصدار JetPack JP4.6.1. من المتوقع أن يعمل عبر جميع مجموعة أجهزة NVIDIA Jetson بما في ذلك الأحدث والقديم.
ما هو NVIDIA جيتسون؟
NVIDIA Jetson عبارة عن سلسلة من لوحات الحوسبة المدمجة المصممة لتوفير حوسبة الذكاء الاصطناعي (الذكاء الاصطناعي) المتسارعة للأجهزة المتطورة. صُممت هذه الأجهزة المدمجة والقوية حول بنية GPU الخاصة ب NVIDIA وهي قادرة على تشغيل خوارزميات الذكاء الاصطناعي المعقدة ونماذج التعلم العميق مباشرةً على الجهاز، دون الحاجة إلى الاعتماد على موارد الحوسبة السحابية. غالبًا ما تُستخدم لوحات Jetson في مجال الروبوتات والمركبات ذاتية القيادة والأتمتة الصناعية والتطبيقات الأخرى التي تحتاج إلى إجراء استدلال الذكاء الاصطناعي محليًا بزمن انتقال منخفض وكفاءة عالية. بالإضافة إلى ذلك، تعتمد هذه اللوحات على بنية ARM64 وتعمل بطاقة أقل مقارنةً بأجهزة الحوسبة التقليدية GPU .
NVIDIA مقارنة بين سلسلة جيتسون
Jetson Orin هو أحدث تكرار لعائلة Jetson NVIDIA Jetson القائمة على بنية NVIDIA Ampere التي توفر أداء ذكاءً محسّنًا بشكل كبير مقارنةً بالأجيال السابقة. يقارن الجدول أدناه بعض أجهزة Jetson في النظام البيئي.
جيتسون إيه جي إكس أورين 64 جيجابايت | جيتسون أورين إن إكس 16 جيجابايت | جيتسون أورين نانو 8 جيجابايت | جيتسون إيه جي إكس إكسافير | جيتسون كزافييه NX | جيتسون نانو | |
---|---|---|---|---|---|---|
أداء الذكاء الاصطناعي | 275 توبس 275 | 100 TOPS | 40 قمة 40 | 32 قمة 32 | 21 توبس | 472 GFLOPS |
GPU | 2048 نواة NVIDIA بنية أمبير GPU مع 64 Tensor نواة | 1024 نواة NVIDIA أمبير GPU ببنية Tensor نواة | 1024 نواة NVIDIA أمبير GPU ببنية Tensor نواة | 512 نواة Tensor نواة NVIDIA Volta Architecture GPU مع 64 نواة | 384 نواة NVIDIA Volta™ Architecture GPU بـ 48 Tensor Cores | 128-نواة NVIDIA ماكسويل™م معمارية ماكسويل™ 128-نواة GPU |
GPU الحد الأقصى للتردد | 1.3 جيجا هرتز | 918 ميجاهرتز | 625 ميجاهرتز | 1377 ميجاهرتز | 1100 ميجاهرتز | 921 ميجا هرتز |
CPU | 12-نواة NVIDIA Arm® Cortex A78AE v8.2 64 بت CPU 3 ميجابايت L2 + 6 ميجابايت L3 | ثماني النواة NVIDIA Arm® Cortex A78AE 8-core A78AE v8.2 64-bit CPU 2 ميجابايت L2 + 4 ميجابايت L3 | Arm® Cortex® Cortex®-A78AE سداسي النواة ®A78AE v8.2 64 بت CPU 1.5 ميجابايت L2 + 4 ميجابايت L3 | ثماني النواة NVIDIA Carmel® Armel® Arm8.2 ®8.2 64 بت CPU 8 ميجابايت L2 + 4 ميجابايت L3 | سداسي النواة NVIDIA Carmel® Armel® Armv8.2 64 بت CPU 6 ميجابايت L2 + 4 ميجابايت L3 | معالج رباعي النواة Arm® Cortex® Cortex®-A57 MPCore |
CPU الحد الأقصى للتردد | 2.2 جيجاهرتز | 2.0 جيجاهرتز | 1.5 جيجاهرتز | 2.2 جيجاهرتز | 1.9 جيجا هرتز | 1.43 جيجا هرتز |
الذاكرة | 64 جيجابايت 256 بت LPDDR5 بسعة 256 بت 204.8 جيجابايت/ثانية | 16 جيجابايت 128 بت LPDDR5 سعة 128 بت 102.4 جيجابايت/ثانية | 8 جيجا بايت 128 بت LPDDR5 68 جيجا بايت/ثانية | 32 جيجابايت 256 بت LPDDR4x 136.5 جيجابايت/ثانية | 8 غيغابايت 128 بت LPDDR4x 59.7 غيغابايت/ثانية | 4 جيجا بايت 64 بت LPDDR4 25.6 جيجا بايت/ثانية" |
للاطلاع على جدول مقارنة أكثر تفصيلاً، يُرجى زيارة قسم المواصفات الفنية على صفحة NVIDIA Jetson الرسمية.
ما هو NVIDIA JetPack؟
NVIDIA إن JetPack SDK الذي يعمل على تشغيل وحدات Jetson هو الحل الأكثر شمولاً ويوفر بيئة تطوير كاملة لبناء تطبيقات ذكاء اصطناعي مسرّعة من البداية إلى النهاية ويقلل من الوقت اللازم للتسويق. يتضمن JetPack JetPack Jetson Linux مع محمل الإقلاع، ونواة Linux، وبيئة سطح مكتب Ubuntu، ومجموعة كاملة من المكتبات لتسريع الحوسبة GPU ، والوسائط المتعددة، والرسومات، والرؤية الحاسوبية. ويتضمن أيضًا عينات ووثائق وأدوات المطورين لكل من الكمبيوتر المضيف ومجموعة أدوات المطورين، ويدعم حزم SDK ذات المستوى الأعلى مثل DeepStream لبث تحليلات الفيديو، وISAac للروبوتات، وRiva للذكاء الاصطناعي التخاطبي.
فلاش جيت باك إلى NVIDIA جيتسون
تتمثل الخطوة الأولى بعد الحصول على جهاز NVIDIA Jetson في وميض NVIDIA JetPack على الجهاز. هناك عدة طرق مختلفة لوميض NVIDIA أجهزة جيتسون.
- إذا كنت تمتلك مجموعة أدوات تطوير رسمية NVIDIA مثل Jetson Orin Nano Developer Kit، يمكنك تنزيل صورة وإعداد بطاقة SD مع JetPack لتشغيل الجهاز.
- إذا كنت تمتلك أي مجموعة أدوات تطوير أخرى NVIDIA ، يمكنك فلاش JetPack على الجهاز باستخدام SDK Manager.
- إذا كنت تمتلك جهاز Seeed Studio reComputer J4012، فيمكنك فلاش JetPack على قرص SSD المضمّن، وإذا كنت تمتلك جهاز Seeed Studio reComputer J1020 v2، فيمكنك فلاش JetPack على قرص eMMC/ SSD.
- إذا كنت تمتلك أي جهاز آخر تابع لجهة خارجية يعمل بوحدة NVIDIA Jetson، فمن المستحسن اتباع وميض سطر الأوامر.
ملاحظة
بالنسبة للطريقتين 3 و 4 أعلاه، بعد وميض النظام وتشغيل الجهاز، يرجى إدخال "sudo apt update & sudo apt install nvidia-jetpack -y" على طرفية الجهاز لتثبيت جميع مكونات JetPack المتبقية المطلوبة.
دعم JetPack JetPack القائم على جهاز Jetson
يوضح الجدول أدناه NVIDIA إصدارات JetPack التي تدعمها أجهزة NVIDIA Jetson المختلفة.
JetPack 4 | جيت باك 5 | جيت باك 6 | |
---|---|---|---|
جيتسون نانو | ✅ | ❌ | ❌ |
جيتسون TX2 | ✅ | ❌ | ❌ |
جيتسون كزافييه NX | ✅ | ✅ | ❌ |
جيتسون إيه جي إكس إكسافير | ✅ | ✅ | ❌ |
جيتسون إيه جي إكس أورين | ❌ | ✅ | ✅ |
جيتسون أورين إن إكس | ❌ | ✅ | ✅ |
جيتسون أورين نانو | ❌ | ✅ | ✅ |
بداية سريعة مع Docker
إن أسرع طريقة لبدء استخدام Ultralytics YOLO11 على NVIDIA جيتسون هي التشغيل باستخدام صور docker المدمجة مسبقاً لجهاز جيتسون. ارجع إلى الجدول أعلاه واختر إصدار JetPack وفقًا لجهاز Jetson الذي تملكه.
بعد الانتهاء من ذلك، انتقل إلى قسم استخدام TensorRT على NVIDIA جيتسون.
ابدأ بالتثبيت الأصلي
للتثبيت الأصلي بدون Docker، يُرجى الرجوع إلى الخطوات أدناه.
التشغيل على JetPack 6.x
تثبيت الحزمة Ultralytics
سنقوم هنا بتثبيت الحزمة Ultralytics على جيتسون مع التبعيات الاختيارية حتى نتمكن من تصدير PyTorch النماذج إلى تنسيقات مختلفة أخرى. سوف نركز بشكل أساسي على NVIDIA TensorRT التصدير لأن TensorRT سيضمن لنا الحصول على أقصى أداء من أجهزة جيتسون.
-
قم بتحديث قائمة الحزم، وتثبيت النقطة والترقية إلى الأحدث
-
التثبيت
ultralytics
حزمة النقطة مع التبعيات الاختيارية -
إعادة تشغيل الجهاز
تثبيت PyTorch و Torchvision
سيؤدي التثبيت أعلاه ultralytics إلى تثبيت Torch و Torchvision. ومع ذلك، فإن هاتين الحزمتين المثبتتين عبر pip غير متوافقتين للتشغيل على منصة Jetson التي تعتمد على بنية ARM64. لذلك، نحن بحاجة إلى تثبيت PyTorch المبنية مسبقًا يدويًا عجلة pip وتجميع/تثبيت Torchvision من المصدر.
التثبيت torch 2.3.0
و torchvision 0.18
وفقًا ل JP6.0
sudo apt-get install libopenmpi-dev libopenblas-base libomp-dev -y
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.3.0-cp310-cp310-linux_aarch64.whl
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.18.0a0+6043bc2-cp310-cp310-linux_aarch64.whl
قم بزيارة صفحةPyTorch لصفحة Jetson للوصول إلى جميع الإصدارات المختلفة من PyTorch لإصدارات JetPack المختلفة. للاطلاع على قائمة أكثر تفصيلاً على PyTorch ، توافق Torchvision، قم بزيارة صفحة التوافقPyTorch وتوافق Torchvision.
التثبيت onnxruntime-gpu
إن أونكسر الزمن-gpu الحزمة المستضافة في PyPI لا تحتوي على aarch64
ثنائيات لـ Jetson. لذلك نحن بحاجة إلى تثبيت هذه الحزمة يدوياً. هذه الحزمة مطلوبة لبعض الصادرات.
كل شيء مختلف onnxruntime-gpu
يتم سرد الحزم المقابلة لإصدارات JetPack و Python المختلفة هنا. ومع ذلك، سنقوم هنا بتنزيل وتثبيت onnxruntime-gpu 1.18.0
مع Python3.10
الدعم.
wget https://nvidia.box.com/shared/static/48dtuob7meiw6ebgfsfqakc9vse62sg4.whl -O onnxruntime_gpu-1.18.0-cp310-cp310-linux_aarch64.whl
pip install onnxruntime_gpu-1.18.0-cp310-cp310-linux_aarch64.whl
ملاحظة
onnxruntime-gpu
سيعيد تلقائيًا إصدار numpy إلى الأحدث. لذلك نحن بحاجة إلى إعادة تثبيت numpy إلى 1.23.5
لإصلاح مشكلة عن طريق التنفيذ
pip install numpy==1.23.5
التشغيل على JetPack 5.x
تثبيت الحزمة Ultralytics
سنقوم هنا بتثبيت الحزمة Ultralytics على جيتسون مع التبعيات الاختيارية حتى نتمكن من تصدير نماذج PyTorch إلى تنسيقات مختلفة أخرى. سنركز بشكل أساسي على NVIDIA TensorRT التصدير لأن TensorRT سيضمن لنا الحصول على أقصى أداء من أجهزة جيتسون.
-
قم بتحديث قائمة الحزم، وتثبيت النقطة والترقية إلى الأحدث
-
التثبيت
ultralytics
حزمة النقطة مع التبعيات الاختيارية -
إعادة تشغيل الجهاز
تثبيت PyTorch و Torchvision
سيؤدي التثبيت أعلاه ultralytics إلى تثبيت Torch و Torchvision. ومع ذلك، فإن هاتين الحزمتين المثبتتين عبر pip غير متوافقتين للتشغيل على منصة Jetson التي تعتمد على بنية ARM64. لذلك، نحن بحاجة إلى تثبيت PyTorch المبنية مسبقًا يدويًا عجلة pip وتجميع/تثبيت Torchvision من المصدر.
-
قم بإلغاء تثبيت PyTorch و Torchvision المثبتين حاليًا
-
قم بتثبيت PyTorch 2.1.0 2.1.0 وفقًا ل JP5.1.3
sudo apt-get install -y libopenblas-base libopenmpi-dev wget https://developer.download.nvidia.com/compute/redist/jp/v512/pytorch/torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl -O torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl pip install torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
-
قم بتثبيت Torchvision v0.16.2 وفقًا لموقع PyTorch v2.1.0
قم بزيارة صفحةPyTorch لصفحة Jetson للوصول إلى جميع الإصدارات المختلفة من PyTorch لإصدارات JetPack المختلفة. للاطلاع على قائمة أكثر تفصيلاً على PyTorch ، توافق Torchvision، قم بزيارة صفحة التوافقPyTorch وتوافق Torchvision.
التثبيت onnxruntime-gpu
إن أونكسر الزمن-gpu الحزمة المستضافة في PyPI لا تحتوي على aarch64
ثنائيات لـ Jetson. لذلك نحن بحاجة إلى تثبيت هذه الحزمة يدوياً. هذه الحزمة مطلوبة لبعض الصادرات.
كل شيء مختلف onnxruntime-gpu
يتم سرد الحزم المقابلة لإصدارات JetPack و Python المختلفة هنا. ومع ذلك، سنقوم هنا بتنزيل وتثبيت onnxruntime-gpu 1.17.0
مع Python3.8
الدعم.
wget https://nvidia.box.com/shared/static/zostg6agm00fb6t5uisw51qi6kpcuwzd.whl -O onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whl
pip install onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whl
ملاحظة
onnxruntime-gpu
سيعيد تلقائيًا إصدار numpy إلى الأحدث. لذلك نحن بحاجة إلى إعادة تثبيت numpy إلى 1.23.5
لإصلاح مشكلة عن طريق التنفيذ
pip install numpy==1.23.5
استخدم TensorRT على NVIDIA Jetson
من بين جميع تنسيقات تصدير النماذج التي يدعمها Ultralytics ، يقدم TensorRT أفضل أداء استدلالي عند العمل مع أجهزة NVIDIA Jetson ونوصي باستخدام TensorRT مع Jetson. لدينا أيضًا مستند مفصل على 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")
ملاحظة
قم بزيارة صفحة التصدير للوصول إلى الوسائط الإضافية عند تصدير النماذج إلى تنسيقات نماذج مختلفة
استخدام NVIDIA مسرع التعلم العميق (DLA)
NVIDIA مسرع التعلم العميق (DLA) هو مكون أجهزة متخصص مدمج في أجهزة NVIDIA Jetson يعمل على تحسين استدلال التعلم العميق لتحقيق كفاءة الطاقة والأداء. من خلال إلغاء تحميل المهام من GPU (تحريرها لعمليات أكثر كثافة)، يمكّن DLA النماذج من العمل باستهلاك أقل للطاقة مع الحفاظ على إنتاجية عالية، وهو مثالي للأنظمة المدمجة وتطبيقات الذكاء الاصطناعي في الوقت الفعلي.
أجهزة Jetson التالية مزودة بأجهزة DLA:
- جيتسون أورين إن إكس 16 جيجابايت
- سلسلة Jetson AGX أورين Jetson AGX Orin
- سلسلة Jetson AGX Xavier Series
- سلسلة Jetson Xavier NX Series
مثال على ذلك
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model to TensorRT with DLA enabled (only works with FP16 or INT8)
model.export(format="engine", device="dla:0", half=True) # dla:0 or dla:1 corresponds to the DLA cores
# 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 with DLA enabled (only works with FP16 or INT8)
yolo export model=yolo11n.pt format=engine device="dla:0" half=True # dla:0 or dla:1 corresponds to the DLA cores
# Run inference with the exported model on the DLA
yolo predict model=yolo11n.engine source='https://ultralytics.com/images/bus.jpg'
ملاحظة
عند استخدام عمليات تصدير DLA، قد لا تكون بعض الطبقات مدعومة للتشغيل على DLA وستعود إلى GPU للتنفيذ. يمكن أن يؤدي هذا التأخير إلى تأخير إضافي ويؤثر على أداء الاستدلال الكلي. ولذلك، لم يتم تصميم DLA في المقام الأول لتقليل زمن انتقال الاستدلال مقارنةً بـ TensorRT الذي يعمل بالكامل على GPU. بدلاً من ذلك، فإن الغرض الأساسي منه هو زيادة الإنتاجية وتحسين كفاءة الطاقة.
NVIDIA معايير جيتسون أورين YOLO11 المعيارية
YOLO11 TF تم تشغيل المعايير من قبل فريق Ultralytics على 10 نماذج مختلفة لقياس السرعة والدقة: PyTorch و TorchScript و ONNX و OpenVINO و TensorRT و TF SavedModel و TF GraphDef و 0 لايت و PaddlePaddle و NCNN. تم تشغيل الاختبارات المعيارية على جهاز Seeed Studio reComputer J4012 المدعوم بجهاز Jetson Orin NX سعة 16 جيجابايت بدقة FP32 مع حجم إدخال افتراضي للصور يبلغ 640.
رسم بياني للمقارنة
على الرغم من أن جميع صادرات النماذج تعمل مع NVIDIA جيتسون إلا أننا أدرجنا فقط PyTorch و TorchScript و TensorRT في مخطط المقارنة أدناه لأنها تستخدم GPU على جيتسون وهي مضمونة للحصول على أفضل النتائج. جميع الصادرات الأخرى تستخدم فقط CPU والأداء ليس جيدًا مثل الثلاثة المذكورة أعلاه. يمكنك العثور على معايير لجميع الصادرات في القسم الذي يلي هذا المخطط.
جدول المقارنة التفصيلي
يمثل الجدول أدناه النتائج المعيارية لخمسة نماذج مختلفة (YOLO11n، YOLO11n، YOLO11s، YOLO11m، YOLO11l، YOLO11x) عبر عشرة تنسيقات مختلفة (PyTorch ، TorchScript ، ، ONNX ، OpenVINO ، TensorRT ، TF SavedModel ، TF GraphDef ، TF لايت، PaddlePaddle ، NCNN)، مما يعطينا الحالة والحجم ومقياس mAP50-95(B) وزمن الاستدلال لكل مجموعة.
الأداء
التنسيق | الحالة | الحجم على القرص (ميغابايت) | mAP50-95(ب) | زمن الاستدلال (م/م) |
---|---|---|---|---|
PyTorch | ✅ | 5.4 | 0.6176 | 19.80 |
TorchScript | ✅ | 10.5 | 0.6100 | 13.30 |
ONNX | ✅ | 10.2 | 0.6082 | 67.92 |
OpenVINO | ✅ | 10.4 | 0.6082 | 118.21 |
TensorRT (FP32) | ✅ | 14.1 | 0.6100 | 7.94 |
TensorRT (FP16) | ✅ | 8.3 | 0.6082 | 4.80 |
TensorRT (INT8) | ✅ | 6.6 | 0.3256 | 4.17 |
TF SavedModel | ✅ | 25.8 | 0.6082 | 185.88 |
TF GraphDef | ✅ | 10.3 | 0.6082 | 256.66 |
TF لايت | ✅ | 10.3 | 0.6082 | 284.64 |
PaddlePaddle | ✅ | 20.4 | 0.6082 | 477.41 |
NCNN | ✅ | 10.2 | 0.6106 | 32.18 |
التنسيق | الحالة | الحجم على القرص (ميغابايت) | mAP50-95(ب) | زمن الاستدلال (م/م) |
---|---|---|---|---|
PyTorch | ✅ | 18.4 | 0.7526 | 20.20 |
TorchScript | ✅ | 36.5 | 0.7416 | 23.42 |
ONNX | ✅ | 36.3 | 0.7416 | 162.01 |
OpenVINO | ✅ | 36.4 | 0.7416 | 159.61 |
TensorRT (FP32) | ✅ | 40.3 | 0.7416 | 13.93 |
TensorRT (FP16) | ✅ | 21.7 | 0.7416 | 7.47 |
TensorRT (INT8) | ✅ | 13.6 | 0.3179 | 5.66 |
TF SavedModel | ✅ | 91.1 | 0.7416 | 316.46 |
TF GraphDef | ✅ | 36.4 | 0.7416 | 506.71 |
TF لايت | ✅ | 36.4 | 0.7416 | 842.97 |
PaddlePaddle | ✅ | 72.5 | 0.7416 | 1172.57 |
NCNN | ✅ | 36.2 | 0.7419 | 66.00 |
التنسيق | الحالة | الحجم على القرص (ميغابايت) | mAP50-95(ب) | زمن الاستدلال (م/م) |
---|---|---|---|---|
PyTorch | ✅ | 38.8 | 0.7595 | 36.70 |
TorchScript | ✅ | 77.3 | 0.7643 | 50.95 |
ONNX | ✅ | 76.9 | 0.7643 | 416.34 |
OpenVINO | ✅ | 77.1 | 0.7643 | 370.99 |
TensorRT (FP32) | ✅ | 81.5 | 0.7640 | 30.49 |
TensorRT (FP16) | ✅ | 42.2 | 0.7658 | 14.93 |
TensorRT (INT8) | ✅ | 24.3 | 0.4118 | 10.32 |
TF SavedModel | ✅ | 192.7 | 0.7643 | 597.08 |
TF GraphDef | ✅ | 77.0 | 0.7643 | 1016.12 |
TF لايت | ✅ | 77.0 | 0.7643 | 2494.60 |
PaddlePaddle | ✅ | 153.8 | 0.7643 | 3218.99 |
NCNN | ✅ | 76.8 | 0.7691 | 192.77 |
التنسيق | الحالة | الحجم على القرص (ميغابايت) | mAP50-95(ب) | زمن الاستدلال (م/م) |
---|---|---|---|---|
PyTorch | ✅ | 49.0 | 0.7475 | 47.6 |
TorchScript | ✅ | 97.6 | 0.7250 | 66.36 |
ONNX | ✅ | 97.0 | 0.7250 | 532.58 |
OpenVINO | ✅ | 97.3 | 0.7250 | 477.55 |
TensorRT (FP32) | ✅ | 101.6 | 0.7250 | 38.71 |
TensorRT (FP16) | ✅ | 52.6 | 0.7265 | 19.35 |
TensorRT (INT8) | ✅ | 31.6 | 0.3856 | 13.50 |
TF SavedModel | ✅ | 243.3 | 0.7250 | 895.24 |
TF GraphDef | ✅ | 97.2 | 0.7250 | 1301.19 |
TF لايت | ✅ | 97.2 | 0.7250 | 3202.93 |
PaddlePaddle | ✅ | 193.9 | 0.7250 | 4206.98 |
NCNN | ✅ | 96.9 | 0.7252 | 225.75 |
التنسيق | الحالة | الحجم على القرص (ميغابايت) | mAP50-95(ب) | زمن الاستدلال (م/م) |
---|---|---|---|---|
PyTorch | ✅ | 109.3 | 0.8288 | 85.60 |
TorchScript | ✅ | 218.1 | 0.8308 | 121.67 |
ONNX | ✅ | 217.5 | 0.8308 | 1073.14 |
OpenVINO | ✅ | 217.8 | 0.8308 | 955.60 |
TensorRT (FP32) | ✅ | 221.6 | 0.8307 | 75.84 |
TensorRT (FP16) | ✅ | 113.1 | 0.8295 | 35.75 |
TensorRT (INT8) | ✅ | 62.2 | 0.4783 | 22.23 |
TF SavedModel | ✅ | 545.0 | 0.8308 | 1497.40 |
TF GraphDef | ✅ | 217.8 | 0.8308 | 2552.42 |
TF لايت | ✅ | 217.8 | 0.8308 | 7044.58 |
PaddlePaddle | ✅ | 434.9 | 0.8308 | 8386.73 |
NCNN | ✅ | 217.3 | 0.8304 | 486.36 |
استكشف المزيد من جهود القياس المعياري من خلال Seeed Studio الذي يعمل على إصدارات مختلفة من أجهزة NVIDIA Jetson.
إعادة إنتاج نتائجنا
لإعادة إنتاج معايير Ultralytics المذكورة أعلاه على جميع تنسيقات التصدير قم بتشغيل هذا الرمز:
مثال على ذلك
لاحظ أن نتائج القياس المعياري قد تختلف بناءً على التكوين الدقيق للأجهزة والبرمجيات الخاصة بالنظام، بالإضافة إلى عبء العمل الحالي للنظام في وقت تشغيل المعايير. للحصول على نتائج أكثر موثوقية استخدم مجموعة بيانات تحتوي على عدد كبير من الصور، أي data='coco8.yaml' (4 val images), or
البيانات='coco.yaml'` (5000 صورة قيمة).
أفضل الممارسات عند استخدام NVIDIA Jetson
عند استخدام NVIDIA Jetson، هناك بعض أفضل الممارسات التي يجب اتباعها من أجل تمكين أقصى أداء على NVIDIA Jetson الذي يعمل YOLO11.
-
تمكين وضع الطاقة القصوى
سيؤدي تمكين وضع الطاقة القصوى على Jetson إلى التأكد من تشغيل جميع النوى CPU ، GPU .
-
تمكين ساعات جيتسون
سيؤدي تمكين ساعات Jetson Clocks إلى التأكد من أن جميع النوى CPU ، GPU مسجلة على أقصى تردد لها.
-
تثبيت تطبيق إحصائيات جيتسون
يمكننا استخدام تطبيق جيتسون ستاتس لمراقبة درجات حرارة مكونات النظام والتحقق من تفاصيل النظام الأخرى مثل عرض CPU ، GPU ، استخدام ذاكرة الوصول العشوائي، تغيير أوضاع الطاقة، ضبط الساعات على الحد الأقصى، التحقق من معلومات JetPack
الخطوات التالية
تهانينا على الإعداد الناجح YOLO11 على جهازك NVIDIA جيتسون! لمزيد من التعلم والدعم، قم بزيارة المزيد من الدليل على Ultralytics YOLO11 Docs!
الأسئلة الشائعة
كيف يمكنني نشر Ultralytics YOLO11 على أجهزة NVIDIA جيتسون؟
يعد نشر Ultralytics YOLO11 على أجهزة NVIDIA Jetson عملية مباشرة. أولاً، قم أولاً بوميض جهاز Jetson الخاص بك باستخدام NVIDIA JetPack SDK. بعد ذلك، إما أن تستخدم صورة Docker مبنية مسبقًا لإعداد سريع أو تثبيت الحزم المطلوبة يدويًا. يمكن الاطلاع على الخطوات التفصيلية لكل طريقة في قسمي البدء السريع باستخدام Docker والبدء بالتثبيت الأصلي.
ما هي معايير الأداء التي يمكنني توقعها من طرازات YOLO11 على أجهزة NVIDIA Jetson؟
YOLO11 تم قياس أداء النماذج على العديد من أجهزة NVIDIA Jetson التي تُظهر تحسينات كبيرة في الأداء. على سبيل المثال، يقدم تنسيق TensorRT أفضل أداء في الاستدلال. يوفر الجدول الموجود في قسم جدول المقارنة التفصيلي عرضًا شاملاً لمقاييس الأداء مثل mAP50-95 ووقت الاستدلال عبر تنسيقات النماذج المختلفة.
لماذا يجب أن أستخدم TensorRT لنشر YOLO11 على NVIDIA جيتسون؟
TensorRT يوصى به بشدة لنشر نماذج YOLO11 على NVIDIA Jetson نظرًا لأدائه الأمثل. فهو يسرّع الاستدلال من خلال الاستفادة من قدرات جيتسون GPU ، مما يضمن أقصى قدر من الكفاءة والسرعة. تعرف على المزيد حول كيفية التحويل إلى TensorRT وتشغيل الاستدلال في قسم استخدام TensorRT على NVIDIA جيتسون.
كيف يمكنني تثبيت PyTorch و Torchvision على NVIDIA Jetson؟
لتثبيت PyTorch و Torchvision على NVIDIA Jetson، قم أولاً بإلغاء تثبيت أي إصدارات موجودة قد تكون مثبتة عبر pip. ثم قم يدويًا بتثبيت الإصدارين المتوافقين PyTorch و Torchvision يدويًا لبنية ARM64 الخاصة ب Jetson. يتم توفير الإرشادات التفصيلية لهذه العملية في قسم تثبيت PyTorch و Torchvision.
ما هي أفضل الممارسات لتحقيق أقصى قدر من الأداء على NVIDIA Jetson عند استخدام YOLO11 ؟
لتحقيق أقصى قدر من الأداء على NVIDIA Jetson مع YOLO11 ، اتبع أفضل الممارسات التالية:
- تمكين وضع الطاقة القصوى للاستفادة من جميع النوى CPU و GPU .
- تمكين ساعات Jetson Clocks لتشغيل جميع النوى بأقصى تردد لها.
- قم بتثبيت تطبيق Jetson Stats لمراقبة مقاييس النظام.
للحصول على الأوامر والتفاصيل الإضافية، راجع قسم أفضل الممارسات عند استخدام NVIDIA جيتسون.