برنامهنویسی موازی با تبادل پیام
برنامهنویسی موازی با تبادل پیام، فرآیندها را در ماشینهای با حافظه توزیعشده از طریق ارتباط صریح هماهنگ میکند، که مدل غالب برای محاسبات با کارایی بالا در مقیاس بزرگ است.
Definition
در برنامهنویسی موازی با تبادل پیام، هر فرآیند حافظه خصوصی خود را دارد و فرآیندها صرفاً با ارسال و دریافت پیامها همکاری میکنند؛ رابط تبادل پیام (MPI) کتابخانه استانداردی است که اصول اولیه ارتباط نقطهبهنقطه و جمعی را برای این مدل فراهم میکند.
Scope
این موضوع شامل پارادایم تبادل پیام برای کامپیوترهای موازی با حافظه توزیعشده است: عملیات ارسال/دریافت نقطهبهنقطه و انواع مسدودکننده و غیرمسدودکننده آنها، عملیات جمعی (پخش، پراکنده/جمعآوری، کاهش، همه به همه)، گروههای فرآیند و ارتباطدهندهها، و استاندارد بالفعل MPI. همچنین مدلهای هزینه ساختاریافته مانند مدل موازی همگامسازی انبوه (BSP) را پوشش میدهد که طراحی الگوریتم و استدلال عملکرد را هدایت میکنند.
Core questions
- چگونه محاسبات در فرآیندهای حافظه توزیعشده که فضای آدرس مشترکی ندارند، تقسیم میشوند؟
- چه زمانی عملیات جمعی باید جایگزین ارتباط صریح نقطهبهنقطه شود؟
- چگونه میتوان هزینه ارتباط یک الگوریتم موازی را مدلسازی و به حداقل رساند؟
Key theories
- ارتباط نقطهبهنقطه و جمعی
- MPI محاسبات موازی را حول پیامهای صریح بین فرآیندها و الگوهای جمعی بهینهسازی شده — پخشها، کاهشها و جمعآوریها — ساختار میدهد که پیادهسازیهای کارآمد آنها برای برنامههای مقیاسپذیر با حافظه توزیعشده حیاتی است.
- مدل موازی همگامسازی انبوه
- مدل BSP محاسبات را به ابرمراحل شامل محاسبات محلی، ارتباط و همگامسازی سد تقسیم میکند و یک مدل هزینه واضح ارائه میدهد که طراحی الگوریتم و سختافزار تبادل پیام را به هم متصل میکند.
- طراحی الگوریتم آگاه از ارتباط
- از آنجا که ارتباط اغلب هزینه غالب در ماشینهای با حافظه توزیعشده است، الگوریتمهای موازی برای به حداقل رساندن حجم پیام و تأخیر، و متعادل کردن محاسبات با ارتباط، طراحی و تحلیل میشوند.
Clinical relevance
MPI ستون فقرات شبیهسازی علمی در ابرکامپیوترها — مدلسازی اقلیم، دینامیک سیالات محاسباتی، دینامیک مولکولی — و هر محاسباتی است که باید در بسیاری از گرههای حافظه توزیعشده یک خوشه مقیاسپذیر باشد.
History
مدل BSP Valiant در سال 1990 یک انتزاع پلساز برای محاسبات موازی ارائه داد؛ انجمن MPI تبادل پیام را در سال 1994 استانداردسازی کرد و نسخههای متوالی MPI به علاوه متون مرجع توسط Gropp، Snir، Dongarra و همکاران آن را به زبان مشترک محاسبات با کارایی بالا تبدیل کردند.
Key figures
- William Gropp
- Jack Dongarra
- Marc Snir
- Leslie Valiant
Related topics
Seminal works
- gropp2014
- valiant1990
- snir1998
Frequently asked questions
- چرا تبادل پیام برای ماشینهای موازی بسیار بزرگ ترجیح داده میشود؟
- کامپیوترهای موازی بزرگ از نظر فیزیکی دارای حافظه توزیعشده هستند: هیچ حافظه مشترک واحدی برای مقیاسپذیری وجود ندارد. تبادل پیام مستقیماً با این سختافزار مطابقت دارد و برنامهنویس را مجبور میکند تا محلیت دادهها را به صراحت مدیریت کند، که این امر امکان مقیاسپذیری به هزاران یا میلیونها هسته را فراهم میکند.