• تالار گفتمان به روز رسانی شد.
  • برای ورود به سیستم خودكار دریافت مقاله از منوی بالا "دریافت مقاله" را انتخاب كنید.
  • برای آگاهی از نحوه كسب امتیاز از منوی بالا "راهنما" را انتخاب كنید.
  • از کپی کردن مطالب از سایر وبسایت ها خودداری کنید.


کاربران در حال بازدید این موضوع: 1 مهمان
 
رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
   
Thread: پردازش موازی
 mahboubeh
دانشجو

**




  3
  Jan 2013
  0
سپاس ها 0
سپاس شده 5 بار در 3 ارسال

امتیاز: 6.3200$

     
ارسال: #1
پردازش موازی
01-09-2013 12:44 PM
تعریف پردازش موازی:
اگر یک کار را به چند زیر کار تقسیم کنیم سپس آن زیر کارها را با هم روی پردازنده های مجزا بطور موازی اجرا کنیم و در نهایت نتایج بدست آمده از پردازنده های مختلف را با هم ادغام کنیم این عمل را پردازش موازی گویند.
مثالی برای پردازش موازی:
فرض کنید که می خواهیم 1000 عدد را با MergeSort مرتب کنیم، اگر بطور پیش فرض ما دارای 4 پردازنده باشیم ، 1000 عدد را به دسته های 250 تایی تقسیم می کنیم و هر گروه را به یک یردازنده می دهیم تا مرتب کند.
بعد از اینکه تمامی پردازنده ها داده های خود را مرتب کردند، پردازنده شماره صفر(0) داده های مرتب شده پردازنده یک را گرفته و با دادههای خودش ترکیب و مرتب می کند، همزمان پردازنده سه نیز داده های پردازنده چهار را گرفته و همین عمل را انجام می دهد.
بعد از اتمام کار پردازنده صفر و سه ، پردازنده صفر داده های پردازنده سه را گرفته و با داده های خودش ترکیب و مرتب می کند.
مثالی دیگر برای پردازش موازی:
فرض کنید در یک اتاق در هر کنج آن یک پردازنده وجود دارد و ما میخواهیم حاصلجمع n تا عدد را با این p تا پردازنده بدست آوریم. در ابتدا باید اعداد را بین این P پردازنده تقسیم کنیم به هر پردازنده n/p عدد می رسد.
حال با فرض اینکه ما 32 عدد داشته باشیم با 8 پردازنده، به هر کدام 4 عدد می رسد، هر پردازنده(توجه داشته باشید که منظور از پردازنده یک کامپیوتر کامل است) عملیات جمع را بر روی داده های خوش انجام می دهد، بعد از اتمام عملیات جمع هر پردازنده یک عدد که مجموع اعداد داده شده به آن می باشد را در اختیار دارد، حالا 4 تا از پردازنده ها نقش ارسال کنند و 4 تای دیگر نقش دریافت کننده را می گیرند یعنی دریافت کنده ها دداه های دریافتی را با داده های خودشان جمع می کنند، بعد از عمل جمع دو تا از پردازنده ها داده هایشان را برای دو تای دیگر می فرستند و آنها نیز داده های خودشان را با داده های دریافتی جمع می کنند و در نهایت پردازنده یک داده های خودش را برای پردازنده صفر می فرستد و حاصل جمع کل اعداد در پردازنده صفر قرار می گیرد.
آنچه که در پردازش موازی باید به آن توجه شود:
1- معماری موازی : یعنی باید محیط موازی داشته باشیم یعنی باید کامپیوتری داشته باشیم که بتواند بصورت موازی کار کند.
2- طراحی الگوریتم موازی: مساله مهم نوشتن یا طراحی الگوریتمی است که بصورت موازی کار کند، یعنی ما باید بتوانیم راه حل مساله را برای اجرا بصورت موازی آماده کنیم، زیرا الگوریتمهای موازی با الگوریتمهای سری تفاوت دارند.
3- زبانهای برنامه نویسی موازی : یعنی باید زبان برنامه نویسی داشته باشیم که بتواند بصورت موازی کار کند تا بتوانیم الگوریتم را با آن کد کنیم.
مشکلاتی که در زمان پردازش موازی بوجود می آید:
1- همگامی(Coordinating , Coordination): یعنی اینکه اگر در پردازش موازی ما بیش از یک پردازش داریم این پردازشها ممکن است نیاز باشد که با هم همگام شوندیعنی اینکه باید در بین پردازنده ها یک نوع هماهنگی و همگامی وجود داشته باشد، زیرا اگر همان مثال قبلی را در نظر بگیریم در عمل مرتب سازی باید اول تمامی پردازنده ها داده های دریافتی خودشان را مرتب کند و بعد از اتمام کار تمامی آنها شروع به ارسال برای دیگری کنند زیرا ممکن است پردازنده ای داده های خودش را خیلی سریع مرتب کند و پردازنده دیگر هنوز داده هایش آماده نباشد، اگر پردازنده اولی داده هایش را ارسال کند چون پردازنده دوم آماده نیست تولید مشکل می کند. بنابراین اگر پردازندهای کارش زودتر از بقیه گروه تمام شده باید صبر کند تا کار تمامی پردازنده های موجود در گروه تمام شود ، سپس همگی با هم به مرحله بعدی بروند.
2- controlling and monitoring: این دو گزینه نیز در راستای همان همگامی هستند.
اهداف پردازش موازی:
1- کارها را سریعتر انجام دهیم.
2- کارهای بزرگتری را که تا بحال قادر به انجام آنها نبودیم بتوایم انجام دهیم.
سوپر کامپیوتر:
این مبحث وابسته به زمان است، یعنی در هر نسل سیستم ها قدرتمندتر می شوند یعنی قویترین کامپیوتری که در هر زمان وجود دارد .
سوپر کامپیوتر معروف به کلاستر کامپیوتر:
در یک شبکه Lan معمولی بصورت Client server یک نرم افزار بنام MPI (یک محیط انتقال پیام)نصب می کنیم و پردازش موازی انجام می دهیم.
معماری سوپر کامپیوتر بلوجن:
این معماری مربوط به شرکت IBM است در این معماری هر آی سی پردازنده ای که ساخته شده دارای دو پردازنده است و هر پردازنده برای خودش یک حافظه Cache مستقل دارد و نیز یک Cache مشترک برای هر دو پردازنده وجود دارد. سپس 16 تا از این آی سی ها را درون یک بورد قرار می دهند یعنی هر بورد دارای 32 پردازنده است و در نهایت تعدادی از این بوردها را درون یک رک قرار می دهند. این بوردها درون رکها بصورت موازی قرار می گیرند و در نهایت این رکها را با شبکه به هم متصل کرده اند، منتها اینجا بجای یک شبکه برای افزایش سرعت از سه نوع شبکه استفاده کرده اند، دقیقا مانند ماشینهای سری که برای افزایش سرعت بجای یک گذرگاه چندین گذرگاه دارند.
مشکل روش فوق مشکل خنک کردن آنها است هرچند که از پردازنده هایی استفاده می شود که مصرف انرژی آنها کم باشد تا گرمای کمتری تولید کنند ولی چون تعداد پردازنده ها زیاد است(حداقل 512 عدد) بازهم گرمای زیادی تولید می کنند.
تعریف Speedup یا بهره سرعت: Amdahl’s low, Speedup, Efficiency تعریف بهره سرعت مطلق :زمان اجرای بهترین الگوریتم سری برای حل یک مساله تقسیم بر زمان اجرای الگوریتم موازی با p پردازنده برای حل همان مساله را بهره سرعت مطلق یا Speedup مطلق می گویند.
تعریف بهره سرعت نسبی : زمان اجرای الگوریتم موازی با یک پردازنده تقسیم بر زمان اجرای همان الگوریتم با p پردازنده را بهره سرعت نسبی یا Speedup نسبی می گویند.
نکته : معمولا از بهره سرعت نسبی استفاد می شود.
قانون Amdahl’s low :
برای بیان این قانون مثالی را ذکر می کنیم :
فرض کنید که ما 4 عدد کارگر داشته باشیم بهره سرعتی که از آنها می توانیم بگیریم 4 برابر بیشتر نمی تواند باشد و البته بعید است که به 4 برابر نیز برسد زیرا زمانی که ما 2 تا کارگر داشته باشیم یک مقدار زمان لازم است تا آنها کار را بین خودشان تقسیم کنند و نیز مقداری زمان صرف صحبت کردنشان می شود و ما نمی توانیم این ارتباطهای بین آنها را صفر کنیم، اگر این ارتباطها صفر شود اگر 2 کارگر داشته باشیم بهره سرعت 2 برابر می شود و اگر 4 کارگر داشته باشیم بهره سرعت 4 برابر می شود ولی چون این مقدار صفر نمی شود هر چه تعداد افراد بیشتر شود بنابراین ارتباطات بین آنها نیز بیشتر می شود درنتیجه بهره سرعت پائین آمده و اگر نیمسازی داشته باشیم از آن دور می شود.
نقل قول
 سپاس شده توسط alireza1735 ، ghatarat
 jfarzammehr
دانشجو

**




  9
  Jan 2013
  3
سپاس ها 0
سپاس شده 5 بار در 3 ارسال

امتیاز: -5.0000$

     
ارسال: #2
RE: پردازش موازی
01-13-2013 02:49 PM
تعریف پردازش موازی:
اگر یک کار را به چند زیر کار تقسیم کنیم سپس آن زیر کارها را با هم روی پردازنده های مجزا بطور موازی اجرا کنیم و در نهایت نتایج بدست آمده از پردازنده های مختلف را با هم ادغام کنیم این عمل را پردازش موازی گویند.
مثالی برای پردازش موازی:
فرض کنید که می خواهیم 1000 عدد را با MergeSort مرتب کنیم، اگر بطور پیش فرض ما دارای 4 پردازنده باشیم ، 1000 عدد را به دسته های 250 تایی تقسیم می کنیم و هر گروه را به یک یردازنده می دهیم تا مرتب کند.
بعد از اینکه تمامی پردازنده ها داده های خود را مرتب کردند، پردازنده شماره صفر(0) داده های مرتب شده پردازنده یک را گرفته و با دادههای خودش ترکیب و مرتب می کند، همزمان پردازنده سه نیز داده های پردازنده چهار را گرفته و همین عمل را انجام می دهد.
بعد از اتمام کار پردازنده صفر و سه ، پردازنده صفر داده های پردازنده سه را گرفته و با داده های خودش ترکیب و مرتب می کند.
مثالی دیگر برای پردازش موازی:
فرض کنید در یک اتاق در هر کنج آن یک پردازنده وجود دارد و ما میخواهیم حاصلجمع n تا عدد را با این p تا پردازنده بدست آوریم. در ابتدا باید اعداد را بین این P پردازنده تقسیم کنیم به هر پردازنده n/p عدد می رسد.
حال با فرض اینکه ما 32 عدد داشته باشیم با 8 پردازنده، به هر کدام 4 عدد می رسد، هر پردازنده(توجه داشته باشید که منظور از پردازنده یک کامپیوتر کامل است) عملیات جمع را بر روی داده های خوش انجام می دهد، بعد از اتمام عملیات جمع هر پردازنده یک عدد که مجموع اعداد داده شده به آن می باشد را در اختیار دارد، حالا 4 تا از پردازنده ها نقش ارسال کنند و 4 تای دیگر نقش دریافت کننده را می گیرند یعنی دریافت کنده ها دداه های دریافتی را با داده های خودشان جمع می کنند، بعد از عمل جمع دو تا از پردازنده ها داده هایشان را برای دو تای دیگر می فرستند و آنها نیز داده های خودشان را با داده های دریافتی جمع می کنند و در نهایت پردازنده یک داده های خودش را برای پردازنده صفر می فرستد و حاصل جمع کل اعداد در پردازنده صفر قرار می گیرد.
آنچه که در پردازش موازی باید به آن توجه شود:
1- معماری موازی : یعنی باید محیط موازی داشته باشیم یعنی باید کامپیوتری داشته باشیم که بتواند بصورت موازی کار کند.
2- طراحی الگوریتم موازی: مساله مهم نوشتن یا طراحی الگوریتمی است که بصورت موازی کار کند، یعنی ما باید بتوانیم راه حل مساله را برای اجرا بصورت موازی آماده کنیم، زیرا الگوریتمهای موازی با الگوریتمهای سری تفاوت دارند.
3- زبانهای برنامه نویسی موازی : یعنی باید زبان برنامه نویسی داشته باشیم که بتواند بصورت موازی کار کند تا بتوانیم الگوریتم را با آن کد کنیم.
مشکلاتی که در زمان پردازش موازی بوجود می آید:
1- همگامی(Coordinating , Coordination): یعنی اینکه اگر در پردازش موازی ما بیش از یک پردازش داریم این پردازشها ممکن است نیاز باشد که با هم همگام شوندیعنی اینکه باید در بین پردازنده ها یک نوع هماهنگی و همگامی وجود داشته باشد، زیرا اگر همان مثال قبلی را در نظر بگیریم در عمل مرتب سازی باید اول تمامی پردازنده ها داده های دریافتی خودشان را مرتب کند و بعد از اتمام کار تمامی آنها شروع به ارسال برای دیگری کنند زیرا ممکن است پردازنده ای داده های خودش را خیلی سریع مرتب کند و پردازنده دیگر هنوز داده هایش آماده نباشد، اگر پردازنده اولی داده هایش را ارسال کند چون پردازنده دوم آماده نیست تولید مشکل می کند. بنابراین اگر پردازندهای کارش زودتر از بقیه گروه تمام شده باید صبر کند تا کار تمامی پردازنده های موجود در گروه تمام شود ، سپس همگی با هم به مرحله بعدی بروند.
2- controlling and monitoring: این دو گزینه نیز در راستای همان همگامی هستند.
اهداف پردازش موازی:
1- کارها را سریعتر انجام دهیم.
2- کارهای بزرگتری را که تا بحال قادر به انجام آنها نبودیم بتوایم انجام دهیم.
سوپر کامپیوتر:
این مبحث وابسته به زمان است، یعنی در هر نسل سیستم ها قدرتمندتر می شوند یعنی قویترین کامپیوتری که در هر زمان وجود دارد .
سوپر کامپیوتر معروف به کلاستر کامپیوتر:
در یک شبکه Lan معمولی بصورت Client server یک نرم افزار بنام MPI (یک محیط انتقال پیام)نصب می کنیم و پردازش موازی انجام می دهیم.
معماری سوپر کامپیوتر بلوجن:
این معماری مربوط به شرکت IBM است در این معماری هر آی سی پردازنده ای که ساخته شده دارای دو پردازنده است و هر پردازنده برای خودش یک حافظه Cache مستقل دارد و نیز یک Cache مشترک برای هر دو پردازنده وجود دارد. سپس 16 تا از این آی سی ها را درون یک بورد قرار می دهند یعنی هر بورد دارای 32 پردازنده است و در نهایت تعدادی از این بوردها را درون یک رک قرار می دهند. این بوردها درون رکها بصورت موازی قرار می گیرند و در نهایت این رکها را با شبکه به هم متصل کرده اند، منتها اینجا بجای یک شبکه برای افزایش سرعت از سه نوع شبکه استفاده کرده اند، دقیقا مانند ماشینهای سری که برای افزایش سرعت بجای یک گذرگاه چندین گذرگاه دارند.
مشکل روش فوق مشکل خنک کردن آنها است هرچند که از پردازنده هایی استفاده می شود که مصرف انرژی آنها کم باشد تا گرمای کمتری تولید کنند ولی چون تعداد پردازنده ها زیاد است(حداقل 512 عدد) بازهم گرمای زیادی تولید می کنند.
تعریف Speedup یا بهره سرعت: Amdahl’s low, Speedup, Efficiency تعریف بهره سرعت مطلق :زمان اجرای بهترین الگوریتم سری برای حل یک مساله تقسیم بر زمان اجرای الگوریتم موازی با p پردازنده برای حل همان مساله را بهره سرعت مطلق یا Speedup مطلق می گویند.
تعریف بهره سرعت نسبی : زمان اجرای الگوریتم موازی با یک پردازنده تقسیم بر زمان اجرای همان الگوریتم با p پردازنده را بهره سرعت نسبی یا Speedup نسبی می گویند.
نکته : معمولا از بهره سرعت نسبی استفاد می شود.
قانون Amdahl’s low :
برای بیان این قانون مثالی را ذکر می کنیم :
فرض کنید که ما 4 عدد کارگر داشته باشیم بهره سرعتی که از آنها می توانیم بگیریم 4 برابر بیشتر نمی تواند باشد و البته بعید است که به 4 برابر نیز برسد زیرا زمانی که ما 2 تا کارگر داشته باشیم یک مقدار زمان لازم است تا آنها کار را بین خودشان تقسیم کنند و نیز مقداری زمان صرف صحبت کردنشان می شود و ما نمی توانیم این ارتباطهای بین آنها را صفر کنیم، اگر این ارتباطها صفر شود اگر 2 کارگر داشته باشیم بهره سرعت 2 برابر می شود و اگر 4 کارگر داشته باشیم بهره سرعت 4 برابر می شود ولی چون این مقدار صفر نمی شود هر چه تعداد افراد بیشتر شود بنابراین ارتباطات بین آنها نیز بیشتر می شود درنتیجه بهره سرعت پائین آمده و اگر نیمسازی داشته باشیم از آن دور می شود.
نقل قول
 سپاس شده توسط alireza1735 ، ghatarat
 mahbobeh
دانشجو

**




  2
  Feb 2013
  0
سپاس ها 0
سپاس شده 1 بار در 1 ارسال

امتیاز: 0.3400$

     
ارسال: #3
RE: پردازش موازی
02-26-2013 04:40 PM
سلام
مطلب خوبی بود.
یه سوال داشتم

ببخشید چطور میشه پردازش موازی را در پایگاه داده SQL server 2008 پیاده سازی کرد؟؟؟
ممنون
نقل قول
 سپاس شده توسط alireza1735
 amir1540
دانشجو

**




  12
  Apr 2013
  0
سپاس ها 0
سپاس شده 7 بار در 6 ارسال

امتیاز: 1.7900$

     
ارسال: #4
RE: پردازش موازی
04-03-2013 09:20 PM
سلام دوستان
در مورد کاربردهای توپولوژی هرمی(Pyramidal) در کامپیوتر کسی اطلاعات فارسی در حد 3صفحه داره بمن بده.
برا درس الگوریتم موازی
(خیلی فوری میخام تا جمعه بیشتر وقت ندارم)
یه سوال دیگه هم دارم.
میخام برنامه حل مسأله 8وزیر با زبان c# و با استفاده از MPI موازی کنم که روی دوتا سیستم اجرا بشه.
کلأ برای هر برنامه دیگه با استفاده از MPIچیکار کنیم که بطور موازی روی چنتا سیستم همزمان اجرا بشه
(آخرین تغییر در این ارسال: 04-03-2013 09:25 PM توسط amir1540.)
نقل قول
 سپاس شده توسط alireza1735