طراحی با تک باس خوب است ولی محدودیت هایی دارد ، چون سه تا از خصوصیت های مطلوب باس با هم ناسازگارند که شامل ، پهنای باند ، درنگ زمانی که ( زمان انتقال یک سیگنال ) و طول مسیر زیاد . همچنین پهنای باند محدودی برای حافظه واحد مرتبط با باس وجود دارد . بنابراین یک تک باس به پردازشگرهایی که می توانند با آن مرتبط باشند یک قید مفیدی را تحمیل می کند . تا امروز بیشترین تعداد پردازشگر مرتبط با باس واحد در کامپیوتر های تجاری 36 تا است ، و این تعداد بنظر می رسد که با گذشت زمان رو به کاهش است .
اگر هدف متصل کردن پردازشگرهای بیشتری به هم است بنابراین طراحان کامپیوتری بایست بیشتر از یک باس واحد استفاده کنند . شکل 908 چگونگی ساختار آن را نشان می دهد . توجه کنید که در شکل 902 ص 716 رسانه اتصال ( باس ) بین حافظه و پردازشگر است در حالیکه در شکل 908 و حافظه به هر کدام از پردازشگرها متصل است و رسانه اتصال ( شبکه بین این گره های مرکب است ، برای سیستم ها باس واحد رسانه برای هر بار دسترسی حافظه مورد استفاده قرار می گیرد در حالیکه در حالت های تعدی تنها برای CP ( توانای یک فرایند برای ارتباط با فرآیند دیگر ) مورد استفاده قرار می گیرد . شکل 909 لیست چندین مرتبط با شبکه های via آورده شده است .
و این به ما یک بحث قدیمی دوباره سازمان حافظه در مقیاس بزرگ پردازش های موازی را نتیجه می دهد . متاسفانه اغلب بحث به یک دوگانگی غلط متمرکزمی شود : حافظه مشترک در برابر حافظه توزیع شده . حافظه مشترک که در واقع به معنی یک فضا با آدرس واحد است که به طور ضمنی به ارتباطات با بارگذاری و ذخیره دلالت می کند .
سازمان شبکه های چند پردازشگر ، توجه : برخلاف شکل 902 اتصالات چند پردازشگر ها بلند تر :908 و شکل از بین حافظه و پردازشگرهانیست . همچنین پردازشگرها بایک شبکه در بالای حافظه ساخته شده اند . شاید بهترین مثال : ctayxmp , yamp sun Enterprise جدید ترین مثال باشند .
در مقابل یک نشانی حافظه های چند گانه خاص وجود دارد که به ارتباط صریح بین ارسال ها و دریافت ها دلالت می کند .
حافظه های توزیع شده به قسمت های فیزیکی حافظه بر می گردد . اگر حافظه فیزیکی به چند قسمت تقسیم شود و کنار هر قسمت هم یک پرداز شگر باشد مثل شکل 8 . و در آنصورت حافظه فیزیکی توزیع شده خواهد بود .
دقیقا برعکس حافظه توزیع شده حافظه متمرکز است . جایکه زمان دسترسی به حافظه فیزیکی برای همه پرداز شگرها برابر است چون هر دسترسی از طریق اتصال شکل 902 انجام می شود . بعضی وقتها به این نوع ماشین سالن رقص می گویند .
که پردازشگرها در یک طرف سالن و حافظه ها در طرف دیگر مانند مدرسه رقص که پسرها در طرف اتاق و دخترها در طرف دیگر هستند . ( به عنوان مثال کامپیوتر ترا ، رجوع شود به www. mkp. cem / coze. htm ) . همانطور که در قسمت 901 گفته شد . فضای یک نشانی در برابر فضای نشانی چند گانه و حافظه توزیع شده در برابر حافظه متمرکز شده متمم یکدیگرند : چند پردازشگرها می توانند یک فضای تک نشانی و یک حافظه فیزیکی توزیع شده داشته باشند . بحث مناسب اهمیت جنبه های مثبت و منفی فضای یک نشانی از ارتباطات روشن و از حافظه های فیزیکی توزیع شده را مشخص می کند .
در ماشین ها بدون یک نشانی ، ارتباطات واقع است . برنامه نویس و کامپایلو می بایست پیغام ها را یک گره بفرستد و از گره دیگری پیغامها را دریافت کنند .
شکل 909 : خصوصیات کامپیوترهای چند پردازشگر متصل باشد شبکه برای فروش در سال 1997
برنامه های موازی ( پیغام های عبوری )
بیایید درباره یک شبکه با اتصالات چند پردازشگر 100 پردازنده ای که از حافظه های چند گانه خاص استفاده می کند بزنیم .
جواب : چون این کامپیوتر فضای چند نشانی دارد ، اولین قدم توزیع 100 زیر مجموعه به هر کدام از حافظه های جزئی است . پردازشگر شامل 000/100 شماره ارسالی زیر مجموعه به هر کدام از 100 گره حافظه پردازش است .
مرحله بعدی بدست آوردن حاصل جمع هر کدام از زیر مجموعه هاست . مرحله مشکل آن ، این است که هر کدام از حاصل جمع های جزئی در یک واحد اجرای مختلف واقع شدند . بنابراین ما باید از یک شبکه به هم پیوسته برای ارسال حاصل جمع های جزئی استفاده کنیم تا حاصل جمع نهایی ذخیره شود . علاوه بر ارسال همه حاصل جمع های جزئی به یک پردازشگر واحدی که براساس جمع های متوالی حاصل جمع های جزئی نتیجه می دهد ما تقسیم می کنیم تا موفق شویم . اول نیمی از واحد اجرا حاصل جمع های جزئی را به نیمه دیگری فرستد جایکه دو حاصل جمع جزئی با هم جمع می شوند . سپس یک چهارم واحد اجرا ( نصفی از نصف ) یک حاصل جمع جزئی جدید را به یک چهارم بعدی می فرستد تا مرحله بعدی جمع انجام شود . این تقسیم کردن ها و ارسال و دریافتها تا زمانیکه یک حاصلجمع از همه اعداد بدست آید . ادامه می یابد . فرض کنید pn نمایانگر شماره واحدهای اجرا باشد send/ x,gk تابعی است که شماره x را با مقدار y از شبکه به واحد اجرا ارسال می کند و ()receive یک تابعی است که یک مقدار را از شبکه برای واحد اجرا می گیرد .
این که همه پردازشگرها به دو دسته فرستنده و گیرنده تقسیم می کند و هر کدام از پردازشگرهای گیرنده فقط یک پیغام دریافت می کنند پس ما میتوانیم فرض کنیم یک پردازشگر گیرنده تا وقتی که دریافت می کند ، ممانعت می کند . بنابراین ارسال و دریافت می توانند به عنوان همزمان سازی خاص باری ارتباطات به کار روند . همانگونه پردازشگر ها از انتقال 9 داده ها آگاهند .
طریقه آدرس دهی پردازشگرهای موازی در مقیاس بزرگ :
اغلب پردازشگرهای تجاری در مقیاس گسترده از حافظه توضیع شده استفاده می کنند . هر چند که ساخت ماشینی که بتواند با ازدیاد و ارتقاء پردازشگرهایش حافظه آن هم افزایش و ارتقاء پیدا کند ، یا خیلی مشکل است یا گرانقیمت .
مسئله جدی که دررابطه با ماشین ها ی توضیع حافظه در مقابل طراحان وجود دارد ، مسئله ارتباطات آن است . برای سازندگان سخت افزاری ساده ترین راه حل استفاده از ارتباط فرستادن و دریافت بجای ارتباط ضمنی می باشد که این امر در صورتیکه بعنوان جزئی از بارگزاری یا ذخیره استفاده گر در امکان پذیر است . فرستادن و دریافت هم چنین مزیتی هم دارد که سادگی طرح ارتباط سیستم برای برنامه نویس می باشد . و طریقه محاسبه با استفاده از ارتباط صریح آسانتر از ارتباط مجازی ( تلویحی ) بارگزاری یا ذخیره ای . یا به عبارت دیگر بارگزاری و ذخیره بمراتب از ارتباط پائین تری از نوع فرستادن و دریافت دارد . بعضی از کاربردها اطلاعتشان در دور دست قرار دارد که بصورت گه گاهی و غیر قابل پیش بینی بدست می آید ، بنابراین خیلی مفید خواهد بود که برای اطلاعات دور دست آدرسی تعیین گردد . بجای اینکه آنها را دریافت کنید ، از نظر اینکه ممکن است مورد استفاده قرار گیرد . چنین ماشینی دارای حافظه اشتراکی توضیعی می باشد . ( بنام DSM )