مقارنة أداء Ollama: NVIDIA DGX Spark مقابل Mac Studio مقابل RTX-4080

نتائج اختبار GPT-OSS 120b على ثلاث منصات ذكاء اصطناعي

Page content

قمت بتحليل بعض الاختبارات المثيرة للاهتمام حول أداء نموذج GPT-OSS 120b أثناء تشغيله على Ollama عبر ثلاث منصات مختلفة: NVIDIA DGX Spark، وMac Studio، وRTX 4080. يبلغ حجم نموذج GPT-OSS 120b من مكتبة Ollama 65 جيجابايت، مما يعني أنه لا يمكن أن يناسب الـ 16 جيجابايت من ذاكرة الفيديو (VRAM) الخاصة بـ RTX 4080 (أو النسخة الأحدث RTX 5080).

نعم، يمكن تشغيل النموذج مع نقل جزئي إلى وحدة المعالجة المركزية (CPU)، وإذا كان لديك 64 جيجابايت من ذاكرة النظام (كما هو معي)، يمكنك تجربته. ومع ذلك، لن يكون هذا الإعداد مقبولًا بأي شكل من الأشكال من حيث الأداء في الإنتاج. للعملات المطلوبة حقًا، قد تحتاج إلى شيء مثل NVIDIA DGX Spark، وهو مصمم خصيصًا للعملات الكبيرة من الذكاء الاصطناعي.

7 llamas

كنت أتوقع أن هذا النموذج اللغوي الكبير (LLM) سيستفيد بشكل كبير من تشغيله على جهاز “ذات ذاكرة عالية للاستخراج الذكاء الاصطناعي” مثل DGX Spark. وبينما تكون النتائج جيدة، فهي ليست أفضل بكثير مما قد تتوقعه مع الفرق في السعر بين DGX Spark والخيارات الأرخص.

TL;DR

Ollama أثناء تشغيل GPT-OSS 120b مقارنة أداء عبر ثلاث منصات:

الجهاز أداء تقييم المحفز (الرموز/الثانية) أداء التوليد (الرموز/الثانية) ملاحظات
NVIDIA DGX Spark 1159 41 الأداء الأفضل، مسرع بالكامل عبر وحدة معالجة الرسومات (GPU)
Mac Studio غير معروف 34 → 6 أظهر اختبار واحد تدهورًا مع زيادة حجم السياق
RTX 4080 969 12.45 تقسيم 78% من وحدة المعالجة المركزية (CPU) / 22% من وحدة معالجة الرسومات (GPU) بسبب حدود ذاكرة الفيديو (VRAM)

مواصفات النموذج:

  • النموذج: GPT-OSS 120b
  • المعلمات: 117B (بنية المعمارية Mixture-of-Experts)
  • المعلمات النشطة لكل عملية: 5.1B
  • الكمية: MXFP4
  • حجم النموذج: 65 جيجابايت

هذا مشابه في المعمارية لنموذج MoE الآخر مثل Qwen3:30b، ولكن بحجم أكبر بكثير.

GPT-OSS 120b على NVIDIA DGX Spark

يأتي بيانات أداء LLM لـ NVIDIA DGX Spark من المنشور الرسمي على مدونة Ollama (الموجود أدناه في قسم الروابط المفيدة). يمثل DGX Spark دخول NVIDIA إلى سوق الكومبيوترات الفائقة للاستخراج الذكاء الاصطناعي الشخصية، ويتميز بذاكرة موحدة بسعة 128 جيجابايت مصممة خصيصًا لتشغيل النماذج الكبيرة من اللغة.

ollama on dgx spark performance table

يبدو أداء GPT-OSS 120b مذهلاً بـ 41 رمز/ثانية للتوليد. هذا يجعله الفائز الواضح لهذا النموذج، مما يظهر أن سعة الذاكرة الإضافية يمكن أن تحدث فرقًا حقيقيًا للنماذج الكبيرة جدًا.

ومع ذلك، لا يبدو أداء النماذج المتوسطة إلى الكبيرة مثيرًا للإعجاب. هذا واضح بشكل خاص مع Qwen3:32b و Llama3.1:70b—النماذج التي كنت تتوقع فيها سعة الذاكرة العالية أن تبرز. الأداء على DGX Spark لهذه النماذج ليس مثيرًا عند مقارنته مع الفارق في السعر. إذا كنت تعمل بشكل رئيسي مع نماذج في نطاق 30-70B من المعلمات، فقد ترغب في النظر في بدائل مثل محطة عمل مُعدة جيدًا أو حتى Quadro RTX 5880 Ada مع 48 جيجابايت من ذاكرة الفيديو (VRAM).

GPT-OSS 120b على Mac Studio Max

قامت قناة Slinging Bits على YouTube بإجراء اختبارات شاملة لتشغيل GPT-OSS 120b على Ollama مع أحجام سياق مختلفة. تظهر النتائج مشكلة أداء كبيرة: تراجعت سرعة توليد النموذج بشكل كبير من 34 رمز/ثانية إلى مجرد 6 رموز/ثانية مع زيادة حجم السياق.

من المحتمل أن يكون هذا التدهور في الأداء ناتجًا عن ضغط الذاكرة وكيفية إدارة macOS للبنية المعمارية للذاكرة الموحّدة. على الرغم من أن Mac Studio Max يمتلك ذاكرة موحدة مذهلة (حتى 192 جيجابايت في تكوين M2 Ultra)، فإن طريقة التعامل مع النماذج الكبيرة جدًا تحت أحمال السياق المتزايدة تختلف بشكل كبير عن ذاكرة الفيديو (VRAM) المخصصة.

ollama with gpt-oss 120b on mac studio

“ollama-gpt-oss-120b-on-mac-studio-summary”

للتطبيقات التي تتطلب أداءً ثابتًا عبر أطوال السياق المختلفة، هذا يجعل Mac Studio أقل ملاءمة لـ GPT-OSS 120b، رغم قدراته الممتازة الأخرى لمهام الذكاء الاصطناعي. قد تكون لديك فرصة أفضل مع النماذج الأصغر أو النظر في استخدام ميزات إدارة طلبات Ollama المتوازية لزيادة الإنتاجية في السيناريوهات العملية.

GPT-OSS 120b على RTX 4080

كنت أعتقد في البداية أن تشغيل Ollama مع GPT-OSS 120b على جهازي الشخصي لن يكون مثيرًا، لكن النتائج أذهلتني بشكل ممتع. إليك ما حدث عندما قمت بتشغيله مع هذا الاستعلام:

$ ollama run gpt-oss:120b --verbose Compare the weather in state capitals of Australia


Thinking...
We need to compare weather in state capitals of Australia. Provide a comparison, perhaps include 
...
*All data accessed September 2024; any updates from the BOM after that date may slightly adjust the 
numbers, but the broad patterns remain unchanged.*


total duration:       4m39.942105769s
load duration:        75.843974ms
prompt eval count:    75 token(s)
prompt eval duration: 77.341981ms
prompt eval rate:     969.72 tokens/s
eval count:           3483 token(s)
eval duration:        4m39.788119563s
eval rate:            12.45 tokens/s

هنا تكمن الجزء المثير—Ollama مع هذا النموذج اللغوي الكبير كان يعمل بشكل رئيسي على وحدة المعالجة المركزية (CPU)! النموذج ببساطة لا يناسب 16 جيجابايت من ذاكرة الفيديو (VRAM)، لذا قام Ollama بنقل معظمها إلى ذاكرة النظام. يمكنك رؤية هذا السلوك باستخدام أمر ollama ps:

$ ollama ps

NAME            ID              SIZE     PROCESSOR          CONTEXT 
gpt-oss:120b    a951a23b46a1    65 GB    78%/22% CPU/GPU    4096

رغم تشغيله مع تقسيم 78% من وحدة المعالجة المركزية (CPU) / 22% من وحدة معالجة الرسومات (GPU)، لا يزال RTX 4080 يوفر أداءً مقبولاً لنموذج بهذا الحجم. سرعة تقييم المحفز سريعة للغاية بـ 969 رمز/ثانية، وسرعة التوليد بـ 12.45 رمز/ثانية قابلة للتطبيق للكثير من التطبيقات.

هذا مثير للإعجاب بشكل خاص عند النظر إلى:

  1. النموذج يبلغ تقريبًا 4 أضعاف حجم ذاكرة الفيديو (VRAM) المتاحة
  2. معظم الحسابات تتم على وحدة المعالجة المركزية (CPU) (وهو يستفيد من 64 جيجابايت من ذاكرة النظام الخاصة بي)
  3. فهم كيفية استخدام Ollama للوحدات المركزية (CPU) يمكن أن يساعد في تحسين هذا الإعداد بشكل إضافي

من كان سيتخيل أن وحدة معالجة الرسومات (GPU) المستهلكة يمكن أن تتعامل مع نموذج بحجم 117B من المعلمات على الإطلاق، لا سيما مع أداء قابل للتطبيق؟ هذا يظهر قوة إدارة الذاكرة الذكية لـ Ollama وأهمية وجود ذاكرة النظام الكافية. إذا كنت مهتمًا بدمج Ollama في تطبيقاتك، تحقق من هذا الدليل حول استخدام Ollama مع Python.

ملاحظة: بينما يعمل هذا للاختبارات والتجريب، ستلاحظ GPT-OSS يمكن أن يكون لديه بعض العيوب، خاصة مع التنسيقات المهيكلة.

المصادر الأساسية

القراءة المرتبطة

مقارنات الأجهزة والأسعار

دليل Ollama والأداء

مقارنات النماذج