يمكن لملفات النماذج المعينة في الذاكرة تقليل استخدام ذاكرة RAM المكررة، لأن العمليات تشير إلى الصفحات النظيفة المدعومة بالملف نفسه عبر ذاكرة التخزين المؤقت للصفحات في نظام التشغيل.
لا يتطلب تحميل عاملي نموذج محليين دائمًا وجود نسختين كاملتين من ملف الأوزان في الذاكرة الفعلية. عند استخدام تعيين الذاكرة، تتلقى كل عملية عناوين افتراضية مرتبطة بإزاحات الملف، وتُحمَّل الصفحات عند الطلب. ويمكن لنظام التشغيل تلبية طلبات الصفحات النظيفة المتطابقة من نسخة فعلية واحدة مخزنة مؤقتًا، مع إبقاء حالة وقت التشغيل الخاصة بكل عملية منفصلة.
يربط تعيين الذاكرة العناوين الافتراضية بإزاحات الملفات
يظهر الملف المعين داخل مساحة عناوين العملية من دون أن يقرأ التطبيق الملف بأكمله في مخزن مؤقت منفصل على الكومة. ويؤدي الوصول إلى صفحة غير موجودة إلى حدوث خطأ صفحات؛ ثم تُحمّل النواة الصفحة المقابلة المدعومة بالملف أو تعثر عليها، وتحدّث جدول صفحات العملية.
يوثّق دليل تعيين الذاكرة في Linux تعيينَي MAP_SHARED وMAP_PRIVATE والعلاقة بين التحديثات على التعيين والكائن الأساسي. وعادةً ما تبقى أوزان النماذج للقراءة فقط بيانات نظيفة مدعومة بالملف، ما يجعلها مؤهلة لإعادة الاستخدام عبر ذاكرة التخزين المؤقت للصفحات. ويظل هذا التمييز مهمًا في ظروف التشغيل المنزلية الواقعية.
يمكن لترحيل الصفحات عند الطلب تقصير وقت بدء التشغيل والحد من الذاكرة المقيمة عند لمس جزء فقط من النموذج. لكنه قد ينقل التكلفة إلى أول وصول، لذلك قد تظهر أخطاء الصفحات الباردة وزمن تخزين البيانات أثناء الاستدلال بدلًا من ظهورها خلال مرحلة تحميل صريحة.
يمكن لذاكرة التخزين المؤقت للصفحات خدمة عدة عمليات في الوقت نفسه
يمكن لعمليتين تعيين inode النموذج نفسه وإزاحاته في مساحتي عناوين افتراضيتين مختلفتين. وعندما تقرأ كلتاهما الصفحة النظيفة نفسها، تستطيع النواة تعيين الصفحة الفعلية نفسها المخزنة مؤقتًا إلى جدولي صفحات العمليتين. وتبقى التعيينات الافتراضية منفصلة، بينما يمكن مشاركة البيانات المقيمة الأساسية.
تشرح وثائق Linux الخاصة بـ بيانات تعيين الصفحات كيف يمكن لمساحة المستخدم فحص تعيينات الصفحات ومعلومات إطارات الصفحات، مع مراعاة قيود الوصول. وتساعد هذه الواجهات في إظهار ما إذا كانت المناطق الافتراضية المنفصلة ظاهريًا تشير إلى صفحات فعلية مشتركة. وينبغي أن تظل الحالة الوسيطة ظاهرة أثناء التشخيص والمراجعة اللاحقين.
ولهذا قد تؤدي إضافة RSS لكل عملية إلى المبالغة في تقدير الاستخدام الفعلي الإجمالي: إذ تظهر الصفحة المشتركة كمقيمة في كل عملية. ويوزّع حجم المجموعة المتناسب الصفحات المشتركة على التعيينات، ويكون عادةً أكثر فائدة عند تقدير البصمة المجمعة لعاملي النموذج.
تظل الحالة الخاصة والصفحات المتسخة متضاعفة
تُنشأ ذاكرات KV المؤقتة، والتنشيطات، وساحات مخصص الذاكرة، ومخازن الذاكرة المؤقتة للمجزئ، وحالة الطلب لكل عامل أو جلسة. وتؤدي الكتابة عبر تعيين خاص إلى تشغيل النسخ عند الكتابة، ما ينشئ صفحة مجهولة لا يمكنها بعد ذلك مشاركة النسخة النظيفة المدعومة بالملف. كما تمنع إصدارات الملفات المختلفة إعادة الاستخدام.
يصنّف دليل smaps في Linux كل تعيين إلى خاص ومشترك ونظيف ومتسخ، كما يوضح دليل smaps. وتفسر هذه الفئات سبب استمرار ظهور زيادة كبيرة في الذاكرة لدى عاملين يتشاركان الأوزان، مع زيادة التزامن وطول السياق.
الحد الفاصل هنا هو أن التعيين يقلل تكرار الأوزان النظيفة، لكنه لا يقلل إجمالي ذاكرة الاستدلال. وقد تتسبب ملفات النماذج المركبة عبر الشبكة أيضًا في زمن غير مستقر لأخطاء الصفحات، كما قد تخصص محمّلات الضغط أو التحويل تمثيلًا ثانيًا مفككًا، ما يبطل المشاركة المتوقعة.
قارن بين عامل واحد وعاملين معينين في الذاكرة
ابدأ من ذاكرة تخزين مؤقت باردة، وشغّل عامل نموذج واحدًا، ونفّذ مطالبة ثابتة، وسجّل وقت بدء التشغيل، وأخطاء الصفحات، وRSS، وحجم المجموعة المتناسب، والذاكرة الخاصة المتسخة. ثم شغّل عاملًا ثانيًا مماثلًا وكرّر الاختبار من دون تغيير ملف النموذج أو خيارات المحمّل.
اربط النتيجة بمقايضات الضغط الواردة في مقايضات الضغط: فالملفات الأصغر تساعد في التخزين، بينما تعتمد فوائد التعيين على التمثيل المستخدم فعليًا في الذاكرة. وافحص كل تعيين للنموذج في smaps بدلًا من الاعتماد على إجمالي عملية واحدة.
يُعد الاختبار ناجحًا إذا أضاف العامل الثاني ذاكرة أوزان أقل بكثير من العامل الأول، مع إنتاج المخرجات نفسها وزمن بارد مقبول. وإذا تضاعف حجم المجموعة المتناسب تقريبًا، فتحقق من هوية الملف، والتعيينات القابلة للكتابة، وفك الضغط، والنسخ المخفية قبل افتراض أن mmap غير فعّال.
مركز التكنولوجيا والذكاء الاصطناعي
المزيد للقراءة

معايرة درجة البحث الخاص: كيف يتحول التشابه الخام إلى مؤشر ثقة قابل للاستخدام
تعرّف على سبب عدم كون تشابه جيب التمام مقياسًا للثقة، وكيف تعاير الاستعلامات المُعنونة الدرجات، وكيف تراقب العتبات عند تغيّر مجموعة البيانات الخاصة.

محلية NUMA للذكاء الاصطناعي المحلي: لماذا يغيّر تموضع الذاكرة معدل تغذية المسرّع
تعرّف على كيفية تأثير بنية CPU وRAM وPCIe في تزويد المسرّعات بالبيانات، ولماذا قد يختلف التوزيع التلقائي، وكيفية قياس أداء ربط NUMA بأمان.

مسارات تدقيق خاصة بالذكاء الاصطناعي: كيف تعيد سجلات الأحداث بناء قرارات الوكلاء
تعرّف على ما يجب أن يسجّله مسار تدقيق الوكيل، ولماذا تكون السجلات العادية غير مكتملة، وكيفية إعادة تشغيل سير عمل خاص دون كشف البيانات...

