متعادل کننده بار جدید CPU از MIT

سیستم Shenango قرار است در مراکز داده استفاده شود.

متعادل کننده بار جدید CPU از MIT
/ عکس مارکو ورچ CC BY

به گفته یکی از ارائه دهندگان، مراکز داده استفاده کنید تنها 20 تا 40 درصد از توان محاسباتی موجود. در بارهای بالا این نشانگر می تواند به 60٪ برسد. این توزیع منابع منجر به ظهور به اصطلاح "سرورهای زامبی" می شود. اینها ماشین هایی هستند که بیشتر اوقات بیکار می نشینند و انرژی را هدر می دهند. امروزه 30 درصد از سرورهای جهان بدون کار هستند، مصرف برق به ارزش 30 میلیارد دلار در سال.

MIT تصمیم گرفت با استفاده ناکارآمد از منابع محاسباتی مبارزه کند.

تیم مهندسی گسترش یافته سیستم متعادل کننده بار پردازنده به نام Shenango. هدف آن نظارت بر وضعیت بافر وظیفه و توزیع مجدد فرآیندهای گیر کرده (که نمی توانند زمان CPU را دریافت کنند) به ماشین های آزاد است.

نحوه کار Shenango

Shenango یک کتابخانه لینوکس به زبان C با اتصالات Rust و C++ است. کد پروژه و برنامه های آزمایشی در منتشر شده است مخازن در GitHub.

راه حل مبتنی بر الگوریتم IOKernel است که بر روی یک هسته اختصاصی یک سیستم چند پردازنده اجرا می شود. درخواست های CPU را با استفاده از یک چارچوب مدیریت می کند DPDK، که به برنامه ها اجازه می دهد مستقیماً با دستگاه های شبکه ارتباط برقرار کنند.

IOKernel تصمیم می گیرد که یک کار خاص را به کدام هسته ها واگذار کند. الگوریتم همچنین تصمیم می گیرد که چند هسته مورد نیاز باشد. برای هر فرآیند، هسته های اصلی (تضمین شده) و هسته های اضافی (قابل انفجار) تعیین می شوند - دومی در صورت افزایش شدید تعداد درخواست ها به CPU راه اندازی می شود.

صف درخواست IOKernel به صورت سازماندهی شده است بافر حلقه. هر پنج میکروثانیه، الگوریتم بررسی می کند که آیا تمام وظایف محول شده به هسته کامل شده اند یا خیر. برای این کار، محل فعلی سر بافر را با موقعیت قبلی دم آن مقایسه می کند. اگر معلوم شود که دم در زمان بررسی قبلی در صف بوده است، سیستم اضافه بار بافر را یادداشت می کند و یک هسته اضافی برای فرآیند اختصاص می دهد.

هنگام توزیع بار، اولویت به هسته‌هایی داده می‌شود که همان فرآیند روی آن‌ها قبلاً اجرا شده و تا حدی در حافظه پنهان باقی مانده‌اند، یا به هسته‌های غیرفعال.

متعادل کننده بار جدید CPU از MIT

Shenango علاوه بر این رویکرد کار دزدی. هسته های اختصاص داده شده برای اجرای یک برنامه بر تعداد وظایف یکدیگر نظارت می کنند. اگر یک هسته لیست وظایف خود را قبل از سایرین به پایان برساند، آنگاه بخشی از بار را از همسایگان خود "تسکین" می کند.

مزایا و معایب

بر طبق مهندسان MIT، Shenango قادر به پردازش پنج میلیون درخواست در ثانیه و حفظ میانگین زمان پاسخ 37 میکروثانیه هستند. کارشناسان می گویند در برخی موارد این فناوری می تواند میزان استفاده از پردازنده ها را در مراکز داده تا 100 درصد افزایش دهد. در نتیجه اپراتورهای مرکز داده قادر خواهند بود در خرید و نگهداری سرورها صرفه جویی کنند.

پتانسیل راه حل جشن گرفتن و متخصصان سایر دانشگاه ها. به گفته پروفسوری از یک موسسه کره ای، سیستم MIT به کاهش تاخیر در خدمات وب کمک می کند. به عنوان مثال، در فروشگاه های آنلاین مفید خواهد بود. در روزهای فروش حتی یک بار دوم تاخیر در بارگذاری صفحه وجود دارد приводит کاهش تعداد بازدیدهای سایت تا 11 درصد. توزیع سریع بار به مشتریان بیشتری خدمت می کند.

این فناوری هنوز دارای اشکالاتی است - از چند پردازنده پشتیبانی نمی کند تعداد-سیستم هایی که در آن تراشه ها به ماژول های حافظه مختلف متصل هستند و با یکدیگر "ارتباط" ندارند. در این مورد، IOKernel می تواند عملکرد یک گروه جداگانه از پردازنده ها را تنظیم کند، اما نه همه تراشه های سرور.

متعادل کننده بار جدید CPU از MIT
/ عکس تیم رکمان CC BY

فناوری های مشابه

دیگر سیستم های متعادل کننده بار پردازنده عبارتند از Arachne. محاسبه می کند که یک برنامه در هنگام شروع به چند هسته نیاز دارد و فرآیندها را بر اساس این شاخص توزیع می کند. به گفته نویسندگان، حداکثر تاخیر یک برنامه در Arachne حدود 10 هزار میکروثانیه است.

این فناوری به‌عنوان یک کتابخانه ++C برای لینوکس پیاده‌سازی شده است و کد منبع آن در این آدرس موجود است GitHub.

یکی دیگر از ابزارهای متعادل کننده ZygOS است. مانند Shenango، این فناوری از روش سرقت کار برای توزیع مجدد فرآیندها استفاده می کند. به گفته نویسندگان ZygOS، متوسط ​​تأخیر برنامه در هنگام استفاده از این ابزار حدود 150 میکروثانیه و حداکثر آن حدود 450 میکروثانیه است. کد پروژه هم هست در حوزه عمومی است.

یافته ها

مراکز داده مدرن به گسترش خود ادامه می دهند. روند افزایشی به ویژه در بازار مراکز داده های مقیاس بزرگ قابل توجه است: اکنون در جهان وجود دارد 430 مرکز داده فوق مقیاس، اما در سال های آینده تعداد آنها ممکن است 30٪ افزایش یابد. به همین دلیل، فناوری های متعادل کننده بار پردازنده تقاضای زیادی خواهند داشت. سیستم هایی مانند Shenango در حال حاضر در دسترس هستند پیاده سازی شرکت های بزرگ، و تعداد چنین ابزارهایی فقط در آینده افزایش خواهد یافت.

پست های اولین وبلاگ درباره شرکت IaaS:

منبع: www.habr.com

اضافه کردن نظر