پردازش موازی

دانشنامه آزاد فارسی

پَردازش موازی (parallel processing)
تکنیکی در رایانه که طی آن چندین عملیات به طور هم زمان انجام می شوند. پردازش موازی سرعت محاسبات را افزایش می دهد و به همین سبب در مسائلی که نیاز به حجم زیادی محاسبات دارد، مثل پیش بینی های اقتصادی یا شبیه سازی به کار گرفته می شود. در پردازش موازی یک مسئله به قسمت های جدا و مستقل تقسیم می شود که هر یک از آن ها را روی یک رایانه می توان انجام داد. پردازش موازی به دو طریق، محاسبات با چند پردازنده و موازی سازی در سطح دستورالعمل انجام می گیرد. معماری پردازنده ها را برحسب رشته دستورالعمل ها و رشته داده ها به چهار گروه می توان طبقه بندی کرد. در پردازنده های سری از معماری SISD (یک رشته دستورالعمل، یک رشته داده) استفاده می شود. این معماری برای محاسبات پیچیده که در آن ها هر مرحله به مراحل قبلی وابسته است، کاربرد دارد. در معماری MISD چند دستورالعمل به طور هم زمان روی یک رشته داده انجام می شوند. این معماری برای کاربردهایی همچون تحلیل عکس های ماهواره ای که هم زمان پوشش گیاهی، پدیده های جغرافیایی و اطلاعات دیگر از یک تصویر ماهواره ای استخراج می شوند، مناسب است. در معماری SIMD یک دستورالعمل هم زمان روی چند رشته داده انجام می شود. این معماری برای کاربردهایی همچون پردازش تصاویر و پردازش رادارهای ترافیک هوایی مناسب است. در معماری MIMD دستورالعمل های مختلف به طور هم زمان روی رشته های مختلفی از داده انجام می گیرد. این معماری انعطاف پذیر ترین نوع معماری است، ولی برنامه نویسی آن هم سخت تر است. این معماری برای کاربردهای پیچیده شبیه سازی و برنامه های هوش مصنوعی مناسب است. مسئله مهم دیگر در پردازش موازی نحوه ارتباط پردازنده ها با یکدیگر است. یک راه این است که همه پردازنده ها از یک حافظه مشترک استفاده کنند و از طریق دسترسی به داده های یکدیگر با هم ارتباط داشته باشند. به این روش حافظه مشترک می گویند. راه دیگر این است که هر پردازنده حافظۀ جداگانه مخصوص به خودش را داشته باشد و پردازنده ها برای ارتباط با یکدیگر پیغام رد و بدل کنند. به این روش انتقال پیغام یا حافظه توزیع شده می گویند. هریک از این دو روش مشکلاتی دارد که برای رفع مشکلات آن ها یک روش ترکیبی به اسم حافظه توزیع شده مشترک نیز ابداع شده است. پردازش موازی نسبت به پردازش های سری گران تر است، چراکه قیمت پردازنده ها بالاست و سرعت محاسبات نیز معمولاً نسبت مستقیم با تعداد پردازنده ندارد. علاوه بر این در معماری MIMD برای هماهنگ کردن پردازنده ها با یکدیگر به برنامه نویسی های پیچیده نیاز است. یافتن خطاها در برنامه های MIMD نیز به سبب تعاملات وابسته به زمان بین پردازنده ها مشکل است. در حال حاضر سیستم های پردازش موازی با ظرفیت بیش از ۱۰۰۰ دستورالعمل در هر لحظه بسیار گرانقیمت اند. ولی به زودی سیستم های SIMD ساخته خواهد شد که در آن ها ۱۰۲۴ عنصر پردازنده روی یک مدار مجتمع قرار می گیرد. تحقیقات نشان داده است که در بعضی از مسائل قسمت های غیرقابل تفکیک را با استفاده از یک معماری دیگر می توان تفکیک کرد. موازی سازی ناهمگن نیز نوعی از پردازش موازی است که در آن دو نوع معماری با هم ترکیب می شوند، یا سیستم هایی ساخته می شود که می توانند معماری خود را بر حسب نیاز قسمت های مختلف مسئله تغییر دهند.

پیشنهاد کاربران

بپرس