برنامهسازی موازی
از ویکیپدیا، دانشنامهٔ آزاد.
برنامهسازی موازی یا محاسبات موازی به اجرای همزمان یک برنامه (که به بخشهای کوچکتری تقسیم شده است) بر روی چند پردازنده به منظور دستیابی به سرعت بیشتر اطلاق می شود. ایده اصلی این است که فرآیند حل یک مساله را معمولا میتوان به زیروظایف خردتری تقسیم کرد که با اجرای همزمان این زیروظایف و هماهنگ کردن آنها مساله اصلی در زمان کوتاهتری حل می شود.
[ویرایش] تعریف
یک سیستم محاسبات موازی رایانه ایست با بیش از یک پردازنده که برای پردازش موازی استفاده می شود. در گذشته، در یک سیستم چند پردازنده هر پردازنده در یک بسته بندی جداگانه قرار داشت، اما امروزه با معرفی تراشه های چند هسته ای، چندین پردازنده در کنار یکدیگر در یک بسته بندی قرار می گیرند. در حال حاضر انواع بسیار گوناگونی از رایانه های موازی وجود دارند که بر اساس نوع اتصالات بین پردازنده ها و حافظه از یکدیگر متمایز می شوند. رده بندی Flynn که یکی از پذیرفته شده ترین رده بندی ها برای رایانه های موازی است، رایانه های موازی را بر این اساس طبقه بندی می کند که آیا شامل پردازنده هایی هستند که همگی همزمان یک دستور یکسان را روی داده های متفاوتی اجرا می کنند (یک دستور چند داده SIMD: Single Instruction Multiple Data) و یا هر پردازنده دستور متفاوتی را روی داده هایی متفاوت اجرا می کند (چند دستور چند داده MIMD: Multiple Instruction Multiple Data).

