أرسل المطورون تصحيحي تحسين لـ zswap، وانخفض زمن وصول قراءة الصفحة في اختبارات معينة بشكل ملحوظ.

📅 2026-10-07

الملخص:

أرسل مطور Linux أسامة عارف تصحيحين إلى القائمة البريدية لـ kernel بهدف تقليل تنافس الطلبات عندما يقوم zswap بتحميل صفحات المبادلة. Zswap هي آلية ذاكرة التخزين المؤقت للضغط في Linux. يقوم بضغط الصفحات المراد تبديلها وتخزينها مؤقتًا في الذاكرة. إذا كان من الممكن قراءة الصفحات من ذاكرة التخزين المؤقت للضغط، فيمكن تقليل الوصول إلى جهاز المبادلة، وهو أمر مفيد بشكل خاص لتخفيف ضغط الإدخال/الإخراج على القرص عندما تكون الذاكرة ضيقة.

image.webp

المشكلة هي أن التعليمات البرمجية الموجودة تجعل عمليات الكتابة المضغوطة والقراءات المضغوطة تشترك في طلبات الضغط غير المتزامنة لكل وحدة المعالجة المركزية وأقفال كائن المزامنة. إذا تم استباق مهمة كتابة ذات أولوية منخفضة أثناء فترة التأمين، فقد تضطر أيضًا مهمة القراءة ذات الأولوية العالية إلى الانتظار. يقوم التصحيح الأول بتعيين الطلبات وكائنات الانتظار وأقفال كائن المزامنة (mutex) للضغط وإلغاء الضغط على التوالي، بحيث لا يتم حظر القراءة عن طريق كتابة المهام؛ يسمح التصحيح الثاني لخوارزمية ضغط البرامج المتزامنة باستخدام الطلبات الموجودة على المكدس لتجاوز قفل zswap بشكل أكبر. لا تزال الخوارزميات التي تتطلب معالجة غير متزامنة أو سياق طلب إضافي تستخدم طلبات لكل وحدة معالجة مركزية وأقفال كائن المزامنة.

تُظهر الاختبارات المعيارية التي نشرها مؤلف التصحيح أنه في بيئة وحدة المعالجة المركزية الافتراضية الواحدة، انخفض متوسط ​​زمن الوصول الأبطأ للقراءة لكل جولة من 22.3 مللي ثانية إلى 0.97 مللي ثانية؛ وفي بيئة وحدة المعالجة المركزية الافتراضية 8، انخفض من 314 مللي ثانية إلى 7 مللي ثانية. تم إجراء كل اختبار لمدة 5 جولات، باستخدام ضاغط zstd والجهاز الظاهري وقرص الذاكرة كأجهزة تبديل، وإنشاء تحميل من خلال مهام مختلفة ذات أولوية؛ كما تم تخفيض عدد القراءات التي تتجاوز 10 مللي ثانية من 26 إلى 35 مرة في كل جولة في النواة الواحدة إلى الصفر، وفي بيئة متعددة النواة تم تخفيضها من 3 إلى 18 مرة في كل جولة إلى حد أقصى مرة واحدة. يذكر المؤلفون أن المعايير وبرامج الاختبار مكتوبة بمساعدة نماذج لغوية كبيرة.

تعكس هذه الأرقام تحسينات زمن الوصول للقراءة في اختبارات ضغط محددة ولا تعني أن جميع أجهزة Linux أو أحمال العمل اليومية ستشهد نفس التسريع الإجمالي.

لا يزال التصحيح في مرحلة مراجعة القائمة البريدية للنواة ولم يتم دمجه بعد في النواة الرئيسية:

https://lore.kernel.org/lkml/

[email protected]

/

الوسوم ذات الصلة

مقالات مشابهة

التعليقات

0/500
Captcha (click to refresh)
لا توجد تعليقات