ا هو أسلوب تحسين حيث يقوم نظام الكمبيوتر ببعض المهام التي قد لا تكون مطلوبة. يتم العمل قبل معرفة الحاجة إليه فعلا ، وذلك لتلافي التأخير الذي قد يترتب على القيام بالعمل بعد معرفة الحاجة إليه. إذا اتضح أن العمل لم يكن مطلوبًا بعد كل شيء ، فسيتم إرجاع معظم التغييرات التي أجراها العمل ويتم تجاهل النتائج.
الهدف هو توفير المزيد من التزامن في حالة توفر موارد إضافية. يتم استخدام هذا النهج في مجموعة متنوعة من المجالات ، بما في ذلك التنبؤ بالفروع في المعالجات الموصلة بالأنابيب ، والتنبؤ بالقيمة لاستغلال مكان القيمة ، [1] الجلب المسبق للذاكرة والملفات ، والتحكم في التزامن في أنظمة قواعد البيانات . [2] [3]
تعد عملية تعدد مؤشرات الترابط المضاربة حالة خاصة للتنفيذ التخميني.
نظرة عامة
تستخدم المعالجات الدقيقة الحديثة الموصلة بالأنابيب التنفيذ التخميني لتقليل تكلفة تعليمات الفرع الشرطي باستخدام المخططات التي تتنبأ بمسار تنفيذ البرنامج استنادا إلى تاريخ عمليات تنفيذ الفروع. [3] من أجل تحسين الأداء والاستفادة من موارد الكمبيوتر ، يمكن جدولة التعليمات في وقت لم يتم تحديد أنه يجب تنفيذ التعليمات قبل أي فرع . [4]
المتغيرات
كان الحساب التخميني مفهوما سابقًا ذا صلة. [5]
تنفيذ حريص
التنفيذ الحريص هو شكل من أشكال التنفيذ التخميني حيث يتم تنفيذ كلا جانبي الفرع الشرطي ؛ ومع ذلك ، يتم الالتزام النتائج فقط إذا كان المسند صحيحًا. باستخدام موارد غير محدودة ، فإن التنفيذ المتلهف (المعروف أيضًا باسم تنفيذ أوراكل ) من شأنه أن يوفر نظريًا نفس أداء تنبؤ الفرع المثالي. مع الموارد المحدودة ، يجب استخدام التنفيذ بحرص ، حيث أن عدد الموارد اللازمة ينمو بشكل كبير مع كل مستوى من مستويات الفرع المنفذ بشغف. [6]
التنفيذ التنبئي
التنفيذ التنبئي هو شكل من أشكال التنفيذ التخميني حيث يتم توقع بعض النتائج ويستمر التنفيذ على طول المسار المتوقع حتى يتم معرفة النتيجة الفعلية. إذا كان التنبؤ صحيحًا ، يُسمح بالتنفيذ المتوقع ؛ ومع ذلك ، إذا كان هناك خطأ في التنبؤ ، يجب أن يكون التنفيذ غير مراقب وإعادة تنفيذه. تشمل الأشكال الشائعة لهذا تنبؤات الفروع والتنبؤ بالاعتماد على الذاكرة . يشار أحيانًا إلى النموذج المعمم على أنه توقع القيمة. [1] [7]
المفاهيم ذات الصلة
إعدام كسول
التنفيذ الكسول هو عكس التنفيذ المتهور ولا ينطوي على تكهنات. يعد دمج التنفيذ التخميني في تطبيقات لغة برمجة هاسكل ، وهي لغة كسولة ، موضوعًا بحثيًا حاليًا. تم تصميم Eager Haskell ، وهو نوع مختلف من اللغة ، حول فكرة التنفيذ التأملي. جعلت أطروحة الدكتوراه لعام 2003 شركة GHC تدعم نوعًا من التنفيذ التخميني مع آلية إجهاض للتراجع في حالة وجود خيار سيء يسمى التنفيذ المتفائل . [8] كان يعتبر معقدًا للغاية. [9]
الثغرات الأمنية
بدءًا من عام 2017 ، تم العثور على سلسلة من الثغرات الأمنية في عمليات التنفيذ التخميني على بنيات المعالجات الشائعة والتي مكنت بشكل فعال من رفع الامتيازات .
وتشمل هذه:
- شبح
- الانهيار
- المفسد
- ينذر
- أخذ عينات البيانات المعمارية الدقيقة
- توقع الفرع
- تنفيذ خارج النظام
- تيار المروحة (علوم الكمبيوتر)
- multithreading المضاربة
- خطأ في أمان الأجهزة
- نقاط الضعف في وحدة المعالجة المركزية للتنفيذ العابر
المراجع