نظرسنجی: این مقاله چه میزان برای شما سودمند بود؟
زیاد
کم
[نمایش نتایج]
توضیح: این یک نظرسنجی عمومی است. کاربران میتوانند گزینه انتخابی شما را مشاهده کنند.
ارسال پاسخ 
 
امتیاز موضوع:
  • 62 رأی - میانگین امتیازات : 3.34
  • 1
  • 2
  • 3
  • 4
  • 5

جعبه ابزار پردازش موازی (Parallel Computing Toolbox)

۱۳۹۰/۶/۲, ۰۶:۵۴ صبح
ارسال: #1

جعبه ابزار پردازش موازی (Parallel Computing Toolbox)


همانگونه که در مقاله بهینه نویسی اسکریپت در MATLAB ذکر شد، یکی از راه های افزایش سرعت محاسبات در این نرم افزار استفاده از جعبه ابزار پردازش موازی یا Parallel Computing می باشد. با استفاده از این جعبه ابزار می توانید شما انجام یک سری از کارها را تقسیم نمایید و به جای اینکه تمام کارها را به یک کارگر (Worker) واگذار نمایید، هر بخش را به یک کارگر محول نمایید. در MATLAB این کارگرها در ساده ترین حالت هسته های CPU و در حالت پیچیده تر هسته های کامپیوتر های متصل شده به هم می باشند.

به عنوان نمونه اگر سیستم کامپیوتر شما یک سیستم دو هسته ای می باشد. در حالت عادی تمامی عملیات انجام شده فقط در یک هسته (کارگر) انجام می گردد. اما با استفاده از جعبه ابزار پردازش موازی میتوان از هر دو هسته استفاده نمود، در این حالت به طور همزمان در هر یک از هسته ها دو عملیات به صورت مجزا از یکدیگر انجام شده و سرعت پردازش و اجرای برنامه تقریبا دو برابر می گردد.

برای استفاده از این جعبه ابزار کافی است بعد از اطمینان از نصب بودن این جعبه ابزار، حلقه های for برنامه خود را به parfor تبدیل نمایید. حلقه ها معمولاً زمان بر ترین مراحل محاسبات را در خود جای می دهند. نکته ای که در استفاده از parfor وجود دارد این است که در حلقه تکرار مورد نظر برای استفاده از parfor باید تکرارهای شما به یکدیگر وابسته نباشند. به عنوان نمونه در حل مساله پرتابه (یا تحلیل جریان) اگر لازم باشد سرعت (یا جریان) با استفاده از تکرارهای زمانی قبلی محاسبه شود، در این حالت استفاده از parfor غیر ممکن خواهد بود. برای توضیحات بیشتر در این زمینه به راهنمای MATLAB مراجعه گردد.

تنها نکته باقیمانده در این حالت تعریف تعداد کارگرها می باشد. تعیین تعداد کارگرها به سخت افزار های شما و نحوه اتصال آنها به یکدیگر بستگی دارد. در هر صورت برای استفاده از CPU های یک سیستم چند هسته ای معمولاً تعداد کارگرها برابر تعداد هسته ها در نظر گرفته می شود. این تعریف کارگر ها در این جعبه ابزار به کمک تابع matlabpool انجام می شود.

لذا اگر برنامه ساده ای در حالت عادی به صورت زیر صورت پذیرد.

کد:
[این بخش برای برخی از گروه های انجمن در دسترس می باشد.]
[ثبت نام کنید]

پیغام زیر در خط فرمان اجرا می گردد.
نقل قول :Elapsed time is 23.619181 seconds.
با استفاده از جعبه ابزار پردازش موازی می توان برنامه را به صورت زیر برای یک سیستم دو هسته ای بهینه نمود.

کد:
[این بخش برای برخی از گروه های انجمن در دسترس می باشد.]
[ثبت نام کنید]

با اجرای برنامه فوق بر روی کامپیوتر من اجرای برنامه با پیغام زیر رو به رو گردید و سرعت محاسبات تقریبا دو برابر بیشتر گردید.

نقل قول :Starting matlabpool using the 'local' configuration ... connected to 2 labs.
Elapsed time is 17.045922 seconds.
Sending a stop signal to all the labs ... stopped.

در این حالت ملاحظه میگردد که سرعت اجرای برنامه بهبود یافته است، اما این میزان بهبود دقیقا دو برابر نیست. دلیل این امر به معماری و ساختار تقسیم کار و پردازش مربوط می باشد که خارج از بحث این مطلب است. اما برای درک شهودی به طور ساده در نظر داشت باشید که دو کارگر ساده همزمان به اندازه دو برابر ظرفیت یک کارگر کار نمی کنند.
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط admin ، gilda ، Sina-
۱۳۹۰/۸/۲۵, ۰۸:۰۰ عصر
ارسال: #2

RE: جعبه ابزار پردازش موازی (Parallel Computing Toolbox)


سلام
اگه ممکنه آموزش فارسی این toolbox را قرار دهید
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
۱۳۹۰/۸/۲۷, ۱۱:۲۷ صبح (آخرین ویرایش در این ارسال: ۱۳۹۰/۹/۶ ۰۸:۱۷ عصر، توسط admin.)
ارسال: #3

RE: جعبه ابزار پردازش موازی (Parallel Computing Toolbox)


(۱۳۹۰/۸/۲۵ ۰۸:۰۰ عصر)patmatp نوشته شده توسط:  سلام
اگه ممکنه آموزش فارسی این toolbox را قرار دهید

یک فیلم آموزشی در این زمینه در گومتلب قرار خواهم داد.


-------------
لینک فیلم آموزشی جعبه ابزار موازی
http://gomatlab.com/forum/Thread-%D8%AC%...8%B2%DB%8C
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط admin ، fzsanjab
۱۳۹۱/۲/۲۹, ۱۰:۵۱ عصر (آخرین ویرایش در این ارسال: ۱۳۹۱/۲/۲۹ ۱۰:۵۲ عصر، توسط eh_soltani.)
ارسال: #4

پاسخ: جعبه ابزار پردازش موازی (Parallel Computing Toolbox)


سلام
دوست عزیز شما پردازش موازی با این روش رو بصورت چند نودی تست کردین ؟
من خیلی مطالعه کردم اما هنوز موفق نشدم اگه شما اطلاعاتی دارین لطفا در اختیار قرار بدین
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط fzsanjab
۱۳۹۱/۲/۳۰, ۱۰:۵۱ صبح
ارسال: #5

پاسخ: جعبه ابزار پردازش موازی (Parallel Computing Toolbox)


(۱۳۹۱/۲/۲۹ ۱۰:۵۱ عصر)eh_soltani نوشته شده توسط:  سلام
دوست عزیز شما پردازش موازی با این روش رو بصورت چند نودی تست کردین ؟
من خیلی مطالعه کردم اما هنوز موفق نشدم اگه شما اطلاعاتی دارین لطفا در اختیار قرار بدین

لینک زیر یک راهنما برای همین کار شما در دانشگاه میشیگان هست که خیلی خوب مسائل را توضیح داده فیلم آموزشی هم در سایت یوتوب موجود است.

http://cac.engin.umich.edu/.../matlab

اما تا الان خودم استفاده نکردم.
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط fzsanjab
ارسال پاسخ 




کاربرانِ درحال بازدید از این موضوع:
1 مهمان

بازگشت به بالابازگشت به محتوا