MIT سے نیا CPU لوڈ بیلنس

شینانگو سسٹم کو ڈیٹا سینٹرز میں استعمال کرنے کا منصوبہ ہے۔

MIT سے نیا CPU لوڈ بیلنس
/ تصویر مارکو ویچ CC BY

فراہم کنندگان میں سے ایک کے مطابق، ڈیٹا سینٹرز استعمال کریں دستیاب کمپیوٹنگ پاور کا صرف 20-40%۔ زیادہ بوجھ پر یہ اشارے 60 فیصد تک پہنچ سکتا ہے. وسائل کی یہ تقسیم نام نہاد "زومبی سرورز" کے ظہور کا باعث بنتی ہے۔ یہ وہ مشینیں ہیں جو زیادہ تر وقت بیکار رہتی ہیں، توانائی ضائع کرتی ہیں۔ آج دنیا میں 30% سرورز کام کے بغیر ہیں، ہر سال $30 بلین مالیت کی بجلی استعمال کرتا ہے۔

MIT نے کمپیوٹنگ وسائل کے غیر موثر استعمال کا مقابلہ کرنے کا فیصلہ کیا۔

انجینئرنگ ٹیم۔ ترقی ہوئی ہے پروسیسر لوڈ بیلنسنگ سسٹم جسے شینانگو کہتے ہیں۔ اس کا مقصد ٹاسک بفر کی حالت کی نگرانی کرنا اور پھنسے ہوئے عمل کو دوبارہ تقسیم کرنا ہے (جو CPU وقت وصول نہیں کرسکتے ہیں) مفت مشینوں میں۔

شینانگو کیسے کام کرتا ہے۔

Shenango C میں ایک لینکس لائبریری ہے جس میں Rust اور C++ بائنڈنگز ہیں۔ پروجیکٹ کوڈ اور ٹیسٹ ایپلی کیشنز میں شائع کیا گیا ہے۔ ذخیرے GitHub پر۔

حل IOKernel الگورتھم پر مبنی ہے، جو ایک ملٹی پروسیسر سسٹم کے وقف شدہ کور پر چلتا ہے۔ یہ فریم ورک کا استعمال کرتے ہوئے CPU کی درخواستوں کا انتظام کرتا ہے۔ ڈی پی ڈی کے، جو ایپلیکیشنز کو نیٹ ورک ڈیوائسز کے ساتھ براہ راست بات چیت کرنے کی اجازت دیتا ہے۔

IOKernel فیصلہ کرتا ہے کہ کن کنلز کو ایک مخصوص کام سونپنا ہے۔ الگورتھم یہ بھی طے کرتا ہے کہ کتنے کور کی ضرورت ہوگی۔ ہر ایک عمل کے لیے، مرکزی کور (ضمانت یافتہ) اور اضافی (پھٹنے کے قابل) کا تعین کیا جاتا ہے - بعد میں CPU کی درخواستوں کی تعداد میں تیزی سے اضافے کی صورت میں شروع کیا جاتا ہے۔

IOKernel درخواست کی قطار کو اس طرح ترتیب دیا گیا ہے۔ انگوٹی بفر. ہر پانچ مائیکرو سیکنڈ بعد، الگورتھم چیک کرتا ہے کہ آیا کور کو تفویض کردہ تمام کام مکمل ہو گئے ہیں۔ ایسا کرنے کے لیے، یہ بفر کے سر کے موجودہ مقام کا اس کی دم کی پچھلی پوزیشن سے موازنہ کرتا ہے۔ اگر یہ پتہ چلتا ہے کہ پچھلی جانچ کے وقت دم پہلے ہی قطار میں تھی، تو سسٹم بفر اوورلوڈ کو نوٹ کرتا ہے اور اس عمل کے لیے ایک اضافی کور مختص کرتا ہے۔

بوجھ کو تقسیم کرتے وقت، ان کوروں کو ترجیح دی جاتی ہے جن پر ایک ہی عمل پہلے عمل میں آیا تھا اور جزوی طور پر کیشے میں، یا کسی بھی بیکار کور کو۔

MIT سے نیا CPU لوڈ بیلنس

شینانگو اس کے علاوہ طریقہ اختیار کرتا ہے۔ کام چوری. ایک ایپلیکیشن کو چلانے کے لیے مختص کور ایک دوسرے کے کاموں کی تعداد کی نگرانی کرتے ہیں۔ اگر ایک کور دوسروں سے پہلے اپنے کاموں کی فہرست کو ختم کرتا ہے، تو یہ اپنے پڑوسیوں سے بوجھ کا کچھ حصہ "حل" کرتا ہے۔

فوائد اور نقصانات

پر کے مطابق ایم آئی ٹی کے انجینئرز، شینانگو فی سیکنڈ پچاس لاکھ درخواستوں پر کارروائی کرنے اور 37 مائیکرو سیکنڈ کے اوسط جوابی وقت کو برقرار رکھنے کی صلاحیت رکھتے ہیں۔ ماہرین کا کہنا ہے کہ کچھ معاملات میں ٹیکنالوجی ڈیٹا سینٹرز میں پروسیسرز کے استعمال کی شرح کو 100 فیصد تک بڑھا سکتی ہے۔ اس کے نتیجے میں، ڈیٹا سینٹر آپریٹرز سرورز کی خریداری اور دیکھ بھال پر بچت کر سکیں گے۔

ممکنہ حل منانا اور دیگر یونیورسٹیوں کے ماہرین۔ ایک کورین انسٹی ٹیوٹ کے پروفیسر کے مطابق، MIT سسٹم ویب سروسز میں تاخیر کو کم کرنے میں مدد کرے گا۔ مثال کے طور پر، یہ آن لائن اسٹورز میں کارآمد ہوگا۔ فروخت کے دنوں میں صفحہ لوڈ ہونے میں دوسری تاخیر بھی ہوتی ہے۔ приводит سائٹ کے ملاحظات کی تعداد میں 11% کی کمی۔ فوری لوڈ کی تقسیم مزید کلائنٹس کی خدمت میں مدد کرے گی۔

ٹیکنالوجی میں اب بھی خامیاں ہیں - یہ ملٹی پروسیسر کو سپورٹ نہیں کرتی ہے۔ NUMA-ایسے نظام جن میں چپس مختلف میموری ماڈیولز سے منسلک ہوتی ہیں اور ایک دوسرے کے ساتھ "مواصلات" نہیں کرتی ہیں۔ اس صورت میں، IOKernel پروسیسرز کے ایک الگ گروپ کے آپریشن کو ریگولیٹ کر سکتا ہے، لیکن تمام سرور چپس کو نہیں۔

MIT سے نیا CPU لوڈ بیلنس
/ تصویر ٹم ریکمان CC BY

اسی طرح کی ٹیکنالوجیز

دیگر پروسیسر لوڈ بیلنسنگ سسٹمز میں آراچن شامل ہیں۔ یہ اس بات کا حساب لگاتا ہے کہ کسی ایپلیکیشن کے شروع ہونے پر اسے کتنے کور کی ضرورت ہوگی، اور اس اشارے کے مطابق عمل کو تقسیم کرتا ہے۔ مصنفین کے مطابق، اراچنے میں ایک درخواست کی زیادہ سے زیادہ تاخیر تقریباً 10 ہزار مائیکرو سیکنڈز ہے۔

ٹیکنالوجی کو لینکس کے لیے C++ لائبریری کے طور پر لاگو کیا گیا ہے، اور اس کا سورس کوڈ دستیاب ہے۔ GitHub کے.

ایک اور توازن کا آلہ ZygOS ہے۔ شینانگو کی طرح، ٹیکنالوجی بھی عمل کو دوبارہ تقسیم کرنے کے لیے کام چوری کرنے کا طریقہ استعمال کرتی ہے۔ ZygOS کے مصنفین کے مطابق، ٹول کا استعمال کرتے وقت ایپلی کیشن میں تاخیر تقریباً 150 مائیکرو سیکنڈز ہے، اور زیادہ سے زیادہ تقریباً 450 مائیکرو سیکنڈز ہے۔ پروجیکٹ کوڈ بھی ہے۔ عوامی ڈومین میں ہے۔.

نتائج

جدید ڈیٹا سینٹرز کی توسیع جاری ہے۔ بڑھتا ہوا رجحان خاص طور پر ہائپر اسکیل ڈیٹا سینٹرز کی مارکیٹ میں نمایاں ہے: اب دنیا میں وہاں ہے 430 ہائپر اسکیل ڈیٹا سینٹرز، لیکن آنے والے سالوں میں ان کی تعداد میں 30 فیصد اضافہ ہوسکتا ہے۔ اس وجہ سے، پروسیسر لوڈ بیلنسنگ ٹیکنالوجیز کی بہت مانگ ہوگی۔ شینانگو جیسے سسٹم پہلے ہی دستیاب ہیں۔ لاگو بڑی کارپوریشنز، اور اس طرح کے آلات کی تعداد صرف مستقبل میں بڑھے گی۔

کارپوریٹ IaaS کے بارے میں پہلے بلاگ کی پوسٹس:

ماخذ: www.habr.com

نیا تبصرہ شامل کریں