
تیم مهندسی انویدیا (NVIDIA) همچنان روی بهبود زمانبند (Scheduler) لینوکس برای پشتیبانی بهتر از فناوری چندرشتهای همزمان (SMT) در پردازنده جدید Vera مجهز به هستههای Olympus کار میکند. این تلاش که نخستین بار در ماه اوت گذشته مطرح شد، اکنون به نتایج قابلتوجهی رسیده است؛ بهویژه اینکه کل تغییرات در کمتر از یکصد خط کد اعمال شده است.
هدف این بهینهسازی چیست؟
این کار با هدف فعالسازی خواهروبرادرهای ترجیحی SMT (Preferred SMT Siblings) روی هستههای Olympus انجام میشود. در این مجموعه وصله (Patch)، مسیر کد انتخاب حالت بیکاری (Idle Selection) تغییر کرده تا اولویت نامتقارن SMT را رعایت کند. همچنین یک پارامتر تنظیمپذیر جدید با نام sched_smt_asym_packing= معرفی شده که چیدمان نامتقارن را در دامنه زمانبندی SMT تحمیل میکند. این قابلیت برای سیستمهایی طراحی شده که میخواهند سیاست مشخصی را اعمال کنند یا سفتافزار (Firmware) سیستم قادر به انتقال درست این اولویت نیست.
هفتمین بازنگری و مسیر رسیدن به کرنل اصلی
این پروژه به سرپرستی آندریا ریگی (Andrea Righi)، مهندس انویدیا، اکنون به هفتمین بازنگری (Revision) خود رسیده و در مسیر پذیرش در کرنل اصلی (Mainline Kernel) قرار دارد. بر اساس آخرین مجموعه وصله، تأثیر عملکردی این تغییرات کاملاً محسوس گزارش شده است.
نتایج بنچمارکها؛ رشد ۳ تا ۶ درصدی توان عملیاتی
آمار منتشرشده در آخرین نسخه از این وصلهها نشان میدهد:
- توان عملیاتی OpenBLAS از ۷٫۱۱۸۷۶ ترافلاپس بر ثانیه (با خطای مثبت و منفی ۰٫۰۶۷۳۴) در کرنل پایه به ۷٫۳۴۶۶۹ ترافلاپس بر ثانیه (با خطای مثبت و منفی ۰٫۰۱۹۳۶) رسیده است؛ یعنی رشدی معادل ۳٫۲۰ درصد.
- توان عملیاتی NVPL از ۹٫۶۴۷۴۲ ترافلاپس بر ثانیه (با خطای مثبت و منفی ۰٫۱۷۳۱۱) به ۱۰٫۲۹۶۹۵ ترافلاپس بر ثانیه (با خطای مثبت و منفی ۰٫۰۱۷۸۶) افزایش یافته است؛ رشدی معادل ۶٫۷۳ درصد.
کاهش انحراف معیار (Standard Deviation) در نتایج نیز نشان میدهد که خروجیها قابلپیشبینیتر شدهاند. با اعمال این مجموعه وصله، بارهای کاری بهطور پیوسته روی خواهروبرادر با شماره پایینتر مستقر میشوند.
انتظار برای ادغام در نسخههای آینده لینوکس
امید میرود این کار زمانبندی بهزودی به کرنل اصلی راه پیدا کند؛ شاید همزمان با نسخه ۷.۴ کرنل لینوکس. در حال حاضر این وصلهها در فهرست پستی کرنل لینوکس (Linux Kernel Mailing List) در دسترس هستند. همچنین گزارش شده که بهتازگی بنچمارکهایی از تأثیر روشن و خاموش بودن فناوری چندرشتهای فضایی (Spatial Multithreading) پردازنده Vera انجام شده و نتایج بیشتر آن بهزودی منتشر خواهد شد.