الحوسبة التعليمية المتوازية بشكل صريح
تحتاج هذه المقالة إلى مصادر إضافية للتحقق . ( October 2010 ) |
الحوسبة المتوازية الصريحة ( EPIC ) هو مصطلح صاغه تحالف HP-Intel في عام 1997 [1] لوصف نموذج حوسبة كان الباحثون يحققون فيه منذ أوائل الثمانينيات. [2] يُطلق على هذا النموذج أيضًا اسم عمارة الاستقلال . كان هذا هو الأساس لتطوير Intel و HP لعمارة Intel Itanium ، [3] وأكدت HP لاحقًا أن "EPIC" كان مجرد مصطلح قديم لعمارة Itanium. [4] تسمح EPIC للمعالجات الدقيقة بتنفيذ تعليمات البرامج بالتوازي باستخدام المترجم ، بدلاً من الدوائر المعقدة الموجودة على الشريحة ، للتحكم في تنفيذ التعليمات المتوازية. كان الهدف من ذلك السماح بتوسيع نطاق الأداء البسيط دون اللجوء إلى ترددات ساعة أعلى .
الجذور في VLIW
بحلول عام 1989، أدرك الباحثون في HP أن بنيات الكمبيوتر ذات مجموعة التعليمات المخفضة (RISC) كانت تصل إلى حد تعليمة واحدة لكل دورة . [ يحتاج إلى توضيح ] بدأوا تحقيقًا في بنية جديدة، سميت فيما بعد EPIC . [3] كان أساس البحث هو VLIW ، حيث يتم ترميز عمليات متعددة في كل تعليمة، ثم معالجتها بواسطة وحدات تنفيذ متعددة.
كان أحد أهداف EPIC هو نقل تعقيد جدولة التعليمات من أجهزة وحدة المعالجة المركزية إلى مُجمِّع البرامج ، والذي يمكنه إجراء جدولة التعليمات بشكل ثابت (بمساعدة معلومات ردود الفعل التتبعية). وهذا يلغي الحاجة إلى دوائر جدولة معقدة في وحدة المعالجة المركزية، مما يوفر مساحة وقوة لوظائف أخرى، بما في ذلك موارد التنفيذ الإضافية. وكان الهدف المهم بنفس القدر هو استغلال التوازي على مستوى التعليمات ( ILP ) بشكل أكبر باستخدام المُجمِّع للعثور على فرص إضافية للتنفيذ المتوازي واستغلالها .
إن VLIW (على الأقل أشكالها الأصلية) لديها العديد من العيوب التي منعتها من أن تصبح سائدة:
- لا تتوافق مجموعات تعليمات VLIW مع الإصدارات السابقة بين التطبيقات. عند إنشاء تطبيقات أوسع ( وحدات تنفيذ أكثر )، لا تتوافق مجموعة التعليمات للأجهزة الأوسع مع الإصدارات الأقدم والأضيق.
- لا تحتوي استجابات التحميل من التسلسل الهرمي للذاكرة الذي يتضمن ذاكرة التخزين المؤقت لوحدة المعالجة المركزية وذاكرة DRAM على تأخير حتمي. [ لماذا؟ ] وهذا يجعل الجدولة الثابتة لتعليمات التحميل بواسطة المترجم صعبة للغاية.
تطورت بنية EPIC من بنية VLIW، ولكنها احتفظت بالعديد من مفاهيم بنية superscalar .
التحرك إلى ما هو أبعد من VLIW
تضيف هندسة EPIC العديد من الميزات للتغلب على عيوب VLIW:
- يُطلق على كل مجموعة من التعليمات البرمجية المتعددة اسم حزمة . تحتوي كل حزمة على بت توقف يشير إلى ما إذا كانت هذه المجموعة من العمليات تعتمد على الحزمة التالية. بفضل هذه الإمكانية، يمكن بناء تطبيقات مستقبلية لإصدار حزم متعددة بالتوازي. يتم حساب معلومات التبعية بواسطة المترجم، وبالتالي لا يتعين على الأجهزة إجراء فحص التبعية للمتعامل.
- تُستخدم تعليمات الجلب المسبق للبرمجيات كنوع من أنواع الجلب المسبق للبيانات. يزيد هذا الجلب المسبق من احتمالات الوصول إلى ذاكرة التخزين المؤقت للأحمال، ويمكنه الإشارة إلى درجة الموقع الزمني المطلوبة في مستويات مختلفة من ذاكرة التخزين المؤقت.
- يتم استخدام تعليمات التحميل المضاربي لتحميل البيانات مضاربة قبل معرفة ما إذا كان سيتم استخدامها (تجاوز تبعيات التحكم)، أو ما إذا كان سيتم تعديلها قبل استخدامها (تجاوز تبعيات البيانات).
- تساعد تعليمات فحص الحمل الأحمال المضاربة من خلال التحقق مما إذا كان الحمل المضاربي يعتمد على تخزين لاحق، وبالتالي يجب إعادة تحميله.
تتضمن هندسة EPIC أيضًا مجموعة من المفاهيم المعمارية لزيادة ILP :
- يتم استخدام التنفيذ المتوقع لتقليل حدوث الفروع وزيادة التنفيذ المضاربي للتعليمات. في هذه الميزة، يتم تحويل شروط الفرع إلى سجلات توقعية تُستخدم لقتل نتائج التعليمات المنفذة من جانب الفرع الذي لم يتم أخذه.
- تسمح الاستثناءات المتأخرة، التي تستخدم بت ليس شيئًا داخل سجلات الأغراض العامة، بالتنفيذ المضاربي بعد الاستثناءات المحتملة.
- تتجنب ملفات السجل المعمارية الكبيرة جدًا الحاجة إلى إعادة تسمية السجل .
- تعمل تعليمات الفروع متعددة الاتجاهات على تحسين التنبؤ بالفرع من خلال الجمع بين العديد من الفروع البديلة في حزمة واحدة.
أضافت بنية Itanium أيضًا ملفات التسجيل الدوارة ، وهي أداة مفيدة لخطوط الأنابيب البرمجية لأنها تتجنب الحاجة إلى إلغاء تسجيل السجلات وإعادة تسميتها يدويًا.
البحوث والتطوير الأخرى
كانت هناك تحقيقات أخرى في هندسة EPIC التي لا ترتبط بشكل مباشر بتطوير هندسة Itanium:
- كان مشروع IMPACT في جامعة إلينوي في أوربانا-شامبين ، بقيادة وين مي هوو ، مصدرًا للعديد من الأبحاث المؤثرة حول هذا الموضوع.
- كان تصميم PlayDoh من HP-labs مشروعًا بحثيًا رئيسيًا آخر.
- كان Gelato عبارة عن مجتمع تطوير مفتوح المصدر حيث عمل الباحثون الأكاديميون والتجاريون على تطوير مترجمات أكثر فعالية لتطبيقات Linux التي تعمل على خوادم Itanium.
انظر أيضا
- حاسوب مجموعة التعليمات المعقدة (CISC)
- حاسوب مجموعة التعليمات المخفضة (RISC)
- حاسوب مجموعة التعليمات الدنيا (MISC)
- كلمة تعليمات طويلة جدًا (VLIW)
- هندسة الحاسوب
- فائق السلم
- إصدار واسع النطاق
مراجع
- ^ Schlansker and Rau (فبراير 2000). "EPIC: An Architecture for Instruction-Level Parallel Processors" (PDF) . HP Laboratories Palo Alto, HPL-1999-111 . تم الاسترجاع في 2008-05-08 .
- ^ US 4847755، موريسون، جوردون إي؛ بروكس، كريستوفر بي؛ وجلوك، فريدريك جي، "طريقة المعالجة المتوازية وجهاز لزيادة المعالجة طوال الوقت عن طريق المعالجة المتوازية للتعليمات منخفضة المستوى ذات التزامن الطبيعي"، نُشر في 1989-07-11، وتم تخصيصه لشركة MCC Development Ltd.
- ^ "اختراع إيتانيوم: كيف ساعدت مختبرات HP في إنشاء هندسة الرقائق من الجيل التالي". مختبرات HP . يونيو 2001. مؤرشف من الأصل في 2012-03-04 . تم الاسترجاع في 2007-12-14 .
- ^ دي جيلاس، يوهان (9 نوفمبر 2005). "إيتانيوم - هل هناك ضوء في نهاية النفق؟". أناند تيك . تم الاسترجاع في 2008-05-08 .
روابط خارجية
- الخلفية التاريخية لـ EPIC
- مارك سموذرمان (2002) "فهم بنية EPIC وتنفيذاتها"
