تعدد الخيوط الصريح

المعالجة المتعددة الصريحة ( XMT ) هي نموذج في علوم الحاسوب لبناء وبرمجة الحواسيب المتوازية المصممة وفقًا لنموذج الحوسبة المتوازية لآلة الوصول العشوائي المتوازية (PRAM). يبدأ شرح XMT بشكل مباشر من التجريد الأساسي الذي سهّل الحوسبة التسلسلية : أي تعليمة متاحة للتنفيذ في برنامج تسلسلي تُنفذ فورًا. ومن نتائج هذا التجريد شرحٌ تدريجي (استقرائي) للتعليمة التالية المتاحة للتنفيذ. أما التجريد المتوازي الأساسي الكامن وراء XMT، والذي أطلق عليه فيشكين (2011) اسم التنفيذ المتزامن الفوري (ICE) ، فهو أن عددًا غير محدود من التعليمات المتاحة للتنفيذ المتزامن تُنفذ فورًا. ومن نتائج ICE شرحٌ تدريجي (استقرائي) للتعليمات التالية المتاحة للتنفيذ المتزامن. بالانتقال إلى ما وراء حاسوب فون نيومان التسلسلي (المنصة الوحيدة الناجحة للأغراض العامة حتى الآن)، فإن طموح XMT هو أن يتمكن علم الحاسوب مرة أخرى من تعزيز الاستقراء الرياضي بتجريد حسابي بسيط من سطر واحد.

آلة الوصول العشوائي (RAM) هي نموذج آلة مجرد يُستخدم في علوم الحاسوب لدراسة الخوارزميات وتعقيد الحوسبة التسلسلية القياسية. أما نموذج PRAM الحسابي فهو نموذج آلة متوازية مجرد، طُرح لدراسة الخوارزميات المتوازية وتعقيدها في الحوسبة المتوازية ، قبل أن تُبنى هذه الأخيرة. وقد طوّر الباحثون كمًّا هائلًا من المعرفة حول الخوارزميات المتوازية لنموذج PRAM. وتُعرف هذه الخوارزميات المتوازية أيضًا ببساطتها، مقارنةً بأساليب أخرى في مجال الخوارزميات المتوازية.

إنّ هذا الكمّ الهائل من المعرفة بالخوارزميات المتوازية لنموذج PRAM وبساطتها النسبية قد حفّز على بناء حواسيب يمكن توجيه برمجتها بهذه الخوارزميات المتوازية. ولأنّ إنتاجية المبرمجين المتوازيين تُعتبر منذ زمن طويل عاملاً حاسماً في نجاح الحاسوب المتوازي، فإنّ بساطة الخوارزميات تُعدّ أمراً بالغ الأهمية.

تُبنى الحواسيب متعددة النوى حول نواتين أو أكثر من المعالجات المدمجة على شريحة دارة متكاملة واحدة . وهي تُستخدم على نطاق واسع في العديد من مجالات التطبيقات، بما في ذلك الحوسبة للأغراض العامة. وتُعدّ تقنية المعالجة المتعددة الصريحة (XMT) نموذجًا حاسوبيًا لبناء وبرمجة الحواسيب متعددة النوى التي تضم عشرات أو مئات أو آلاف النوى.

أظهرت الأعمال التجريبية المنشورة في عامي 2011 و 2012 تسارعًا أكبر بكثير لخوارزميات PRAM المتقدمة على نماذج XMT الأولية مقارنة بنفس المشاكل على أجهزة الكمبيوتر متعددة النوى الحديثة.

أظهرت دراسة نُشرت عام ٢٠١٨ أن البرمجة المتوازية المتزامنة (باستخدام ICE) قادرة على تحقيق نفس أداء أسرع كود متعدد الخيوط مُعدّل يدويًا على أنظمة XMT. ويُعدّ هذا النهج الاستقرائي المتزامن مُغايرًا لنهج البرمجة متعددة الخيوط في العديد من الأنظمة الأساسية الأخرى، والتي تُعرف بصعوبتها على المبرمجين.

تم تقديم نموذج XMT بواسطة أوزي فيشكين .

المستويات الرئيسية للتجريد في XMT

يدمج نموذج الحوسبة متعدد الخيوط الصريح (XMT) عدة مستويات من التجريد.

يُقدّم إطار عمل وقت العمل (WT) (ويُسمى أحيانًا عمق العمل)، الذي قدّمه شيلواخ وفيشكين (1982) ، طريقةً بسيطةً لتصوّر ووصف الخوارزميات المتوازية. في هذا الإطار، تُوصف الخوارزمية المتوازية أولًا من حيث الجولات المتوازية. تُحدّد العمليات المطلوب تنفيذها في كل جولة، ولكن يمكن إغفال بعض التفاصيل. على سبيل المثال، ليس من الضروري توضيح عدد العمليات في كل جولة، ولا ذكر المعالجات، ولا أي معلومات قد تُساعد في تخصيص المعالجات للمهام. ثانيًا، تُقدّم المعلومات المُغفلة. في الواقع، يستند تضمين هذه المعلومات إلى برهان نظرية جدولة منسوبة إلى برنت (1974) . يُعدّ إطار عمل وقت العمل مفيدًا لأنه، مع قدرته على تبسيط الوصف الأولي للخوارزمية المتوازية بشكل كبير، فإنّ إضافة التفاصيل المُغفلة في ذلك الوصف الأولي غالبًا ما تكون سهلة. على سبيل المثال، تم اعتماد إطار عمل WT كإطار عرض أساسي في كتب الخوارزميات المتوازية (لنموذج PRAM) مثل JaJa (1992) و Keller و Kessler و Traeff (2001) ، وكذلك في ملاحظات المحاضرات Vishkin (2009) . يشرح Vishkin (2011) العلاقة البسيطة بين إطار عمل WT وتجريد ICE الأكثر بدائية المذكور أعلاه.

يمكن برمجة نموذج XMT باستخدام XMTC ، وهي لغة برمجة متعددة الخيوط متوازية وهي امتداد صغير للغة البرمجة C. يتضمن نموذج XMT سير عمل للمبرمج يبدأ بتحويل الخوارزمية في إطار عمل WT ثم ينتقل إلى برمجتها في XMTC.

توفر أنظمة الحوسبة متعددة النوى XMT موازنة تحميل البرامج متعددة الخيوط أثناء التشغيل، وذلك من خلال دمج العديد من براءات الاختراع. إحداها [ 1 ] تعمم مفهوم عداد البرنامج ، وهو مفهوم أساسي في بنية فون نيومان، ليشمل الأجهزة متعددة النوى.

في يناير 2007، تم إنجاز حاسوب ذي 64 معالجًا [ 2 ] يُدعى Paraleap [ 3 ] ، والذي يُجسّد المفهوم العام. عُرض مفهوم XMT في دراسات فيشكين وآخرون (1998) ونايشلوس وآخرون (2003)، بينما عُرض حاسوب XMT ذو 64 معالجًا في دراسة وين وفيشكين (2008) . ولأن تسهيل البرمجة المتوازية يُعدّ من أكبر التحديات التي تواجه علوم الحاسوب اليوم، فقد سعى العرض التوضيحي أيضًا إلى تضمين تعليم أساسيات خوارزميات PRAM وبرمجة XMTC لطلاب تتراوح أعمارهم من المرحلة الثانوية (توربرت وآخرون، 2010) إلى الدراسات العليا.

أظهرت الدراسات التجريبية المنشورة في كاراجيا وفيشكين (2011) حول مسألة التدفق الأقصى ، وفي ورقتين بحثيتين لإدواردز وفيشكين ( 2012أ ، 2012 ب ) حول مسائل اتصال الرسوم البيانية ( الاتصال (نظرية الرسوم البيانية) )، واتصال الرسوم البيانية الثنائي ( الرسم البياني ثنائي الاتصال )، واتصال الرسوم البيانية الثلاثي ( المكون ثلاثي الاتصال )، أن نموذج XMT، بالنسبة لبعض الخوارزميات الأكثر تطورًا في مجال الخوارزميات المتوازية، يُمكن أن يُحقق تسارعًا يتراوح بين 8 أضعاف وأكثر من 100 ضعف مقارنةً بالخوارزميات نفسها على أحدث الحواسيب متعددة النوى. وقد تم الحصول على كل تسارع مُبلغ عنه من خلال مقارنة دورات الساعة على نموذج أولي لـ XMT مع أسرع خوارزمية تسلسلية تعمل على أسرع الأجهزة التسلسلية. 

تُوِّجت عملية تطوير نماذج XMT الأولية بدراسة غانم، فيشكين، وباروا (2018) ، التي أثبتت أن البرمجة المتوازية المتزامنة (باستخدام ICE) قادرة على تحقيق نفس أداء أسرع كود متعدد الخيوط مُحسَّن يدويًا على أنظمة XMT. تُبرز هذه النتيجة لعام 2018 التباين بين برمجة XMT وأساليب البرمجة متعددة الخيوط المُستخدمة في جميع أنظمة المعالجات متعددة النوى تقريبًا، والتي غالبًا ما تُشكِّل ظروف التزامن ومتطلباتها الأخرى تحديًا للمبرمجين، بل وقد تُؤدي أحيانًا إلى فشلهم (فيشكين، 2014) .

مراجع

ملحوظات

  1. فيشكين، أوزي. بنية مجموعة تعليمات Spawn-join لتوفير تعدد الخيوط الصريح. براءة اختراع أمريكية رقم 6,463,527. انظر أيضًا فيشكين وآخرون (1998) .
  2. جامعة ميريلاند، بيان صحفي، 26 يونيو 2007: "أستاذ من ميريلاند يبتكر حاسوبًا مكتبيًا فائقًا" مؤرشف في 14 ديسمبر 2009 في Wayback Machine .
  3. جامعة ميريلاند، كلية أ. جيمس كلارك للهندسة، بيان صحفي، 28 نوفمبر 2007: "القفزة الكبيرة التالية في تكنولوجيا الحوسبة تحصل على اسم" .