حلقات الاستنسل المتكررة

تُعدّ حلقات الاستنسل التكرارية (ISLs) أو حسابات الاستنسل فئةً من حلول معالجة البيانات العددية [ 1 ] التي تُحدّث عناصر المصفوفة وفقًا لنمط ثابت يُسمى الاستنسل. [ 2 ] وتُستخدم هذه الحلقات بكثرة في عمليات المحاكاة الحاسوبية ، مثل ديناميكيات الموائع الحسابية في التطبيقات العلمية والهندسية. ومن الأمثلة البارزة الأخرى: حلّ المعادلات التفاضلية الجزئية [ 1 ] ، ونواة جاكوبي ، وطريقة جاوس-سيدل [ 2 ] ، ومعالجة الصور [ 1 ]، والأتمتة الخلوية [ 3 ] . ويُميّز الهيكل المنتظم للمصفوفات تقنيات الاستنسل عن طرق النمذجة الأخرى، مثل طريقة العناصر المحدودة . ويمكن صياغة معظم رموز الفروق المحدودة التي تعمل على الشبكات المنتظمة على شكل حلقات استنسل تكرارية.
تعريف
تُجري خوارزميات ISL سلسلة من عمليات المسح (تُسمى خطوات زمنية) عبر مصفوفة مُعطاة. [ 2 ] عادةً ما تكون هذه المصفوفة شبكة منتظمة ثنائية أو ثلاثية الأبعاد. [ 3 ] تُسمى عناصر المصفوفات غالبًا بالخلايا. في كل خطوة زمنية، يتم تحديث جميع عناصر المصفوفة. [ 2 ] باستخدام عناصر المصفوفة المتجاورة بنمط ثابت (النمط)، يتم حساب القيمة الجديدة لكل خلية. في معظم الحالات، تبقى قيم الحدود دون تغيير، ولكن في بعض الحالات (مثل أكواد LBM ) يلزم تعديلها أثناء الحساب أيضًا. نظرًا لأن النمط هو نفسه لكل عنصر، يتكرر نمط الوصول إلى البيانات. [ 4 ]
بصورة أكثر رسمية، يمكننا تعريف ISLs على أنها مجموعة من 5 عناصربالمعنى التالي: [ 3 ]
- هي مجموعة الفهارس. وهي تحدد بنية المصفوفة.
- هي مجموعة الحالات (غير المحدودة بالضرورة)، والتي قد تتخذها كل خلية في أي خطوة زمنية معينة.
- يحدد الحالة الأولية للنظام عند الزمن 0.
- هو الاستنسل نفسه ويصف الشكل الفعلي للحي. هناكالعناصر الموجودة في الاستنسل.
- هي دالة الانتقال التي تُستخدم لتحديد الحالة الجديدة للخلية، اعتمادًا على جيرانها.
بما أن I عبارة عن فاصل صحيح ذي k بُعد، فإن المصفوفة ستمتلك دائمًا بنية شبكة منتظمة محدودة. تُسمى المصفوفة أيضًا فضاء المحاكاة، ويتم تحديد الخلايا الفردية بواسطة فهرسها.القالب عبارة عن مجموعة مرتبة منالإحداثيات النسبية. يمكننا الآن الحصول عليها لكل خليةمجموعة مؤشرات جيرانها
يتم تحديد حالاتهم عن طريق رسم خريطة للزوج المرتبإلى المجموعة المقابلة من الحالات، أينيُعرَّف على النحو التالي:
هذا كل ما نحتاجه لتحديد حالة النظام للخطوات الزمنية التاليةمع:
لاحظ أنيتم تعريفها علىوليس فقط علىبما أن شروط الحدود تحتاج إلى تحديد أيضًا. في بعض الأحيان تكون عناصريمكن تعريفها عن طريق جمع متجهات بتردد أبعاد فضاء المحاكاة لتحقيق طوبولوجيات حلقية:
قد يكون هذا مفيدًا لتطبيق شروط الحدود الدورية ، مما يبسط بعض النماذج الفيزيائية.
مثال: تكرار جاكوبي ثنائي الأبعاد

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






قوالب الرسم
يعتمد شكل الجوار المستخدم أثناء التحديثات على التطبيق نفسه. أكثر القوالب شيوعًا هي النسخ ثنائية وثلاثية الأبعاد من جوار فون نيومان وجوران مور . يستخدم المثال أعلاه قالب فون نيومان ثنائي الأبعاد، بينما تستخدم أكواد LBM عمومًا نسخته ثلاثية الأبعاد. تستخدم لعبة كونواي للحياة جوار مور ثنائي الأبعاد. مع ذلك، يمكن أيضًا العثور على قوالب أخرى، مثل قالب 25 نقطة لانتشار الموجات الزلزالية [ 5 ] .
مشاكل التنفيذ
يمكن صياغة العديد من أكواد المحاكاة بشكل طبيعي على هيئة سلاسل متداخلة (ISLs). ونظرًا لأن وقت الحساب واستهلاك الذاكرة يزدادان خطيًا مع عدد عناصر المصفوفة، فإن التنفيذ المتوازي لسلاسل المتداخلة يُعدّ ذا أهمية قصوى للبحث العلمي. [ 6 ] ويُمثل هذا تحديًا نظرًا للترابط الوثيق بين العمليات الحسابية (بسبب اعتماد تحديثات الخلايا على الخلايا المجاورة) ولأن معظم سلاسل المتداخلة مُقيدة بالذاكرة (أي أن نسبة الوصول إلى الذاكرة إلى العمليات الحسابية عالية). [ 7 ] وقد تم استكشاف جميع البنى المتوازية الحالية تقريبًا لتنفيذ سلاسل المتداخلة بكفاءة؛ [ 8 ] وفي الوقت الحالي، أثبتت وحدات معالجة الرسومات للأغراض العامة (GPGPUs) أنها الأكثر كفاءة. [ 9 ]
المكتبات
نظراً لأهمية نماذج الاستنسل في عمليات المحاكاة الحاسوبية ومتطلباتها الحسابية العالية، تُبذل جهودٌ حثيثة لإنشاء مكتبات قابلة لإعادة الاستخدام لدعم العلماء في إجراء الحسابات القائمة على الاستنسل. تُعنى هذه المكتبات في الغالب بالتوازي، ولكنها قد تتناول أيضاً تحديات أخرى، مثل الإدخال والإخراج، والتوجيه ، وحفظ نقاط التفتيش . ويمكن تصنيفها وفقاً لواجهات برمجة التطبيقات (APIs) الخاصة بها.
مكتبات قائمة على التصحيحات
هذا تصميم تقليدي. تدير المكتبة مجموعة من المصفوفات العددية متعددة الأبعاد (n- dimensional)، والتي يمكن لبرنامج المستخدم الوصول إليها لإجراء التحديثات. تتولى المكتبة مزامنة الحدود (المعروفة باسم منطقة الأشباح أو الهالة). تتمثل ميزة هذه الواجهة في إمكانية تكرار برنامج المستخدم على المصفوفات، مما يُسهّل دمج التعليمات البرمجية القديمة [ 10 ] . أما عيبها، فهو عدم قدرة المكتبة على التعامل مع حجب ذاكرة التخزين المؤقت (إذ يجب القيام بذلك داخل الحلقات [ 11 ] ) أو تغليف استدعاءات واجهة برمجة التطبيقات (API) للمُسرّعات (مثل CUDA أو OpenCL ). تشمل التطبيقات Cactus ، وهي بيئة لحل مسائل الفيزياء، و waLBerla .
مكتبات قائمة على الخلايا
تُحوّل هذه المكتبات واجهة تحديث خلايا المحاكاة الفردية إلى واجهة مُخصصة: حيث لا تُعرض سوى الخلية الحالية وجيرانها، على سبيل المثال عبر دوال الوصول والتعديل. وتكمن ميزة هذا النهج في قدرة المكتبة على التحكم الدقيق في الخلايا التي يتم تحديثها وترتيب تحديثها، وهو أمر مفيد ليس فقط لتطبيق حجب ذاكرة التخزين المؤقت [ 9 ] ، بل أيضًا لتشغيل نفس الكود على أنظمة متعددة النوى ووحدات معالجة الرسومات [ 12 ] . يتطلب هذا النهج من المستخدم إعادة تجميع الكود المصدري مع المكتبة. وإلا، سيتطلب الأمر استدعاء دالة لكل تحديث خلية، مما سيؤثر سلبًا على الأداء بشكل كبير. لا يُمكن تحقيق ذلك إلا باستخدام تقنيات مثل قوالب الفئات أو البرمجة الوصفية ، وهذا هو السبب أيضًا في أن هذا التصميم موجود فقط في المكتبات الحديثة. ومن الأمثلة على ذلك مكتبتا Physis و LibGeoDecomp .
مراجع
- 1 2 3 روث، جيرالد وآخرون (1997) وقائع مؤتمر SC'97: الشبكات والحوسبة عالية الأداء. تجميع القوالب في لغة فورتران عالية الأداء.
- 1 2 3 4 سلوت، بيتر إم إيه وآخرون. (28 مايو 2002) العلوم الحاسوبية - المؤتمر الدولي للعلوم الحاسوبية 2002: المؤتمر الدولي، أمستردام، هولندا، 21-24 أبريل 2002. وقائع المؤتمر، الجزء الأول. الصفحة 843. الناشر: سبرينغر. ISBN 3-540-43591-3.
- 1 2 3 فاي، ديتمار وآخرون. (2010) الحوسبة الشبكية: إحدى التقنيات الأساسية للعلوم الحاسوبية . الصفحة 439. الناشر: سبرينغر. رقم ISBN 3-540-79746-7
- ↑ يانغ، لورانس ت.؛ غو، مين يي. (12 أغسطس 2005) الحوسبة عالية الأداء : النموذج والبنية التحتية. صفحة 221. الناشر: وايلي-إنترساينس. ISBN 0-471-65471-X
- ↑ ميكيفيسيوس، باوليوس وآخرون (2009) حساب الفروق المحدودة ثلاثية الأبعاد على وحدات معالجة الرسومات باستخدام CUDA، وقائع ورشة العمل الثانية حول المعالجة للأغراض العامة على وحدات معالجة الرسومات، ISBN 978-1-60558-517-8
- ↑ داتا، كوشيك (2009) ضبط تلقائي لرموز الاستنسل لمنصات متعددة النوى تعتمد على ذاكرة التخزين المؤقت. مؤرشف بتاريخ 8 أكتوبر 2012 في أرشيف الإنترنت ، أطروحة دكتوراه
- ↑ ويلين، جي وآخرون (2009) حجب زمني فعال لحسابات الاستنسل عن طريق موازاة الجبهة الموجية متعددة النوى ، المؤتمر السنوي الثالث والثلاثون لبرامج الحاسوب والتطبيقات التابع لمعهد مهندسي الكهرباء والإلكترونيات، COMPSAC 2009
- ↑ داتا، كوشيك وآخرون (2008) تحسين حساب الاستنسل والضبط التلقائي على أحدث معمارية متعددة النوى ، وقائع مؤتمر ACM/IEEE للحوسبة الفائقة لعام 2008 ، SC '08
- 1 2 شيفر، أندرياس وفاي، ديتمار (2011) خوارزميات كود الاستنسل عالية الأداء لوحدات معالجة الرسومات العامة ، وقائع المؤتمر الدولي للعلوم الحاسوبية، ICCS 2011
- ↑ إس. دوناث، ج. غوتز، سي. فايشتينغر، ك. إيغلبرغر، ويو. رود (2010) waLBerla: تحسين الأنظمة القائمة على معالجات إيتانيوم ذات الآلاف من المعالجات ، الحوسبة عالية الأداء في العلوم والهندسة، غارشينغ/ميونخ 2009
- ↑ نغوين، أنتوني وآخرون (2010) تحسين الحجب ثلاثي الأبعاد ونصف لحسابات الاستنسل على وحدات المعالجة المركزية ووحدات معالجة الرسومات الحديثة ، وقائع مؤتمر ACM/IEEE الدولي للحوسبة عالية الأداء والشبكات والتخزين والتحليل لعام 2010، SC '10
- ↑ ناويا ماروياما، تاتسو نومورا، كينتو ساتو، وساتوشي ماتسوكا (2011) فيزيس: نموذج برمجة متوازية ضمنيًا لحسابات الاستنسل على الحواسيب العملاقة المُسرّعة بوحدات معالجة الرسومات واسعة النطاق، وقائع مؤتمر ACM/IEEE الدولي للحوسبة عالية الأداء والشبكات والتخزين والتحليل لعام 2011، SC '11
روابط خارجية
- فيزيس
- تمت أرشفة LibGeoDecomp بتاريخ 25 يونيو 2022 على موقع Wayback Machine .
- والبرلا
- ديناميكا الموائع الحسابية
- برامج المحاكاة
