ثقب حلقي
يُعدّ تثقيب الحلقات تقنية حسابية تقريبية تسمح بتخطي بعض تكرارات الحلقة بشكل منتظم. [ 1 ] [ 2 ] [ 3 ]
يعتمد هذا الأسلوب على معيار واحد : معدل الاختراق . ويمكن تفسير معدل الاختراق على أنه عدد التكرارات التي يجب تخطيها في كل مرة، أو عدد التكرارات التي يجب إجراؤها قبل تخطي تكرار واحد.
تتضمن أنواع اختراق الحلقات تلك التي تتخطى التكرارات بشكل حتمي على فترات منتظمة، وتلك التي تتخطى التكرارات في بداية الحلقة أو نهايتها، وتلك التي تتخطى عينة عشوائية من التكرارات. يمكن للمترجم اختيار نوع الاختراق أثناء الترجمة، أو تضمين أدوات تسمح لنظام التشغيل بتعديل استراتيجية الاختراق ومعدله بشكل تكيفي لتحقيق هدف الدقة الشاملة.
تم تطوير تقنيات ثقب الحلقة لأول مرة من قبل أستاذ معهد ماساتشوستس للتكنولوجيا مارتن سي. رينارد والباحثين في مجموعته، هنري هوفمان، وساسا ميسايلوفيتش، وستيليوس سيديروغلو.
أمثلة على التعليمات البرمجية
توضح الأمثلة التالية نتيجة تطبيق عملية تثقيب الحلقات على هذا الكود المصدري الشبيه بلغة C
for ( int i = 0 ; i < N ; i ++ ) { // تنفيذ العمليات }تخطَّ n تكرارًا في كل مرة
for ( int i = 0 ; i < N ; i ++ ) { // تنفيذ العمليات i = i + skip_factor ; }تخطَّ تكرارًا واحدًا بعد n
int count = 0 ;for ( int i = 0 ; i < N ; i ++ ) { if ( count == skip_factor ) { count = 0 ; } else { // do things count ++ ; } }انظر أيضاً
- ↑ هنري هوفمان، ساسا ميسايلوفيتش، ستيليوس سيديروغلو، أنانت أغاروال، مارتن رينارد "استخدام تقنية تثقيب التعليمات البرمجية لتحسين الأداء، وتقليل استهلاك الطاقة، والاستجابة للأعطال" تقرير تقني صادر عن مختبر علوم الحاسوب والذكاء الاصطناعي بمعهد ماساتشوستس للتكنولوجيا 2009-042، سبتمبر 2009
- ↑ ساسا ميسايلوفيتش، ستيليوس سيديروغلو، هنري هوفمان، مارتن سي. رينارد "تحديد خصائص جودة الخدمة" المؤتمر الدولي الثاني والثلاثون لهندسة البرمجيات (ICSE 2010). مايو 2010.
- ↑ ستيلوس سيديروغلو، ساسا ميسايلوفيتش، هنري هوفمان، ومارتن رينارد. "إدارة المفاضلات بين الأداء والدقة باستخدام تقنية ثقب الحلقة". ESEC/FSE. سبتمبر 2011
- تحسين البرمجيات
- نماذج حاسوبية
