ذاكرة الوصول العشوائي (RAM) وذاكرة الوصول العشوائي للفيديو (VRAM): كيف ترتبطان في خادم الذكاء الاصطناعي
أول سؤال يطرحه المشترون عند شراء خادم ذكاء اصطناعي هو "كم عدد وحدات معالجة الرسومات؟". والثاني هو "ما نوع وحدة المعالجة المركزية؟". أما السؤال الذي يحدد فعلياً كفاءة الجهاز - والذي غالباً ما تتجاهله مواصفاته - فهو كيفية توزيع سعة نظامي الذاكرة. فجهاز بأربع وحدات معالجة رسومات وذاكرة فيديو 192 جيجابايت وذاكرة نظام 32 جيجابايت يكون ضعيفاً. بينما الجهاز نفسه بذاكرة نظام 1 تيرابايت يُعدّ، بالنسبة لمعظم التطبيقات، هدراً للموارد. والحل الأمثل يكمن في خيار وسط، ويعتمد على التطبيقات التي تستخدمها فعلياً.
تشرح هذه المقالة وظيفة كل من ذاكرة الوصول العشوائي للفيديو (VRAM) وذاكرة الوصول العشوائي للنظام (System RAM)، وكيفية ارتباطهما، ومواطن اختناقات النطاق الترددي، والنسب العملية المُثلى. هذه المقالة موجهة للمشترين ومُكاملِي الأنظمة الذين يُحددون حجم البنية التحتية، وليست موجهة للمهندسين الذين يكتبون نواة CUDA.
ما تحتويه ذاكرة الوصول العشوائي للفيديو (VRAM) فعليًا
عند تحميل نموذج على وحدة معالجة الرسومات، يتم تخزين ثلاثة أشياء في ذاكرة الوصول العشوائي للفيديو (VRAM):
- أوزان النموذج. يبلغ حجم نموذج 70B عند FP16 140 جيجابايت؛ وعند INT8، 70 جيجابايت؛ وعند INT4 (التكميم الذاتي المضيف الشائع)، 35-40 جيجابايت اعتمادًا على مخطط التكميم.
- ذاكرة التخزين المؤقت KV. تكلفة الذاكرة لكل طلب انتباه. يبلغ استهلاك الذاكرة في نموذج 70 بايت عند سياق 8 كيلوبايت في تدفق واحد من 1 إلى 2 جيجابايت. أما عند سياق 32 كيلوبايت، فيبلغ من 4 إلى 8 جيجابايت. في حالة المعالجة المجمعة (10 إلى 20 طلبًا متزامنًا)، فإن هذا الاستهلاك يملأ ذاكرة الوصول العشوائي للفيديو المتبقية، وليس الأوزان.
- التفعيلات ومساحة العمل. وسائط التمرير الأمامي، ومساحة عمل الانتباه، ومساحة عمل النواة. بضعة غيغابايت للاستدلال؛ وأكثر من ذلك بكثير أثناء التدريب لأن التنشيطات تُخزن للتمرير العكسي.
للتدريب، أضف حالة المُحسِّن (يحتفظ آدم بقيمتين من نوع FP32 لكل وزن - أي ما يقارب 8 أضعاف حجم وزن FP16) و التدرجات (حجم الوزن 1×). لهذا السبب، يتطلب تدريب نموذج 70B من الصفر 8 عقد H100 أو A100 بسعة 80 جيجابايت، وهو أمر لا يوفره جهاز Kentino. أما الضبط الدقيق باستخدام LoRA أو QLoRA فهو أمر مختلف، ويمكن تنفيذه بسهولة على جهاز Blackwell مزود بأربع وحدات معالجة رسومية من طراز 5090 أو Pro 6000.
الآثار العملية: حجم النموذج في ذاكرة الوصول العشوائي للفيديو (VRAM) ليس "عدد المعلمات × عدد البايتات لكل معلمة". بالنسبة لنشر نموذج بحجم 70 بايت في سياق INT4 باستخدام 8 كيلوبايت، خطط 40 جيجابايت للأوزان + 20-40 جيجابايت من ذاكرة التخزين المؤقت KV عند معالجة الدفعات الواقعية + 4 جيجابايت من النفقات العامة يُعادل هذا حوالي 70 جيجابايت. يُمكن وضع هذه السعة على بطاقة RTX Pro 6000 Blackwell Server Edition واحدة (بسعة 96 جيجابايت)، أو يتطلب الأمر من 3 إلى 4 بطاقات RTX 5090 لأي دفعة معقولة. يُعدّ إجمالي سعة ذاكرة الفيديو (VRAM) أقل أهمية من سعة ذاكرة الفيديو لكل بطاقة وكيفية توصيلها.
عرض نطاق ذاكرة الوصول العشوائي للفيديو: الرقم الذي يحدد سرعة توليد الرموز المميزة
تعتمد عملية توليد الرموز في نموذج LLM المحوّل على عرض النطاق الترددي، وليس على القدرة الحسابية. يقرأ كل رمز مُولّد النموذج بأكمله من ذاكرة الوصول العشوائي للفيديو (VRAM) عبر ناقل الذاكرة. لا يُعدّ رقم TFLOPS المذكور في ورقة المواصفات ذا أهمية كبيرة للاستدلال؛ فالمهم هو عرض نطاق الذاكرة بالجيجابايت في الثانية (GB/s).
| وحدة معالجة الرسوميات: | VRAM | نوع الذاكرة | عرض النطاق الترددي | مصدر |
|---|---|---|---|---|
| RTX 4090 | 24 جيجا بايت | GDDR6X | 1.01 TB / s | مواصفات NVIDIA |
| RTX 5090 | 32 جيجا بايت | GDDR7 | 1.79 TB / s | مواصفات NVIDIA |
| RTX Pro 6000 Blackwell (محطة عمل) | 96 جيجا بايت | GDDR7 ECC | 1.79 TB / s | مواصفات NVIDIA |
| RTX Pro 6000 Blackwell Server Ed. | 96 جيجا بايت | GDDR7 ECC | 1.79 TB / s | مواصفات NVIDIA |
| L40 | 48 جيجا بايت | GDDR6 ECC | 0.86 TB / s | مواصفات NVIDIA |
| L4 | 24 جيجا بايت | GDDR6 | 0.30 TB / s | مواصفات NVIDIA |
| H100 SXM (للمرجعية، غير مباع) | 80 جيجا بايت | HBM3 | 3.35 TB / s | مواصفات NVIDIA |
| H200 SXM (للمرجعية، غير مباع) | 141 جيجا بايت | HBM3e | 4.8 TB / s | مواصفات NVIDIA |
لا تبيع شركة كينتينو معالجات H100 أو H200؛ وإنما تم إدراجها للمقارنة العادلة. فهي لا تزال تتصدر قائمة المعالجات من حيث عرض النطاق الترددي، وهذا هو السبب الرئيسي الذي يدفع مزودي خدمات الحوسبة السحابية العملاقة إلى شرائها. يبلغ فرق السعر من 6 إلى 10 أضعاف، بينما يبلغ فرق عرض النطاق الترددي في الاستدلال أحادي التدفق ضعفين. بالنسبة لأحمال العمل غير المخصصة لمزودي خدمات الحوسبة السحابية العملاقة، فإن هذه الحسابات لا تصب في مصلحة معالجات HBM.
قاعدة تقريبية لتوليد الرموز المميزة أحادية التدفق في INT4: tok/s ≈ bandwidth (GB/s) / model size (GB)، مضروبًا في عامل كفاءة المكدس من 0.6 إلى 0.8. نموذج 70 بايت في INT4 (~40 جيجابايت) على معالج 5090 واحد:
1790 GB/s × 0.7 / 40 GB ≈ 31 tok/s (single stream, no batching)
يتطابق هذا مع ما نقيسه على جهاز الاختبار. يؤدي تجميع البيانات إلى رفع معدل النقل الإجمالي إلى 50-100 توكو/ثانية، لكن سرعة كل تدفق تبقى قريبة من الحد الأقصى لعرض النطاق الترددي. لا يؤثر حجم ذاكرة الوصول العشوائي للنظام على هذا الرقم.
ذاكرة الوصول العشوائي للفيديو ECC: مهمة للتدريب، وأقل أهمية للاستدلال
تتميز سلسلة بطاقات RTX Pro 6000 Blackwell بذاكرة فيديو ECC (تصحيح الأخطاء). أما بطاقات المستخدمين العاديين (5090، 4090) فلا تحتوي عليها. قد يبدو هذا الأمر بالغ الأهمية في التسويق، لكن الحقيقة أكثر تعقيدًا.
تقوم ذاكرة ECC VRAM باكتشاف وتصحيح أخطاء الذاكرة أحادية البت أثناء النقل. وبدونها، ينتشر الخطأ - عادةً بشكل غير مرئي أثناء الاستدلال (رمز مميز واحد مختلف قليلاً عما كان عليه)، وأحيانًا بشكل كارثي أثناء التدريب (انتشار NaN، تباعد، مسار ميت).
عندما يكون لـ ECC أهمية:
- التدريب المتواصل لفترات طويلة. إنّ حركة البيانات في الذاكرة خلال عمليات تستغرق عدة أيام تجعل حدوث تغيير مفاجئ في البتات احتمالاً وارداً. إنّ فقدان عملية تشغيل مدتها 48 ساعة بسبب خطأ غير مكتشف أسوأ بكثير من فقدانها بسبب خطأ تم تصحيحه.
- أعباء عمل رقمية بدون تدخل بشري. المحاكاة، والنمذجة، وأي شيء يتم استهلاكه في المراحل اللاحقة دون التحقق من صحته.
- أعباء عمل منظمة. إذا كان نظام الامتثال الخاص بك يتطلب إمكانية إعادة إنتاج البيانات بدقة متناهية، فإن تصحيح الأخطاء الإلكترونية (ECC) إلزامي.
عندما يكون تسوس الأسنان في مرحلة الطفولة تجميليًا في الغالب:
- خدمة الاستدلال في برنامج ماجستير القانون. معدل انعكاس البتات في ذاكرة GDDR7 الحديثة منخفضٌ لدرجة أن تأثيره على جودة الإخراج يكاد يكون معدومًا. لقد قمنا بتشغيل بطاقات 5090 المخصصة للمستهلكين تحت ضغط استدلال عالٍ لعدة أشهر دون رصد أي خلل يُعزى إلى أخطاء في ذاكرة الوصول العشوائي للفيديو (VRAM).
- توليد الصور والفيديو. مستوى الضوضاء الإدراكي يبتلع خطأ بت واحد.
- التطوير والتجريب. إعادة التشغيل وإعادة التنفيذ أمر غير مكلف.
بصراحة: إذا كان عبء العمل يعتمد بشكل أساسي على الاستدلال، فإنّ سعر Pro 6000 المميز يغطي تكلفة 96 جيجابايت من ذاكرة الوصول العشوائي للفيديو (VRAM) وبرامج التشغيل المعتمدة، وليس تكلفة تصحيح الأخطاء (ECC). أما إذا كان عبء العمل يعتمد على التدريب، فإنّ تصحيح الأخطاء (ECC) هو الخيار الأمثل. نحن نبيع كلا النوعين، وسنؤكد لك نفس الكلام عبر الهاتف.
ذاكرة الوصول العشوائي للنظام: كم تبلغ، وحقيقة تفريغ وحدة المعالجة المركزية
تقوم ذاكرة الوصول العشوائي للنظام بأربعة أشياء في خادم الذكاء الاصطناعي:
- تقوم مراحل تحميل النموذج من القرص إلى ذاكرة الوصول العشوائي للفيديو (VRAM). ينقل ملف بحجم 70 بايت البيانات من ذاكرة NVMe إلى ذاكرة التخزين المؤقت للصفحات، ثم إلى ذاكرة الوصول العشوائي للنظام، ثم إلى ذاكرة الوصول العشوائي للفيديو. إذا كانت ذاكرة الوصول العشوائي للنظام أصغر من حجم الملف، فسيفشل التحميل أو سيتعطل.
- يدعم نظام التشغيل، وخادم الاستدلال (vLLM، llama.cpp، Triton)، والخدمات المساعدة (قاعدة بيانات المتجهات، المراقبة، قائمة انتظار الطلبات).
- يحتفظ بحالة المُجزئ، وقوائم الانتظار للطلبات، ومخازن المعالجة المسبقة/اللاحقة.
- يستضيف اختيارياً الطبقات التي يتم تفريغها من وحدة المعالجة المركزية. هذا هو الشيء الذي يبالغ الناس في تقديره.
تتيح لك خاصية تفريغ وحدة المعالجة المركزية، في ملف llama.cpp وبيئات التشغيل المشابهة، تشغيل نموذج أكبر من ذاكرة الوصول العشوائي للفيديو (VRAM) عن طريق الاحتفاظ ببعض الطبقات على وحدة المعالجة المركزية وبثها عبر وحدة معالجة الرسومات (GPU) لكل رمز مميز. إنها تعمل. ولكن في معظم الحالات الواقعية، تُعدّ هذه العملية مُرهقة للغاية.
الأرقام: يتمتع معالج 5090 بنطاق ترددي لذاكرة الفيديو يبلغ 1.79 تيرابايت/ثانية. بينما توفر منصة EPYC Genoa ذات 12 قناة مع ذاكرة DDR5-4800 نطاقًا تردديًا إجماليًا يبلغ حوالي 460 جيجابايت/ثانية. يُعدّ تفريغ وحدة المعالجة المركزية أبطأ بمقدار 4-6 مرات لكل رمز مميز مقارنةً بالاستخدام الكامل لذاكرة الوصول العشوائي للفيديو، على الأقل في أفضل الأحوال. — هذا يفترض وجود NUMA مثالي محليًا ووحدة معالجة مركزية غير مشغولة أيضًا بتكاليف الخدمة الإضافية.
معايير الأداء من صندوق 4×5090 مع --n-gpu-layers تم ضبطه:
- يعمل بالكامل على وحدة معالجة الرسومات (70 بايت INT4 عبر 4 × 24 جيجابايت): 28-32 توكو/ثانية تدفق واحد.
- 80% على وحدة معالجة الرسومات، 20% على وحدة المعالجة المركزية: 6-9 توكو/ثانية.
- 50/50: 2–4 توكو/ثانية.
هذا ليس رأي كينتينو، بل هو توضيح لكيفية ارتباط عرض نطاق ذاكرة DDR5 بعرض نطاق ذاكرة GDDR7. يكمن حل مشكلة "عدم توافق النموذج مع ذاكرة الفيديو" في استخدام وحدات معالجة رسومات (GPUs) أفضل أو أكثر، وليس في ذاكرة النظام مع خاصية تفريغ العمليات. ويُستثنى من ذلك منصة AMD Ryzen AI Max 300 ذات الذاكرة الموحدة، فهي تختلف تمامًا عن غيرها، ولا تتناولها هذه الدراسة.
اشترِ ذاكرة وصول عشوائي (RAM) كافية للنظام لتحميل البيانات وتقديمها، وليس لإجراء العمليات الحسابية.
كم تبلغ سعة ذاكرة الوصول العشوائي للنظام، على وجه التحديد
قاعدة عمل لبناء الذكاء الاصطناعي المعرفي:
System RAM ≈ 1.5 × total VRAM, rounded to the next standard config.
بالنسبة لجهاز كمبيوتر مزود بأربع وحدات معالجة رسومية:
| نبنيها | إجمالي VRAM | ذاكرة الوصول العشوائي الموصى بها للنظام |
|---|---|---|
| 4× RTX 4090 (إجمالي 96 جيجابايت) | 96 جيجا بايت | 128 جيجا بايت |
| 4× RTX 5090 (إجمالي 128 جيجابايت) | 128 جيجا بايت | 192 جيجا بايت |
| 4× RTX Pro 6000 BW (إجمالي 384 جيجابايت) | 384 جيجا بايت | 512 جيجا بايت |
| 4× L40 (إجمالي 192 جيجابايت) | 192 جيجا بايت | 256 جيجا بايت |
في أنظمة المعالجة الرسومية ذات 8 وحدات معالجة رسومية، لا يكون توسيع ذاكرة الوصول العشوائي خطيًا تمامًا - لذا يُنصح بالبقاء ضمن قنوات مقبس واحد قدر الإمكان. نستخدم افتراضيًا 256 جيجابايت مع 8 وحدات من نوع 5090 و512 جيجابايت مع 8 وحدات من نوع Pro 6000 Blackwell.
للقاعدة نمطان للفشل عند الحواف:
- مواصفات غير كافية: 64 جيجابايت على جهاز مزود بـ 8 وحدات معالجة رسومية. يتم تحميل النموذج ببطء، ولا تستطيع ذاكرة التخزين المؤقت للصفحات الاحتفاظ بالأوزان اللازمة لإعادة التحميل السريع، ويبدأ التشغيل المتزامن بالإضافة إلى الخدمات المساعدة (pgvector، والمراقبة) في استخدام الذاكرة الافتراضية.
- مواصفات مبالغ فيها: سعة تخزين ٢ تيرابايت على جهاز استدلال رباعي المعالجات الرسومية. يعمل الجهاز بشكل جيد، لكنك أنفقت ما بين ٤٠٠٠ و٨٠٠٠ يورو على ذاكرة الوصول العشوائي (RAM) التي لا تُستخدم. الاستثناء الوحيد هو استضافة العديد من النماذج وتدويرها بين ذاكرة الوصول العشوائي للفيديو (VRAM) وذاكرة الوصول العشوائي (RAM) - حينها تعمل ذاكرة النظام الكبيرة كذاكرة تخزين مؤقتة نشطة. هذا نادر الحدوث خارج مختبرات الأبحاث.
توجد حالة "64 جيجابايت كافية": جهاز مزود بمعالجين رسوميين، ونموذج واحد في كل مرة، بدون تزامن، وبدون خدمات مساعدة. ليس خادمًا احترافيًا، بل محطة عمل احترافية للمطورين.
قنوات EPYC: من أين تأتي سعة النطاق الترددي فعليًا
يتناسب عرض نطاق ذاكرة الوصول العشوائي (RAM) في نظام AMD EPYC (الذي يُعدّ أساسًا لمعظم خوادمنا ذات 8 وحدات معالجة رسومية) مع عدد قنوات الذاكرة المُستخدمة، وليس مع سرعة وحدة DIMM المعلنة. القنوات مُخصصة لكل مقبس، ويتم استخدام وحدة DIMM واحدة لكل قناة.
| المنظومة | عدد القنوات لكل مقبس | سرعة وحدة الذاكرة (النموذجية) | عرض النطاق الترددي لكل مقبس |
|---|---|---|---|
| EPYC 9004 (جنوة) | 12 | DDR5-4800 | ~460 جيجابايت/ثانية |
| EPYC 9005 (تورينو) | 12 | DDR5-6000 | ~576 جيجابايت/ثانية |
| EPYC 9005 Turin Dense | 12 | DDR5-6400 | ~614 جيجابايت/ثانية |
| معالج Xeon SP من الجيل الخامس | 8 | DDR5-5600 | ~358 جيجابايت/ثانية |
شيئان من هذا الجدول:
- قم بتعبئة جميع القنوات الاثنتي عشرة على منصة EPYC Genoa/Turin للحصول على عرض النطاق الترددي المعلن عنه. ثمانية وحدات DIMM في نظام ذي اثنتي عشرة قناة تعطي ثماني قنوات من عرض النطاق الترددي، وليس اثنتي عشرة. نرى هذا الخطأ في التكوين بشكل متكرر في الميدان.
- يحدد عدد وحدات DIMM الحد الأدنى لحجم ذاكرة الوصول العشوائي المعقول. ١٢ × ١٦ جيجابايت = ١٩٢ جيجابايت. ١٢ × ٣٢ جيجابايت = ٣٨٤ جيجابايت. التكوينات "الموفرة" التي لا تستخدم كامل سعة الذاكرة (ست وحدات DIMM سعة ٣٢ جيجابايت للحصول على ١٩٢ جيجابايت) تُهدر نصف عرض النطاق الترددي. تجنب هذا الخيار.
يوفر المقبس المزدوج 24 قناة إجمالاً؛ ويتضاعف عرض النطاق الترددي إجمالاً، ولكن فقط إذا كان عبء العمل يحترم NUMA.
نوما: تكلفة عبور الخط
يحتوي خادم EPYC ثنائي المقبس على شريحتين للمعالج، لكل منهما وحدات تحكم ذاكرة خاصة بها، وفتحات DIMM، ووحدة PCIe الجذرية. يتم الانتقال من ذاكرة أحد المقبسين إلى وحدة معالجة الرسومات في المقبس الآخر عبر شبكة Infinity Fabric - وهي عملية سريعة، ولكنها ليست بنفس سرعة الاتصال المحلي.
أرقام تقريبية ولكنها مفيدة:
| مسار | عرض النطاق الترددي | عقوبة زمن الاستجابة مقابل المحلي |
|---|---|---|
| مقبس وحدة المعالجة المركزية 0 → وحدة الذاكرة المحلية | ~576 جيجابايت/ثانية | 1× (خط الأساس) |
| مقبس وحدة المعالجة المركزية 0 → وحدة DIMM عن بعد (عبر النسيج) | ~256–320 جيجابايت/ثانية | زمن الاستجابة من 1.6 إلى 2 ضعف |
| وحدة معالجة الرسومات على المقبس 0 → وحدة الذاكرة المحلية (عبر PCIe + DMA) | ~28 جيجابايت/ثانية (PCIe 5.0 x16) | 1 × |
| وحدة معالجة الرسومات على المقبس 0 ← وحدة الذاكرة على المقبس 1 | ~14–20 جيجابايت/ثانية | زمن الاستجابة من 1.5 إلى 2 ضعف |
في عملية الاستدلال، عادةً ما تكون عقوبة NUMA غير مرئية - فبمجرد أن يكون النموذج في ذاكرة الوصول العشوائي للفيديو (VRAM)، يصبح تدفق البيانات في ذاكرة الوصول العشوائي للنظام ضئيلاً. تُصبح NUMA مهمة عندما:
-
جارٍ تحميل النموذج. يستغرق تحميل 100 جيجابايت من العقدة الخاطئة وقتًا أطول بشكل ملحوظ. اربط بـ
numactlأو قم بتعيين التقارب في وقت تشغيل الحاوية الخاص بك. - المعالجة المسبقة من جانب وحدة المعالجة المركزية (التجزئة على نطاق واسع، فك تشفير الصور، إعادة تشكيل الصوت). يؤدي استخدام مُجزئ الكلمات المشغول على المقبس 0 مع وحدات معالجة الرسومات المتصلة بالمقبس 1 إلى فقدان 20-40% من الإنتاجية.
- التدريب باستخدام حالة المُحسِّن المُخفَّفة عن وحدة المعالجة المركزية (DeepSpeed Zero-Offload). حالة NUMA الخارجية تضاعف زمن الخطوة. تثبيت كل شيء.
إجابة عملية: الوضع الافتراضي هو استخدام مقبس واحد لخوادم الاستدلال إلا إذا كان لديك سبب محدد لاستخدام معالج ثنائي. يتوفر المعالج ثنائي المقبس في مجموعتنا (K-AI 256 Turin Dual) لأن بعض أحمال العمل - مثل التدريب المتزامن والاستدلال، وتخزين المتجهات الكبيرة في الذاكرة، وثماني وحدات معالجة رسومية تحتاج إلى مجموعتين جذريتين - تتطلب ذلك بالفعل. أما معظمها فلا يتطلب ذلك. معالج Turin أحادي المقبس ذو 12 قناة وسعة تخزين تتراوح بين 384 و512 جيجابايت يُلبي معظم حالات استخدام الاستدلال.
DDR5 RDIMM مقابل LRDIMM، و ECC
ستكون ذاكرة الوصول العشوائي للخوادم في عام 2026 من نوع DDR5 ECC بشكل موحد. الخيار هو بين RDIMM و LRDIMM.
- RDIMM (مسجل): ذاكرة خادم قياسية، مسار أوامر مُخزّن مؤقتًا، تصحيح الأخطاء ECC مُضمّن. تنظيف وحدات تصل سعتها إلى 64 جيجابايت، و128 جيجابايت على بعض المنصات.
- LRDIMM (مخفض الحمل): يُضيف هذا التحديث مخزنًا مؤقتًا للذاكرة يُقلل من حمل ناقل البيانات، مما يُتيح سعة أكبر لكل قناة. وهو مطلوب للوحدات التي تزيد سعتها عن 128 جيجابايت. يُؤدي إلى زيادة طفيفة في زمن الاستجابة، وهو تأثير هامشي في أحمال العمل الحقيقية.
الإعدادات الافتراضية في كينتينو: وحدات ذاكرة RDIMM بسعة 32 أو 64 جيجابايت بتردد DDR5-4800 (جينوا) أو DDR5-6000 (تورينو). تُستخدم وحدات LRDIMM فقط عند الحاجة إلى سعة تخزين 1 تيرابايت أو أكثر، أو في حالات نادرة خارج نطاق التدريب أو استضافة نماذج متعددة. دعم تصحيح الأخطاء (ECC) إلزامي - لا تتوفر وحدات DIMM للخوادم بدون دعم تصحيح الأخطاء في المنصات التي نوفرها.
ما الذي يتعطل عندما تخون الذاكرة؟
أنماط الفشل المتوقعة، مرتبة تقريبًا حسب التكرار:
- تحميل النموذج بطيء على ذاكرة الوصول العشوائي ذات المواصفات المنخفضة. يبلغ حجم جهاز 70B حوالي 40 جيجابايت على القرص. مع ذاكرة وصول عشوائي (RAM) للنظام بسعة 32 جيجابايت، يؤدي التحميل إلى استهلاك ذاكرة التخزين المؤقت للصفحات بشكل كبير، وتتحول عملية بدء التشغيل البارد التي تستغرق 40 ثانية إلى 4 دقائق. الحل: زيادة الحد الأدنى لذاكرة الوصول العشوائي للفيديو (VRAM) بمقدار 1.5 ضعف.
- انخفاض عرض النطاق الترددي إلى النصف بسبب قنوات DIMM غير المكتظة. ست وحدات ذاكرة DIMM في معالج EPYC ذي اثنتي عشرة قناة. تنخفض معالجة البيانات المسبقة التي تعتمد على وحدة المعالجة المركزية إلى النصف دون تنبيه. الحل: ملء جميع القنوات.
-
الوصول الخارجي إلى NUMA على مقبس مزدوج مع تقارب غير متطابق. إصلاح:
numactl --cpunodebind=0 --membind=0أو وضع NUMA الخاص بالإطار. -
نفاد الذاكرة عند معالجة دفعة كبيرة على ذاكرة تخزين مؤقتة للقيم المفتاحية ذات تقدير منخفض. ماجستير القانون الافتراضي
--gpu-memory-utilization 0.9يُتيح ذلك هامشًا بنسبة 10%، لكنّ 64 عملية متزامنة بحجم سياق 32 كيلوبايت لا تزال تتجاوز سعة بطاقة 24 جيجابايت. الحل: سياق أقصر، أو دفعة أصغر، أو ذاكرة وصول عشوائي للفيديو أكبر. - يؤدي تفريغ وحدة المعالجة المركزية إلى "حفظ" عملية البناء ويدمر الإنتاجية. "الخادم بطيء" - اتضح أن 30% من الطبقات تعتمد على وحدة المعالجة المركزية بسبب ضيق ذاكرة الوصول العشوائي للفيديو. خطأ في تحديد الحجم، وليس في الضبط. اشترِ العدد المناسب من وحدات معالجة الرسومات مُسبقًا.
لا شيء من هذه الأمور غريب. جميعها تظهر في الشهر الأول من التثبيت الجديد.
متى يجب الانتباه؟
بالنسبة لعمليات النشر التي تعتمد على الاستدلال فقط:
- ما هي النماذج التي تحتاج إلى استضافتها في وقت واحد؟ اجمع أحجام ذاكرة الوصول العشوائي (INT4). أضف 40-60% لذاكرة التخزين المؤقت للقيم والمفاتيح (KV) في الدفعة المستهدفة والسياق. هذا هو الحد الأدنى لذاكرة الوصول العشوائي للفيديو (VRAM).
- ما هو هدف زمن الاستجابة لكل رمز مميز؟ يوضح لك حجم أكبر نموذج مقسومًا على عرض النطاق الترددي لكل بطاقة ما إذا كنت بحاجة إلى بطاقة سريعة واحدة، أو أربع بطاقات متوسطة، أو ثماني بطاقات أصغر.
- الحد الأدنى لذاكرة الوصول العشوائي للنظام: 1.5 ضعف إجمالي ذاكرة الوصول العشوائي للفيديو، موزعة على جميع قنوات الذاكرة. يتم تقريبها إلى أقرب قيمة قياسية.
- مقبس كهربائي فردي أم مزدوج؟ الوضع الافتراضي أحادي. استخدم الوضع الثنائي فقط عندما تحتاج إلى ثماني وحدات معالجة رسومية على مجموعتين جذريتين PCIe، أو عندما تقوم بدمج التدريب الكبير مع الاستدلال.
- اي سي سي؟ نعم، إذا كان التدريب جزءًا أساسيًا من عبء العمل أو إذا كان الامتثال يتطلبه. تجنب الاستدلال البحت إذا كانت الميزانية محدودة.
بالنسبة للنماذج التي تدعم التدريب، تتغير قاعدة ذاكرة الوصول العشوائي (RAM) إلى ضعفين أو ثلاثة أضعاف إجمالي ذاكرة الوصول العشوائي للفيديو (VRAM) - حيث تعتمد أطر عمل مثل DeepSpeed وMegatron على ذاكرة الوصول العشوائي للنظام أثناء تنفيذ الخطوات. ويصبح تطبيق نظام NUMA إلزاميًا.
تتناول المقالات اللاحقة باقي مكونات النظام: بنية PCIe وتخصيص المسارات (W02)، ووحدات رفع وحدة معالجة الرسومات وأنماط تعطلها (W03) تحديد حجم وحدة تزويد الطاقة وواقع استخدام وحدتي تزويد الطاقة (W04وتصميم الغلاف الحراري (W05). الذاكرة هي أول عنصر يجب ضبطه بشكل صحيح لأنها تقع بين كل مكون آخر - فالذاكرة الخاطئة تجعل كل شيء آخر يبدو معطلاً.
هذا جزء من ويكي كينتينو، وهي سلسلة مرجعية حول الحوسبة الذكية، والروبوتات، والأنظمة التي تربط بينهما. نرحب بالتعليقات والتصويبات على info@kentino.com.