المساحة الإخبارية

[حوسبة المستقبل] تحسين أداء المعالج عبر تحريره من مهمة “جمع المهملات”

يقوم المعالج بتنفيذ الكثير من المهمات التي لا يلاحظها المستخدم من أجل ضمان سيرورة العمل وتنفيذ البرامج والتطبيقات كما يجب، ويُطلق على هذه النشاطات اسم “عمليات الخلفية Background Processes“. أحد هذه العمليات هي ما يعرف بـ “جمع المهملات Garbage Collection” والتي يتم عبرها تنظيم مساحة الذاكرة وضمان عدم هدرها على بياناتٍ ومعلوماتٍ غير ضرورية. المشكلة أن هذه العملية مكلفة، بمعنى أنها تستهلك جزءًا من القدرة الحاسوبية الخاصة بالمعالج، حتى تم مؤخرًا الإعلان عن تقنيةٍ جديدة من شأنها توفير العناء على المعالج وضمان استهلاك موارده في تنفيذ البرامج والتطبيقات بشكلٍ أفضل.

حول مفهوم “جمع المهملات Garbage Collection”

تقوم البرامج والتطبيقات أثناء عملها بحجز العديد من العناوين ضمن ذاكرة العمل (أي ذاكرة الوصول العشوائيّ RAM)، حيث قد يحتاج تنفيذ البرنامج لإنشاء “غرض Object” يتم تخصيص جزء من الذاكرة لأجله لفترةٍ معينة أثناء زمن عمل البرنامج، وبعد ذلك قد يكون هذا الغرض بدون أي فائدة، وبالتالي فإن وجوده سيصبح “فائضًا Redundant” عن الحاجة.لأجل هذا السبب، تم تطوير مفهوم “جمع المهملات Garbage Collection” لتعمل بشكلٍ آليّ وبدون تدخلٍ مباشر من المستخدم (أو المبرمج) لتكشف هذه الأغراض الفائضة عن الحاجة وغير الضرورية والتي تقوم بحجز مساحاتٍ من الذاكرة بدون أي فائدة، وما يتم إجراؤه هو قيام المعالج بالتخلص من هذه الأغراض (المهملات) عبر تحرير العناوين التي تقوم بحجزها. توّفر بعض لغات البرمجة تقنية جمع المهملات بشكلٍ افتراضيّ ضمنها بحيث تعمل بشكلٍ آليّ بدون تدخل المستخدم (مثل جافا)، بينما تقوم لغات برمجة أخرى (مثل C و ++C) بتوفير تقنياتٍ لحجز وتحرير مساحات الذاكرة بشكلٍ يدوي Manual Memory Management، أي أنه سيتوجب على المبرمج كتابة تعليمات صريحة يتم عبرها إرسال طلب لحجز جزء من الذاكرة لغرضِ معين ومن ثم تحريره بعد مدةٍ معينة يقوم هو أيضًا بتحديدها.

على الرّغم من الفائدة الكبيرة التي يقدمها مفهوم جمع المهملات، إلا أنها تتطلب استهلاك جزء من قدرات المعالج الذي قد يصل إلى حوالي 10% من إجماليّ قدرة المعالجة، فضلًا عن المشاكل التي قد تترافق مع عملية جمع المهملات مثل توقفٍ مفاجئ في تنفيذ برنامجٍ ما نظرًا لحاجة المعالج لتحرير جزء من مساحة الذاكرة قبل استكمال تنفيذ البرنامج. هذه الأمور هي التي دفعت “مارتين ماس Martin Maas” لتصميم جهازٍ جديد من شأنه تخليص المعالج من مهمة جمع المهملات ومساعدته على تخصيص قدرته الحاسوبية على تنفيذ البرامج والتطبيقات. تم وصف الجهاز الجديد ضمن مقالةٍ بحثية تم نشرها في دورية IEEE بتاريخ 23 أبريل/نيسان الماضي.

حول الجهاز الجديد

انطلق مارتين ماس في عمله من ملاحظته أن المعالجات التي تقوم بعملية جمع المهملات لم يتم تصميمها كي تقوم بهذه المهمة، بل لتقوم بتنفيذ عددٍ كبير من البرامج والتطبيقات التي تساعد المستخدم في تنفيذ المهام المختلفة بحياته اليومية. كنتيجة، ونظرًا لإضافة مهمة جمع المهملات على قائمة الأعمال التي يجب تنفيذها من قبل المعالج، فإن الحيز الفيزيائيّ الذي تشغله المعالجات كبيرٌ نسبيًا كما أنه تستهلك قدرًا جيدًا من الطاقة الكهربائية.

الخطوة التالية كانت التفكير بحلٍ يساعد على تحرير المعالج من هذا العبء والذي تمثل – أي الحل – بتصميم شريحة تسريع مدمجة compact Accelerator التي تتطلب تخصيص جزءًا صغيرًا من مساحة شريحة المعالجة ويمكن تضمينها ضمن المعالج بشكلٍ مشابهٍ لتضمين شرائح معالجة صغيرة داخل وحدات المعالجة الرسومية GPUs.

تتلخص وظيفة شريحة التسريع بتوليها لكافة مهام جمع المهملات التي كانت سابقًا من مسؤولية المعالج، وهذا يعني أن كافة القدرة الحاسوبية المخصصة للمعالجة ستستثمر على تنفيذ التطبيقات المختلفة بما يمكن نظام التشغيل من حجز الجزء الذي يريده من الذاكرة بدون انتظار انتهاء مهمات جمع المهملات.

لا يقتصر دور شريحة التسريع الجديدة على تولي مهمة جمع المهملات فقط، بل إنها توّفر آليةً أكثر كفاءة في كيفية تنفيذ عملية جمع المهملات، حيث تتطلب عادةً هذه المهمة قيام المعالج بتنفيذ عملياتٍ حاسوبية ضمن تسلسلٍ معين بحيث لا يمكن تنفيذ أي عملية قبل انتهاء سابقتها، بينما تقوم شريحة التسريع الجديدة بتنفيذ العمليات بشكلٍ تفرعيّ في حال لم تكن مرتبطةً ببعضها البعض، وهذا سيحسن من الزمن اللازم لتنفيذ مهمة جمع المهملات.

إلى أي حد سيتم تحسين أداء المعالجات؟

بلغة الأرقام، وجد مارتن ماس أن شريحة التسريع الجديدة قادرة على تنفيذ مهمة جمع المهملات بكفاءةً أفضل بمقدار 18% بالمقارنة مع المعالجات، كما أنها تُحسن من نسبة استهلاك الطاقة المخصصة لعملية جمع المهملات بنسبة 15%. أخيرًا، أشار مارتن ماس إلى أن عملية تخصيص شريحة تسريع لتنفيذ مهمة جمع المهملات سيؤدي لتحسين إنتاجية الحواسيب ككل، وعلى الرّغم من أنها تستهلك حوالي 10% من طاقة المعالج، إلا أنه وبأخذ هذه النسبة ومقارنتها مع عدد الحواسيب في العالم سنجد أنها كمية ضخمة من الموارد الحاسوبية المهدورة.

أشار مارتن ماس وفريقه البحثيّ أن شريحة التسريع الجديدة قد تصبح أحد المكونات الأساسية المستخدمة في تصنيع شرائح المعالجة المستقبلية، بما يساعد بتخفيف العبء على المعالج وتوفير موارده. يمكنكم الاطلاع على البحث المنشور ونتائج بشكلٍ مجانيّ حتى تاريخ 9 يونيو/حزيران 2019 على موقع IEEE-Xplore: اضغط هنا.

المصدر : [IEEE Spectrum]

مقالات ذات صلة

زر الذهاب إلى الأعلى