تم إعداد التحسينات لنواة Linux لتحسين أداء برامج جدولة الإدخال/الإخراج

واصل Jens Axboe، مبتكر io_uring وبرامج جدولة الإدخال/الإخراج CFQ وDeadline وNoop، تجاربه مع تحسين الإدخال/الإخراج في نواة Linux. هذه المرة، لفت انتباهه إلى برامج جدولة الإدخال/الإخراج BFQ وmq-deadline، والتي تبين أنها تمثل عنق الزجاجة على الأقل في حالة محركات أقراص NVMe عالية السرعة.

كما أظهرت دراسة الموقف، كان أحد الأسباب الرئيسية للأداء دون الأمثل للأنظمة الفرعية لجدولة الإدخال / الإخراج هو مشاكل الأقفال المنافسة ("تنافس القفل"، وهي محاولة للحصول على قفل ممسك بخيط آخر). بفضل التدابير التي تهدف إلى تقليل تنافس القفل، مثل تسلسل الإرسال وإدراج الاستعلام، زادت سرعة المجدولات بشكل ملحوظ في عدد من المواقف (في IOPS).

عند اختبار برنامج جدولة BFQ باستخدام الأداة المساعدة fio، زاد الأداء من 567 كيلو بايت إلى 1551 كيلو بايت في الثانية (IOPS)، وانخفض تنافس القفل من 96% إلى 30%. في حالة الموعد النهائي لـ mq، زاد الأداء بعد تطبيق التصحيحات المقترحة عند استخدام محرك أقراص NVMe من 1070 ألفًا إلى 2560 ألف عملية إدخال/إخراج في الثانية (IOPS)، وانخفض تنافس القفل من 94% إلى 23%.

المصدر: opennet.ru

إضافة تعليق