Professional Documents
Culture Documents
بهینه سازی گردش کار در سیستم های رایانش ابری MPI هوشمند x3hkua
بهینه سازی گردش کار در سیستم های رایانش ابری MPI هوشمند x3hkua
عنوان :بهینه سازی گردش کار در سیستم¬های رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
نگارش........ :
صفحه آرا:
ناشر:
شمارگان 100 :نسخه نوبت :اول
شابک978-622-7662-59-7 :
قیمت:
فهرست مطالب
فصل اول 1 .................................................. ................................ ................................ ................................ ................................
نوآوری 3 ...................................................... ................................ ................................ ................................ ................................
اهمیت و ضرورت 5 ................................... ................................ ................................ ................................ ................................
تعريف نظری و عملیاتی واژههای تحقیق 6 ......................... ................................ ................................ ................................
بهینهسازی 6 .............................................. ................................ ................................ ................................ ................................
گردش کار 6 ............................................... ................................ ................................ ................................ ................................
رايانش ابری 7 ............................................ ................................ ................................ ................................ ................................
7 .................................................... ................................ ................................ ................................ ................................ SMPIA
روش شناسی تحقیق 7 ............................. ................................ ................................ ................................ ................................
قلمرو موضوعی ،زمانی و مکانی 8 .......................................... ................................ ................................ ................................
جمعبندی 8 ................................................ ................................ ................................ ................................ ................................
ساختار کتاب 8 .......................................... ................................ ................................ ................................ ................................
ادبیات تحقیق 10 ...................................... ................................ ................................ ................................ ................................
دادههای بزرگ 10 ..................................... ................................ ................................ ................................ ................................
تعاريف و مفاهیم 11 ................................. ................................ ................................ ................................ ................................
مدل شبکه و گردشکار 18 ..................................................... ................................ ................................ ................................
19 ...................... ................................ ................................ ................................ ................................ ................................ MPI
اهداف 22 .......................................... ................................ ................................ ................................ ................................ MPI
ويژگیهای پايهای در برنامههای تبادل پیغام 22 ............................................... ................................ ................................
نحوه ارتباط بین ماشینهای مجازی 22 .............................. ................................ ................................ ................................
الگوريتمهای يادگیری و يادگیری عمیق ماشین 23 ......................................... ................................ ................................
درخت تصمیم 2۴ ..................................... ................................ ................................ ................................ ................................
پیشینه تحقیق 25 .................................... ................................ ................................ ................................ ................................
فصل دوم :روش تحقیق 31 ................................................... ................................ ................................ ................................
مقدمه 32 .................................................... ................................ ................................ ................................ ................................
شرح مشکل 37 .......................................... ................................ ................................ ................................ ................................
فازهای اساسی 38 ..................................................... ................................ ................................ ................................ SMPIA
مرحله محاسبه رتبه ۴1 ............................................. ................................ ................................ ................................ AVM
مرحله انتخاب مبتنی بر رتبه۴3 ............................... ................................ ................................ ................................ AVM
مرحله نگاشت جريان ۴3 ......................... ................................ ................................ ................................ ................................
حل مشکل TSRAبا استفاده از ۴5 ....................... ................................ ................................ ................................ SMPIA
حل مشکل TSRAبا استفاده از SMPIAبر روی الگوريتم گريدی ۴6 .......................................... ................................
حل مشکل TSRAبا استفاده از SMPIAبر روی الگوريتمهای MaxMinو 50 ............................................... Min-Min
حل مشکل TSRAبا استفاده از SMPIAبر روی الگوريتمهای GAو 52 ................................. ................................ PSO
حل مشکل TSRAبا استفاده از SMPIAبر روی الگوريتمهای خوشه بندی 61 ............................................. FKM
حل مشکل Starvationبا استفاده از SMPIAبهینه شده 66........................ ................................ ................................
پیاده سازی 72 ............................................. ................................ ................................ ................................ MPICH-3.0.4
خالصه 73 ................................................... ................................ ................................ ................................ ................................
فصل سوم :تجزيه و تحلیل نتايج و ارزيابی يافتههایتحقیق 125 ............................................... ................................
مقدمه 126.................................................. ................................ ................................ ................................ ................................
اجزا و پارامترهای شبیه سازی 126....................................... ................................ ................................ ................................
ارزيابی 128 ................................ ................................ ................................ ................................ ................................ SMPIA
نتايج شبیه سازی با 129 ......................................... ................................ ................................ ................................ SMPIA
ارزيابی عملکرد 137 .............................................. ................................ ................................ ................................ FSMPIA
نتايج شبیه سازی با 138 ...................................... ................................ ................................ ................................ FSMPIA
تجزيه و تحلیل و مقايسه FSMPIAبا 1۴1 ........................................ ................................ ................................ SMPIA
ارزيابی عملکرد FSMPIAو 1۴2 ..................................................... ................................ ................................ O-SMPIA
ارزيابی گذردهی FSMPIAو 1۴2 ................................................... ................................ ................................ O-SMPIA
ارزيابی زمان پاسخ FSMPIAو 1۴3 ............................................... ................................ ................................ O-SMPIA
ارزيابی زمان اجرا FSMPIAو 1۴3 ................................................. ................................ ................................ O-SMPIA
ارزيابی زمان تأخیر FSMPIAو 1۴۴ .............................................. ................................ ................................ O-SMPIA
ارزيابی زمان تأخیر و تعادل بار 1۴8 ..................................................... ................................ ................................ SMPIA
بحث و تبیین نتايج 1۴9 ......................... ................................ ................................ ................................ ................................
مقايسه عملکرد SMPIAو 1۴9 ................................................ ................................ ................................ Non-SMPIA
مقايسه عملکرد FSMPIAو 150 ............................................. ................................ ................................ Non-FSMPIA
مقايسه عملکرد SMPIAو 151 ....................................................... ................................ ................................ O-SMPIA
خالصه 126................................................. ................................ ................................ ................................ ................................
نتیجهگیری 125 ....................................... ................................ ................................ ................................ ................................
مزايا و معايب روش پیشنهادی 126...................................... ................................ ................................ ................................
پیشنهادها 127 .......................................... ................................ ................................ ................................ ................................
پیشنهادها به سازمان بکارگیرنده 127 ................................. ................................ ................................ ................................
پیشنهاد به محققین برای کار در آينده 128 ...................................................... ................................ ................................
محدوديتهای تحقیق 128 .................................................... ................................ ................................ ................................
فهرست منابع 126..................................... ................................ ................................ ................................ ................................
پیوست 132 ........................................... ................................ ................................ ................................ ................................ 1
پیوست 13۴ ........................................... ................................ ................................ ................................ ................................ 2
فهرست جداول
جدول :1-2تعدادی از مشهورترين عملیات اولیه انتقال پیام در 21 .................................. ................................ MPI
جدول :2-2مقايسه پارامترهای کارايی SMPIAبا معیارها ،الگوريتمها و روشهای بهینهسازی 28 .....................
جدول :1-3شبه کد برای الگوريتم ۴0 ..................................................... ................................ ................................ MPI
جدول :2-3شبه کد برای تابع۴2 ............................... ................................ ................................ ................................ RTs
جدول :3-3شبه کد برای تابع انتخاب بهترين ۴2 ............................... ................................ ................................ AVM
جدول :۴-3شبه کد تابع هزينه۴۴ ...................... ................................ ................................ ................................ SMPIA
جدول :5-3شبه کد اختصاص دادن شناسهها به AVMها در ۴7 ............................................. Greedy-SMPIA
جدول :6-3شبه کد الگوريتم گريدی با ۴9 ....................................... ................................ ................................ SMPIA
جدول :7-3لیست تراکنشها و جريانهای فعلی 52 ....................................... ................................ ................................
جدول :8-3ماتريس اختصاص 53 ........................................ ................................ ................................ ................................
جدول :9-3پارامترهای 5۴ ............................................ ................................ ................................ ................................ GA
جدول :10-3پارامترهای 5۴ ....................................... ................................ ................................ ................................ PSO
جدول :11-3الگوريتم تورنمنت در 5۴ ....................... ................................ ................................ ................................ GA
جدول :12-3شبه کد الگوريتم گريدی با 57 .................................... ................................ ................................ SMPIA
جدول :13-3الگوريتم مرحله جايگزينی 58 ...................... ................................ ................................ ................................
جدول :1۴-3انتخاب رهبر جديد و بهترين ذره 59 .......................................... ................................ ................................
جدول :15-3ارزيابی ذرات جديد 59 .................................. ................................ ................................ ................................
جدول :16-3ارزيابی کروموزومهای جديد 59 ................................................... ................................ ................................
جدول :17-3پیاده سازی SMPIAبرای AVMها 60 ...................................... ................................ ................................
جدول :18-3صفات شاخص 61 ........................................... ................................ ................................ ................................
جدول :19-3فراداده (جدول نگاشت) 62 ........................... ................................ ................................ ................................
جدول :20-3الگوريتم پايه 63 ......................... ................................ ................................ ................................ k-means
جدول :21-3الگوريتم برای زمانبندی 68 ............................................ ................................ ................................ CAPS
جدول :22-3الگوريتم روش پیشنهادی 71 .................................. ................................ ................................ O-SMPIA
جدول :1-۴پارامترهای شبیه سازی 127 .......................... ................................ ................................ ................................
جدول :2-۴جزئیات پارامترهای شبیه سازی 128 ........................................... ................................ ................................
جدول :3-۴مقايسه پارامترهای کارايی با Non-SMPIAو 132 ................................ ................................ SMPIA
جدول :۴-۴مقايسه پارامترهای کارايی با Non-FSMPIAو1۴2 ............................ ................................ FSMPIA
جدول :۴-5مقايسه عملکرد SMPIAو Non-SMPIAبر اساس گريدی Max-Min ،و 150 ........... Min-Min
جدول :6-۴مقايسه عملکرد SMPIAبر اساس GAو150 ................................................... ................................ PSO
جدول :7-۴مقايسه عملکرد151 ....................................................... ................................ ................................ FSMPIA
جدول :8-۴مقايسه عملکرد SMPIAو 151 ................................ ................................ ................................ O-SMPIA
فهرست اشکال
1 Starvation
2. Troughput
3. Wating Time
4. Response Time
5. AVM: Alternative Virtual Machine
6. MS: MakeSpan / Completion Time
7. Optimal Mapping
8. VMPIB: Virtual MPI bus
فصل اول
/ 2بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
شايان ذکر است از آنجا که مسئله نگاشت روی منابع (زمانبندی وظايف گردش کار) به عنوان NP-
completeدر محاسبات ابری شناخته میشود ،چندين الگوريتم زمانبندی برای حل آن توسعه داده
شده است [38و29و16و15و1۴و13و .]5هدف اصلی مشکل زمانبندی گردش کار کاهش مجموع
زمان اجرا 1و ايجاد تعادل بین مصرف منابع و کیفیت خدمات است [ 9و .]8اين کتاب رويکرد MPI
هوشمند 2برای بهبود زمان ارتباط ، MPIکمبود منابع کافی ،3کاهش سطح درگیری منابع و مشکل
گرسنگی (زمان انتظار زياد) وظايف را پیشنهاد میکند.
به طور کلی ،مشکالت گرسنگی وظايف بهینهسازی را میتوان به مشکالت گسسته و پیوسته تقسیم
کرد .متغیرهای تصمیمگیری برای يک مسئله ترکیبی دارای مقادير گسسته هستند ،در حالی که
متغیرهای تصمیم برای يک مسئله بهینهسازی پیوسته میتوانند مقاديری را در حوزه مقادير واقعی
به خود اختصاص دهند [63و .]۴9عالوه بر اين ،ايجاد يک برنامه زمانبندی برای بهینهسازی مهمترين
و در عین حال متناقض ترين اهداف زمانبندی (يعنی هزينه اجرا و افزايش زمان اجرا) به يک مشکل
پیچیده تبديل شده است .به عنوان مثال ،بهینهسازی هزينه اجرا ،زمان اتمام اجرا را افزايش میدهد.
اين به دلیل ارتباط متقابل بین اين اهداف است .مشکل زمان اتمام و بهینهسازی هزينه همچنان ادامه
دارد زيرا انتخاب ماشین مجازی که کلید مديريت بهره برداری منابع برای بهبود گذردهی سیستم
است معموالً توسط محققان ناديده گرفته میشود [.]۴0
بر اساس تعداد معیارهای موثر در مشکل بهینهسازی گرسنگی وظیفه ،میتوان آن را به يک معیاری
و چند معیاری تقسیم کرد .بهینهسازی وظیفه تک معیاری يافتن راه حل بهینه تنها با توجه به يک
تابع (معیار) است .وقتی مشکل بهینهسازی گرسنگی شامل بیش از يک تابع (معیار) باشد ،وظیفه،
پیدا کردن يک يا چند راه حل بهینه در مورد هر معیار است .در چنین شرايطی ،يک راه حل مناسب
برای يک معیار میتواند برای معیار ديگری نامناسب باشد و بالعکس [ .]6۴بنابراين ،هدف از
بهینهسازی چند معیاره يافتن مجموعه ای از راه حلها است که با توجه به ساير معیارها مطلوب است.
توجه داشته باشید که اکثر مشکالت دنیای واقعی از نوع چند معیاری هستند .بررسی ادبیات تحقیق
نشان میدهد که برخی از شکافهای تحقیقاتی مانند انتخاب ماشین مجازی و معیارهای نگاشت
وظايف هنوز وجود دارد که نیاز به بررسی بیشتری دارد [ .]۴0نتايج بدست آمده از آزمايش نشان
میدهد که رويکرد O-SMPIAاز نظر مجموع زمان اجرا ،زمان اتمام ،زمان پاسخ ،زمان تأخیر،
بهرهبرداری منابع و گذردهی از [39] SMPIAبهتر است.
يکی از اهدف اين تحقیق حل مشکل گرسنگی وظايف و کمبود منابع کافی با استفاده از O-SMPIA
بود .برای اين منظور ،ما الگوريتمهای Max-Min ،Greedyو [39] Min-Minرا با O-SMPIAترکیب
کرديم .در اين مورد O-SMPIA ،در سطح مراکز داده به دلیل افزايش استفاده از مراکز داده در مکان های
مختلف جغرافیايی و مشخص نبودن تعداد سرورها مورد استفاده قرار گرفت .اين مطالعه تالش میکند
تا برنامههای چندگانه را در يک شبکه وسیع در سطح مراکز داده به منظور بهبود گذردهی ،زمان
تأخیر ،زمان پاسخگويی و زمان اجرا به اجرا درآورد .گردش کار پويا را میتوان برای تغییر ويژگیهای
گردش کار در زمان اجرا بهبود بخشید.
در اين کتاب ،اولین مهلت اولین بار (يا نزديک ترين مهلت زمانی اول يا زودترين ضرب االجل) با
مهلت زمانی مجازی 1برای محدوديتها استفاده شد EDF-VD .با O-SMPIAترکیب شد که منجر به
بهبود عملکرد سیستم شد O-SMPIA .به کوتاه کردن زمان اجرا ،زمان پاسخ دهی و زمان تأخیر کمک
میکند و گذردهی را افزايش میدهد .در ادامه ،سهم و انگیزه اصلی اين کتاب شرح داده شد.
نوآوری
سهم اصلی اين کتاب شامل موارد زير است:
( )1ما يک روش و تکنیک برای برقراری ارتباط کارآمد بین ماشینهای مجازی در منابع ابر مبتنی بر
MPIدر VMPIBارائه میدهیم .ايده اصلی شامل مراحل رتبهبندی منابع ،انتخاب AVMو نگاشت
جريان فعلی بر روی AVMانتخاب شده است .احتمال انتخاب AVMبرای گردش کار با استفاده از
الگوريتم انتخاب چرخ رولت مشخص شد.
( )2ما باعث کاهش زمان مصرف منابع و بهبود زمان بندی وظايف در محاسبات ابری شديم .پارامترهای
بار ،ظرفیت ،میزان بار محاسبه شده ،سرعت اجرا و زمان اجرای هر جريان در ماشین مجازی برای
محاسبه حداقل زمان اتمام استفاده شده است .همچنین ،پارامترهای سرعت پردازش CPUهرجريان
در ماشین مجازی برای محاسبه زمان اجرا و زمان کل اجرا استفاده شده است .اين رويکرد با
رويکردهای قبلی متفاوت است ،زيرا با افزايش زمان اتمام و افزايش تعداد بارهای کاری ابر ،تأثیر
SMPIAآشکارتر شده است.
( )3ما باعث کاهش استفاده از منابع ،کاهش مصرف منابع ،بکارگیری مدل نگاشت وظیفه به منابع
بهینه در محاسبات ابری شديم .پارامترهای ظرفیت حافظه ،ظرفیت حافظه مورد استفاده ،ظرفیت
پردازش کل و ظرفیت پردازش شده در ماشینهای مجازی برای محاسبه میزان استفاده از منابع
استفاده میشوند.
اين روش با رويکردهای مورد بررسی قبلی متفاوت است ،زيرا کاهش سطح استفاده از منابع با الگوريتم
هوشمند اکتشافی و گريدی نشان میدهد که نگاشت جريانها بر روی AVMمناسب به درستی انجام
میشود .هدف از اين تحقیق ،يافتن بهترين الگوی نگاشت منابع به وظايف ،کارکرد هزينه کارآمد،
عملکردهای مختلف و به دست آوردن پاسخهای خوب است .عالوه بر اين ،بهترين ماتريس با مقادير
مناسب مطابق الگوريتمهای بهینه سازی ازدحام ذرات 1و الگوريتم ژنتیک 2يافت شد .جريان به AVM
انتخابی اختصاص داده شد .به منظور دستیابی به عملکرد بهینه ،از ترکیب PSOو GAبا استفاده از
SMPIAاستفاده شد .يک زمانبندی کارآمد با توجه به عملکرد هزينه ارائه شد ،که در آن پارامترهای
بار ،VMحجم بار ،ظرفیت VMو سرعت اجرای آن در نظر گرفته شد SMPIA .در سه مرحله شامل
محاسبه رتبه ، AVMانتخاب AVMو نگاشت جريان فعلی به AVMانتخاب شده با استفاده از ،Greedy
PSO ، Min-Min ،Max-Minو GAانجام شد.
( )۴ما از SMPIAبر روی روشهای PSO ، Min-Min ،Max-Min ، Greedyو GAاستفاده کرديم .با
۴
افزايش بهره برداری منابع 3عملکرد سیستم را بهبود بخشید .همچنین ،ما SMPIAرا بر رویFKM
گسترش يافته بر اساس آنتروپی فازی جديد اعمال کرديم .با رويکرد MPIهوشمند فازی ،5پارامترهای
عملکرد مجموع زمان اجرا ،زمان اتمام و بهره برداری منابع در اين کار بهبود يافته است .
در اين مطالعه بر اساس O-SMPIAبندی وظیفه مبتنی بر اولويت توسعه داده شد،يک الگوريتم زمان ()5
تواند مشکل گرسنگی وظايف و مصرف منابع را به طور روش اولويت بندی توسعه يافته است که می
با در نظر گرفتن زمان اجرای وظايف ،زمان اتمام ،بهره برداری منابع ،زمان O-SMPIAکامل حل کند.
.تاخیر ،زمان پاسخ و گذردهی معیارهای ارزيابی عملکرد و اهداف بهینه سازی را توسعه داده است
( O-SMPIA )6مشکل گرسنگی را با در نظر گرفتن نوع فوريت زمان اجرا حل میکند .وظايف بر اساس
زمان اجرا اولويت بندی میشوند .وظايف با باالترين اولويت زودتر توسط منبع آزاد اجرا میشود.
( )7همچنین O-SMPIAگذردهی را بهبود بخشید ،بنابراين عملکرد سیستم را به میزان قابل توجهی بهبود
بخشید O-SMPIA .کمک میکند تا CPUاز زمان به نحو احسن برای اجرای کلیه وظايف استفاده کند.
( )8ايده توابع محدود به تقاضا بر اساس پارتیشنها و CAPSدر تنظیم SMPIAگسترش يافت .برای
هر کار ،دو تابع محدود به تقاضا ،به ترتیب برای حالتهای کم و زياد بحرانی ساخته میشوند .
( )9در [ ، ]16در مقايسه با روشهای قبلی ،روش ابتکاری میتواند زمان پاسخگويی به وظايف و تخصیص
منابع را تا 50درصد بهبود بخشد .رويکرد اکتشافی پیشنهادی زمانبندی وظايف و تخصیص منابع را به
طور کارآمد و با کاربرد باال انجام داد .به اين ترتیب ،حداکثر بهره برداری منابع با استفاده از منابع
محاسباتی مانند ، CPUحافظه و پهنای باند به دست آمد .سیستمهای موجود مانند [ ]16سه منبع CPU
،حافظه و پهنای باند را در ارزيابی عملکرد آنها در نظر گرفتند.
1
در سیستم پیشنهادی ما ،پارامترهايی مانند ( ،CPUحافظه ،پهنای باند ،ذخیره سازی) ،ظرفیت (حافظه،
2
،(CPUبار (ماشینهای مجازی ،جريان) ،تعداد (ماشینهای مجازی ،جريانها) ،سرعت اجرا ( ،CPUجريان)،
IDمراکز داده ID ،سرورها ،تعداد ،CPUسرعت اجرای ID ،CPUماشین مجازی IDجريان به عنوان
پارامترهای ورودی برای محاسبه ظرفیت ماشین مجازی در نظر گرفته شد .همچنین ،نتايج تجربی نشان
میدهد که SMPIAاز پنج الگوريتم استاندارد ،يعنی الگوريتم PSO ،Max–Min ،Min-Min ،Greedyو GA
بهتر عمل کرده و اين الگوريتمها را از نظر معیارهای مجموع زمان اجر ،زمان اتمام و بهره برداری منابع
بهبود بخشیده است .نتیجه بدست آمده نشان میدهد که مشکل گرسنگی بین وظايف و منابع کمتر شده
است ،میزان درگیری منابع و مصرف منابع در ارتباطات MPIکمتر شده است .عالوه بر اين ،پارامترهای
عملکرد مرتبط در SMPIAبر اساس میانگین مقادير محاسبه شده است که پس از 50بار اجرای برنامه به
دست آمده است .اين تحقیق با نتايج [36و31و30و25و2۴و23و22و16و1۴و10و9و8و ]1در مورد اجتناب
از نقض SLAو افت QoSهمسو است.
در اين تحقیق SMPIA ،میتواند زمان تخصیص منابع و زمان اتمام را به ترتیب تا 55.80و 55.9۴بهبود دهد،
که باعث کاهش مصرف منابع و سطوح مشارکت و درگیری منابع تا 12.28میشود .در اين میان ،پارامتر بهره
برداری منابع میزان مصرف منابع و میزان درگیری منابع سخت افزاری در ابر را به درصد تعیین میکند.
اهمیت و ضرورت
يک پروتکل ارتباطی استاندارد است [ .MPIمحور اصلی ابر است [ 1بندی گردش کار و تخصیص منابعزمان
که به يک استاندارد قانونی برای برقراری ارتباط بین فرايندها تبديل شده و يک برنامه نويسی موازی را با
کنند استفاده می MPIمعموالً از ارتباط HPCهای .برنامه[]2کنداستفاده از مدل انتقال پیام پیاده سازی می
.محققان ،تخصیص منابع مختلف شبکه را در محاسبات ابری مورد بررسی قرار دادند که شامل پیش [[۴
و عملکرد HPCمجازی سازی شبکه در ابر به کاربرد.باشدبندی منابع ،نگاشت منابع میبینی حجم کار ،زمان
دهد که با منابع کافی اختصاص داده شده در زمان درست .نتايج نشان می[زند [7و6آسیب می MPIارتباطات
های .کارايی شبکه ارتباطی يک چالش است و روش[شود [29و5جلوگیری می SLAو نقض QoSاز افت
.تکنولوژی گردش کار در فرايندهای کسب و کار قادر است تا [با تأخیر کم الزم است [30و MPI ۴ارتباطی
1. Capacity
2. ES: Execution Speed
/ 6بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
ها را به طور رضايت بخشی بهبود بخشد .وری آنها را مديريت نموده و میزان بهرهنیازهای جديد شرکت
ها را به استفاده از خدمات مختلف ابر به منظور های کاری به محیط محاسبات ابری سازمانانتقال جريان
های سازی کارآمد گردش کار مختلف ،ماشینسازد .بنابراين بهینهتسهیل اجرای جريان کاری شان قادر می
ها به های مجازی مختلف چالش برانگیز است .در کلیه سازمانمجازی و اجرای گردش کار بر روی ماشین
های مديريتی و هزينه خريد يابد و هزينههای خريد سرور به حداقل کاهش میويژه در مخابرات ايران هزينه
SMPIA ،FSMPIAبندی گردش کار با استفاده از يابد .در اين مطالعه ،يک روش زمانسخت افزار کاهش می
.شوددر ابر ارائه می تخصیص منابع برای O-SMPIAو
1. Optimization
2. Workflow
3. Flow
فصل اول 7 /
رایانش ابری
رايانش ابری مدل رايانشی بر پايه اينترنت است که الگويی تازه برای عرضه ،مصرف و تحويل خدمات
با بکارگیری شبکه ارائه می دهد .رايانش ابری از ترکیب دو کلمه رايانش و ابر تشکیل شده است .ابر
استعاره از شبکه يا شبکه ای از شبکه های وسیع مانند اينترنت است که کاربر از پشت صحنه و آنچه
در پی آن اتفاق می افتد اطالع دقیقی ندارد .سیستم رايانشی ابری مخابرات شامل تعدادی مراکز داد
و سرور و ماشین های مجازی و يک مرکز مدير ابر که شامل مدير ابر و زمانبند مقادير اولیه و مدير
پیشرفت گردش کار است .يک VMPIBنیز دارد که همه ماشینهای مجازی در آن با هم در ارتباط
هستند MPI .يک استاندارد ارسال پیام در شبکههای توزيع شده است.
SMPIA
در اين کتاب يعنی ارتباط يک ماشین مجازی با ساير ماشین ها از طريق يک ارتباط SMPIAدر
سیستم شبکه توزيع شده است.
1
محدود به تقاضا بر اساس پارتیشنها و CAPSبا تنظیم SMPIAگسترش يافت.
جمعبندی
يکی از چالش های اصلی در محاسبات ابری مبتنی بر گردش کار بهبود و بهینهسازی چند هدفه
وظايف گردش کار است.
محوريت اين کتاب بر اساس زمانبندی وظايف گردش کار و تخصیص منابع است.
هدف بهینهسازی زمانبندی وظیفه و تخصیص منابع است .استفاده از FSMPIA ، SMPIAو O-SMPIA
باعث بهبود گردش کار و بهینه سازی متريکهای بهینه سازی و کارايی شده است .يافتههای تحقیق
تجزيه و تحلیل شده و نتايج ارزيابی میشود و پیشنهادهای الزم ارائه میشود.
ساختار کتاب
ساختار مطالب اين کتاب بدين شرح است که :در فصل اول ادبیات و پیشینه تحقیق ارائه شد .بدين
ترتیب که ،مفاهیم اولیه در ارتباط با داده های بزرگ ،تعاريف اولیه ،مدل شبکه و گردش کار ،تشريح
مسئله MPI ،و اهداف آن ،و درخت تصمیم بیان می شود .سپس يک مرور کلی از کارهای انجام شده
در خارج کشور در بخش پیشینه تحقیق ارائه می شود .در نهايت خالصه و جمع بندی ارائه میشود.
در فصل دوم مراحل روش تحقیق با سه روش تشريح می شود .در ادامه فازهای اساسی ،MPIحل
مشکل زمانبندی ،تخصیص منابع ،گرسنگی وظايف و کمبود منابع بیان میشود .بعدش پیاده سازی
و در نهايت خالصه و جمع بندی ارائه میشود .در فصل سوم تجزيه و تحلیل يافتههای تحقیق ،ارزيابی
نتايج بر اساس متريک های کارايی و همچنین روشهای پیشنهادی مقايسه و ارزيابی میشود .و
نتیجهگیری شامل خالصه ،مزايا و معايب روش پیشنهادی و برخی از پیشنهادها برای مطالعه در آينده
و همچنین محدوديتهای تحقیق ارائه میشود.
رایانش ابری
امروزه مفهوم اطالعات در دنیايی به نام عصر اطالعات و جايیکه پیشرفت های تکنولوژيکی بیش از
پیش در حال رخ دادن است اهمیت بیشتری پیدا میکند .جان نايزبیت با بیان اين نکته که "منبع
جديد قدرت ،پول در دست افراد معدود نیست ،بلکه دانش در دست اکثريت است" اين گفته اهمیت
دانش را مطرح میکند [ 68و .]65اطالعات حاصل از پردازش دادهها است .در نتیجه ،پردازش دادهها
معنی دار میشوند تا برای اهداف مختلف مورد استفاده قرار گیرند .عالوه بر آخرين تحوالت در فناوری
اطالعات و ارتباطات ،در دسترس بودن اقتصادی و فراگیر شبکهها و دستگاههای الکترونیکی باعث
شده است که حجم زيادی از دادهها از منابع مختلف و در قالبهای مختلف به دست آيد .حجم
دادههای موجود امروزه با زتابايت 1اندازهگیری میشود .اين مقدار اندازه گیری يک واحد اندازه گیری
برابر با 1تريلیون گیگابايت 2و معادل ظرفیت ذخیره سازی اطالعات تقريباً 250میلیارد DVDاست.
برآورد شده است که 0.5زتابايت داده در سال 2009در شبکههای سراسر جهان موجود است
[ 68و .]66اين حجم از دادهها را میتوان از بیش از 1تريلیون صفحه وب که در حال حاضر در اينترنت
در دسترس هستند ،دريافت کرد .همان طور که در شکل 1-2نشان داده شده است ،طبق ،IDCکل
دادههای ديجیتالی در جهان در سال 2013به ۴.3زتابايت رسیده و تخمین زده میشود که در سال
2025به 175زتابايت افزايش يابد [68و.]67
حجم دادههای ديجیتالی موجود هر روز به طور تصاعدی افزايش میيابد .به اين حجم زيادی از
دادههای ديجیتالی که اخیراً ايجاد شده است داده بزرگ گفته میشود .جريانهای شبکه ،رويدادهای
سیستم و گزارشات اغلب دادههای بزرگ هستند .تجزيه و تحلیل دادههای بزرگ و فناوریهای مرتبط
با نظارت مداوم بر جريان دادهها ،بررسی رويدادها ،تشخیص ناهنجاریها ،تغییرات و مزاحمان در
استفاده از شبکه به بهبود امنیت سايبری و کارايی شبکه کمک میکند.
عالوه بر آخرين تحوالت در فناوری اطالعات و ارتباطات ،در دسترس بودن فراگیر علمی و شبکهها و
دستگاههای الکترونیکی باعث شده است که حجم زيادی از دادهها از منابع مختلف و در قالب های
مختلف به دست آيد .حجم دادههای موجود امروزه با زتابايت اندازهگیری میشود.
رايانش ابری به عنوان مدلی شناخته میشود که هدف آن ارائه منابع و خدمات از طريق شبکه است.
در اين زمینه ،زمانبندی وظايف گردش کار و تخصیص منابع مرکز اصلی رايانش ابری را ارائه میدهد
[MPI .]1يک پروتکل ارتباطی استاندارد است که به استانداردی قانونی برای ارتباط بین فرآيندها
تبديل شده و برنامه نويسی موازی با استفاده از MPIپیاده سازی میشود [ 3و .]2به طور معمول،
برنامههای کاربردی HPCاز ارتباط MPIاستفاده میکنند [18و .]۴
در ادامه اين فصل دو موضوع ( )1ادبیات تحقیق و ( )2پیشینه تحقیق ارائه میشود.
ادبیات تحقیق
دادههای بزرگ
به عنوان يک تعريف کلی ،اصطالح کالن داده به دادههايی اطالق میشود که بسیار بزرگ ،سريع و
پیچیده باشند و با روشهای سنتی پردازش داده پردازش نشوند .داده های بزرگ به دادههايی اطالق
میشود که در شکل 2-2به صورت خالصه بصورت V-5تعريف شده اند ،و دارای پنج ويژگی اساسی
هستند :حجم ،تنوع ،سرعت ،دقیق و واقعی ،و ارزش که با روشهای سنتی قابل پردازش نیستند.
( )1حجم ( :)volumeمقدار دادههای جمع آوری شده را نشان میدهد.
( )2تنوع ( :)Varietyاين به دادههای جمع آوری شده در انواع مختلف از منابع مختلف داده اشاره
میکند.
( )3سرعت ( :)Varietyفرکانس تولید داده ها را تعیین میکند.
فصل اول 11 /
( )۴دقیق و واقعی ( :)Variabilityاين بدان معنی است که دادههای بزرگ چقدر دقیق و واقعی هستند.
های جمع آوری شده دارد.دار و مفید از دادههای معنی) :اشاره به به دست آوردن داده )5(Valueارزش (
در حالی که کالن داده فرصت های مهمی را ارائه میدهد ،مشکالت جديدی را نیز به همراه دارد.
ذخیره سازی داده های بزرگ و عملکرد تجزيه و تحلیل جدی از اين دادهها را نمیتوان با روشهای
سنتی انجام داد .بنابراين ،میتوان روی دادههای بزرگ با فناوری های کالن داده مانند ،Hadoop
Sparkکار کرد و تجزيه و تحلیل دادههای موثر را میتوان انجام داد.
تعاریف و مفاهیم
برای انجام اين کار ،تعاريف و مفاهیم زير را ارائه میدهیم:
مرکز مدیریت ابر
مرکز مديريت ابر شامل مدير ابر (مدير) ،مدير پیشرفت گردش کار و زمانبند اولیه است .اين برنامه زمان
کند .برنامه ريز دهد و سپس مقادير اولیه را تعیین میبندی کارها ،گردش کارها و منابع را انجام می
کند (شکل .)3-2کند و سپس مقادير اولیه را تنظیم میکارها گردش کار و منابع را زمان بندی می
ارائه دهنده ابر
ارائه دهنده ابر از مرکز داده و سرورها تشکیل شده بود که در آنها هر مرکز داده دارای تعدادی سرور
بود که هر کدام چندين ماشین مجازی در VMPIBداشتند (شکل .)3-2
VM های ابر
مجموعهای از ماشین های مجازی ،ابرها را به عنوان منابع دريافت و پردازش میکنند .در اين کار ،هر
ماشین مجازی دارای يک شناسه و ظرفیت است .ما لیستی از ماشینهای مجازی و شناسههای مجازی
داريم .ماشینهای مجازی در يک VMPIBشامل ارتباط دو طرفه با يکديگر و سرور هستند .الزم به
/ 12بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
ذکر است که هر ماشین مجازی میتواند تنها يک نوع جريان را به تعداد زياد پردازش کند .هر مرکز
داده ،سرور و ماشین مجازی دارای يک شناسه در ابر هستند (شکل .)3-2
Job
يک معامله شامل jobهای متعددی میشود .به اين ترتیب ،جريانهای يک VMPIBبرای انجام
تراکنش بايد از تعدادی jobعبور کنند .هر جريان ورودی و خروجی به صورت يک پیکان نمايش داده
شد ،در حالی که هر jobبه صورت يک دايره قرمز ،زرد و آبی در شکل های ۴-2و 5-2نشان داده
شده است .مشابه سلولهای آرايه ،تعدادی از jobيک taskايجاد میکنند.
مهاجرت Job
انتقال jobبرای اجرا از يک AVMبه AVMديگر.
وظیفه
در اين کتاب دايرههای آبی يک وظیفه را در شکلهای ۴-2و 5-2تشکیل میدهند .به عنوان مثال،
در شکل ،5-2جريان شماره 8برای وظیفه ای به نام مناقصه است که به معامله عمومی (يعنی جريان
)11و معامله محدود (يعنی جريان )12تقسیم میشود.
معامالت
شوند .يک معامله شامل بندی میمعامالت (معامالت و مناقصات) به دو دسته کوچک و بزرگ طبقه
را طی jobبايد تعدادی از VMPIBهای يک شود .برای انجام يک تراکنش ،جريانهای متعددی میjob
به صورت jobکنند .هر جريان ورودی و خروجی به صورت يک پیکان نشان داده شد ،که در آن هر
يک دايره نشان داده شده است .عالوه بر اين ،معامالت کوچک و بزرگ (يعنی معامالت و مناقصات
کوچک و بزرگ) به عنوان گردش کار کوچک و بزرگ نشان داده شد .جزئیات مربوطه در شکل ۴-2و
.تشکیل شده است 2-5jobنشان داده شده است .معامالت کوچک و بزرگ به ترتیب از 28و 1۴عدد
جدول MPI
جدول MPIهمان جدول صفحه مجازی MPIاست .اگر اين صفحات در حافظه فیزيکی قرار داده شوند
توسط جدول صفحه تعیین میشود .آدرسی که با عملگر & در زبان برنامه به دست میآيد يک آدرس
فیزيکی نیست ،بلکه يک آدرس مجازی است .مقادير اولیه آن با استفاده از الگوريتمهای زمانبندی
در ابتدای الگوريتم از طريق جداول داده مشخص شده ،تنظیم میشود .در حین اجرای برنامه به روز
شده و مقادير آن تغییر میکند.
جدول MPIتوزیع شده
نوع شبکه MPIاست .سرورها به طور موازی در شبکه MPIپردازش میشوند که در شبکه توزيع شده
اند .حافظه اختصاص داده شده به جداول MPIبه گونه ای توزيع میشود که صفحات در بافر حافظه
فیزيکی ذخیره شوند.
فصل اول 13 /
جریان MPI
هر معامله (معامله و مناقصه) که وارد سیستم ابری میشود شامل تعدادی جريان است .جريان معامالت
(معامالت و مناقصه) که بین ماشین های مجازی برای پردازش (ارسال يا دريافت) مبادله میشوند،
جريان MPIنامیده میشوند .جريانهای MPIدر VMPIBجريان دارد .در اين راستا ،برخی از توسعه
دهندگان برنامهها با آن مواجه میشوند .مشکل انتقال در شبکههای ارتباطی ،منجر به تعريف
استانداردی برای پیام رسانی شده که به اصطالح MPIنامیده شد MPI .يک رابط استاندارد است.
مستقل از سخت افزار ،پلت فرم و پیام برای برنامههای موازی است .اگرچه زير اليه MPIمیتواند يک
پروتکل اختصاصی باشد ،اما به جز ،MPIپروتکلها برخی از برنامهها را نمیبیند.
بنابراين MPI ،يک واسط میانی و يک رابط کاربری ساده است .در ،MPIفرض بر اين است که ارتباط
بین گروه خاصی از فرايندها صورت میگیرد ،که در آن هر گروه دارای يک شناسه است .از طرف
ديگر ،هر فرآيند شامل يک شناسه محلی در هر گروه است ID .گروه و شناسه فرآيند منبع يا مقصد
پیامی را به طور منحصر به فرد شناسايی میکند که به جای آدرس اليه انتقال استفاده میشود .در
اين کتاب ،ما لیستی از جريانهای MPIو شناسههای آنها را داريم .هر جريان شامل مقدار بار،
سرعت اجرا و زمان اجرا بر روی ماشین مجازی است .همان طور که در شکل 2-۴نشان داده شده
است ،جريان MPIاز ارجاع به مجموعه دادههای تامین کننده (برای ارائه تامین کننده واجد شرايط)
و بررسی عدم تأيید فنی (برای دريافت درخواستهای جديد) به صورت دايره ای طراحی شده است
در حالی که ساير جريانها به صورت خطی تعريف شدهاند.
پارامترهای ورودی
شامل جريان ( ،IDبار ،سرعت ،تعداد) ،ID( CPU ،تعداد ،سرعت ) ، (ID) DC ،)Freq (HZسرور (، ID
پهنای باند ) ،(Mb/sماشین مجازی ) ،IDبار ،اندازه ،تعداد).
پارامترهای خروجی
اين شامل معیارهای ظرفیت (بیت/بايت) ماشینهای مجازی ،جريان جاری و ماشین مجازی با حداقل
هزينه محاسباتی ( ،)CCجريان بعدی و ماشین مجازی با واريانس بار کم است.
زمان اجرا
زمان اجرا را میتوان به صورت زير مدل کرد:
( )1مقدار بار محاسباتی جريان جاری ) (LCF؛
( )2سرعت اجرای CPUيا سرعت اجرا؛
اين همان پارامتر مجموع زمان اجرا و عملکرد است.
/ 14بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
زمان اتمام
زمان اتمام را میتوان به صورت زير مدل کرد:
( )1زمان صرف شده توسط جريان kاز تراکنش jروی ماشین جازی ، iيعنی Tijk
( )2پارامتر تعیین CCجريان kاز ماشین مجازی ،iيعنی CCi
( )3پارامتر ESiتعیین میکند سرعت اجرای CPUدر ماشین مجازی i
کارایی
کارآيی را میتوان به عنوان معیار بهره برداری منابع و معیار عملکرد مدل کرد.
زمانبندی وظایف
تخصیص جريان به ماشین مجازی انتخاب شده در کوتاه ترين زمان .هر وظیفه يک معامله است که
بندی وظايف برای مناقصه در شکل 3به معنای دو مناقصه است .به عنوان مثال ،زمانjobشامل تعدادی
شوند ،که در آن هر ترين زمان اجرا میعمومی و محدود است که هريک با ماشین مجازی در کوتاه
.شامل تعدادی وظیفه و جريان استjobگردش کار شامل تعدادی وظیفه است در حالی که هر
تخصیص منابع
بهترين AVMبه جريان جاری اختصاص داده میشود.
گردش کار
به عنوان مثال ،وظیفه "مناقصه" از سه jobو دو جريان در شکل 5-2نشان داده شده است .هر
گردش کار يک تراکنش است .ورودی ابر شامل دو گردش کار ،معامالت بزرگ و کوچک است .در
اينجا ،به منظور استفاده از هر گردش کار به عنوان يک سرويس در فرآيند خريد معامالت و مناقصات،
يک سیستم زنجیره تأمین مخابراتی جامع و متمرکز معرفی میشود.
اهداف طراحی اين برنامه کاربردی به شرح زير است :کاهش هزينه ،کاهش بوروکراسی اداری ،بهرهوری
زمان ،دقت در انجام کارها ،ادغام و تمرکز بر حوزه تأمین ،سیستم گزارشدهی و تهیه داشبورد
مديريت ،مديريت مکانیزه ذينفعان و تأمین کنندگان ،و بهبود فرايند ارتباط و هماهنگی اين برنامه
کاربردی شامل کلیه الزامات زنجیره تأمین مانند فرايند سفارش و خريد درخواستها و مناقصهها،
قراردادهای خدمات و ارتباط با سیستم پرسنل و غیره است .برای طراحی اين برنامه کاربردی ،از
شاخصهای کلیدی عملکرد 1برای کاهش میزان اقالم راکد در انبارها ،کاهش زمان چرخه فرآيندهای
کاری ،درصد خريدهای متمرکز و شناسايی محصوالت مورد نیاز مناطق برای صرفهجويی در خريدها.
بسیاری از سیستمهای توزيع و برنامههای کاربردی بر اساس مدل پیام ساده ارائه شده توسط اليه
انتقال توسعه میيابد .در اين شبیهسازی 31 ،منطقه مخابراتی توزيع شده در 31استان انتخاب شد
میدهد ،به عنوان کل معامالت تعريف شده است F .به معنای کل جريانات وابسته به يکديگر استθ .
يک تابع برای تعیین اين است که کدام جريان را میتوان توسط VMدر VMPIBاجرا کرد .عالوه بر اين،
φتابع است ،که در آن ماشین مجازی به هر مرکز داده در VMPIBاختصاص داده شده است.
در اين کتاب مدل WaaSبه عنوان يک بستر مجازی در محیط ابر طراحی شده است .در اين پلتفرم،
مدل گردش کار ،وظیفه ،معامالت ،معماری مدل مجازی ،زمانبندی ،فضاسازی MPIواقعی،
الگوريتمهای پیش بینی در نظر گرفته شده است .همان طور که در شکل 3-2نشان داده شده است،
جريانهای ارجاع به پايگاه داده تأمین کننده (برای تهیه کننده مجوز واجد شرايط) و بررسی عدم
تأيید فنی (برای دريافت درخواست های جديد) به صورت دايره ای و ساير جريانها بصورت خطی در
نظر گرفته شدند .معامالت کوچک و بزرگ به ترتیب 28و job 1۴تشکیل شده بود که در شکل های
2-۴و 5-2نشان داده شد.
مرکز مديريت ابر شامل مدير ابر ،1مدير پیشرفت گردش کار و برنامه زمانبندی است .مدير ابر ،که در
آن همه درخواستها ارسال شده است .ارائه دهنده ابر از مراکز داده و سرورها تشکیل شده است .در
هر مراکز داده تعدادی سرور وجود داشت که هرکدام چندين ماشین مجازی را در خود داشتند VMPIB
قادر به برقراری ارتباط دو طرفه بین ماشینها بودند.
پس از انتخاب گردشهای کاری کوچک و بزرگ از صف انتظار ،تمام جريان های کاری انتخاب شده
به سیستم مورد نظر وارد شدند WaaS .معامالت و مناقصات وزارت ارتباطات و فناوری اطالعات
ايران به عنوان معامالت کوچک شکل ۴-2و معامالت بزرگ شکل 5-2تعريف شده بود .پس از
انتخاب WaaSکوچک يا بزرگ از صف انتظار ،تمام جريانهای WaaSانتخاب شده به سیستم وارد
میشوند .در هر مرکز داده تعدادی سرور وجود داشت که هرکدام دارای چندين ماشین مجازی
در VMPIBبودند .ماشین های مجازی قادر به برقراری ارتباط دو طرفه هستند .همان طور که در شکل
2-1نشان داده شده است ،تمام ماشینهای مجازی به VMPIBمتصل شدند .در معامالت و مناقصههای
گردش کار هر يک از فلشها به عنوان يک جريان در نظر گرفته شد .جريانهای گردش کار توسط
ماشین مجازی اجرا شد .به تعداد درخواستهايی که به سیستم وارد شدند ،حتی درخواستهايی که
پاسخی دريافت نکردند ،به عنوان يک وظیفه در نظر گرفته شدند.
MPI
MPIمجموعهای از سرويس های انتقال پیام است که واسطی بین کاربردهای موازی و محیط عامل
موازی (سخت افزار و سیستم عامل) میباشد .پس واسط انتقال پیام به تنهايی بوجود آورنده محیطی
برای برنامه سازی و پردازش موازی نیست ،بلکه اليه زيرين چنین محیطهايی است .در ابتدا و در بهار
1. Administrator
/ 20بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
سال 199۴اولین ورژن MPI-1به بازار عرضه شد که اين ورژن دارای استانداردهای مشخص نامگذاری،
فراخوانی و غیره بر اساس دوزبان Cو Fortranبود .تمام پیادهسازیهای MPIمیبايست از اين قانون
قابلیت حمل پشتیبانی نمايند .برنامههای MPIمیبايست بر روی هر پلتفرمی که از استاندارد MPI
پشتیبانی میکند؛ کامپايل و اجرا شود .پس از آن نیز ورژن ديگری از MPI-2با قابلیت های بیشتری
وارد بازار شد .مدل مفهومی MPIدر شکل 6-2نشان داده شد.
همگام با ظهور مولتی کامپیوترهای پربازده ،سازندگان در پی ارائه عملیات اولیه پیام گرايی هستند
که بتوانند به کمک آنها برنامههای کاربردی بسیار بهره ور را به راحتی بنويسند .به اين معنا که
عملیات اولیه بايد (جهت تسهیل ايجاد برنامه کاربردی) در سطح انتزاع قابل قبولی بوده و پیاده سازی
آنها سربار حداقلی ايجاد کند .سوکتها به دو دلیل فاقد کارايی تصور میشدند .اوالً ،به دلیل پشتیبانی
از عملیات اولیه ساده sendو ، receiveاز نظر انتزاع در حد نادرستی قرار داشتند .ثانیا ،هدف از
طراحی سوکتها ايجاد ارتباط در سرتاسر شبکهها با استفاده از مجموعههای پروتکلی عام منظوره ای
از قبیل TCP/IPبود .به همین دلیل برای پروتکل های اختصاصی طرح ريزی شده برای شبکههای
میان ارتباطی پر سرعت ،از قبیل آنهايی که در خوشههای سرور با کارايی باال مورد استفاده قرار
میگیرند ،مناسب نمی باشند .در نتیجه ،اين نوع پروتکل ها نیازمند وجود رابطی هستند که بتواند با
ويژگیهای پیشرفتهتری از قبیل اشکال مختلف بافر و همگام سازی عمل کند .نتیجه اين شد که اغلب
فصل اول 21 /
شبکه های میان ارتباطی و مولتی کامپیوترهای پربازده همراه با کتابخانههای ارتباط اختصاصی عرضه
میشدند .اين کتابخانهها گنجینه عظیمی از عمل های اولیه ارتباطی سطح باال و غالباً مؤثر ارائه
میکردند .البته تمامی کتابخانه ها به صورت دوجانبه ناسازگار بوده و از اين رو سازندگان برنامههای
کاربردی با مشکل قابلیت انتقال مواجه شدند .لزوم عدم وابستگی به سخت افزار و سکوی خاص منجر
به تعريف استانداری برای انتقال پیام شد که به نام واسط انتقال پیام يا MPIنام گرفت ، MPI .برای
برنامه های کاربردی موازی طراحی شده و به همین دلیل جهت ارتباطات ناپايدار سفارشی شده است.
همچنین ،فرض شده که خرابیهای جدی از قبیل شکست فرآيند يا بخشهای شبکه حیاتی بوده و
به همین دلیل نیازمند احیای اتوماتیک نیستند .در MPIفرض بر اين است که ارتباطات در داخل
گروه شناخته شده ای از فرايندها رخ می دهد .به هر گروه يک شناسه نسبت داده میشود .همچنین
به هريک از فرآيندهای داخل گروه يک شناسه (محلی) تعلق میگیرد .بنابراين جفت ( IDگروهID ،
فرآيند) منحصرا يک منبع يا مقصد پیام را شناسايی نموده و به جای آدرس اليه انتقال مورد استفاده
قرار می گیرد .ممکن است در محاسبه ای ،گروه های فرآيند متعدد و احتماال متداخلی موجود باشد
که همگی به صورت همزمان در حال اجرا باشند .در هسته ، MPIعملیات اولیه پیام رسانی جهت
پشتیبانی از ارتباطات ناپايدار قرار دارند که مشهورترين آنها در جدول 1-2بیان شده است .ارتباطات
ناپايدار همزمان بوسیله عملهای اولیه MPI-bsendپشتیانی می شود .معموال هنگامی که فرستنده
پیامی را برای تبادل تسلیم می کند ،اين پیام ابتدا به يک بافر در سیستم زمان اجرای MPIکپی
می شود .پس از آنکه پیام کپی شد ،فرستنده به کار خود ادامه می دهد .سیستم زمان اجرای محلی
MPIپیام را از بافر محلی خود جدا کرده و به محض اينکه گیرنده عمل اولیه receiveرا فراخوانی
نمود ،اقدام به تبادل میکند.
جدول : 1-2تعدادی از مشهورترین عملیات اولیه انتقال پیام در MPI
معنی عملیات اولیه
پیام خروجی را به يک بافر ارسال محلی ضمیمه کن. MPI-bsend
پیام را ارسال و تا زمان کپی شدن به يک بافر يا محلی صبر کن. MPI-send
منبع را به پیام خروجی انتقال و تاز مان آغاز دريافت منتظر بمان. MPI-issend
پیام را دريافت کن؛ و در صورت عدم وجود پیام ان را بلوکه کن. MPI-recv
بررسی کن آيا پیام جديدی وجود دارد يا نه؛ اما آنرا بلوکه نکن. MPI-irecv
/ 22بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
اهداف MPI
در اين بخش به اهداف اصلی MPIاشاره شده است:
( )1ايجاد کدی با قابلیت حمل بطوريکه استاندارد MPIبر روی هر پلتفرمی قابل اجرا باشد.
( )2اجازه پیاده سازی کارآ مد در محدوده ای از معماریها.
( )3پشتیبانی از معماریهای موازی نامتجانس.
( )۴مديريت پويای پردازشگرها.
مجازی که ارتباط بیشتری با آن داشته و جريانهای کاری بیشتری به آنها محول کرده و می توانند
در آينده به اجرای جريان های کاری کمک کنند؛ در لیست خود قرار می دهد .ماشین مجازی که
جريان کاری را تحويل گرفته به هر دلیلی نتواند اجرای جريان کاری را انجام دهد؛ با چک کردن
لیست همکاران خود ،يک ماشین مجازی را انتخاب و جريان را به ماشین مجازی که انتخاب کرده
تحويل میدهد.
بحثی که در روش پیشنهادی مطرح است هوشمندسازی ارتباطات MPIاست .برای تشريح MPI
هوشمند در روش پیشنهادی ابتدا تعدادی ماشین مجازی برای اجرای جريانهای کاری معامالت و
مناقصات انتخاب می شوند .هر ماشین مجازی بخواهد جريانی را جهت اجرا بپذيرد و برای اجرا نیاز به
همکاری ماشین مجازی ديگری باشد ،با استفاده از MPIبا ساير ماشین های مجازی ارتباط برقرار کرده
و اجرای جريان را به يکی از ماشینهای مجازی محول میکند .بنابراين ارتباط با ساير ماشین های
مجازی از طريق MPIصورت میگیرد .با توجه به توضیحات فوق و با گذشت زمان هر ماشین مجازی
لیستی از همسايگان خود براساس تعداد ارتباط هايی که با ماشینهای مجازی ديگر برقرار کرده تهیه
میکند .به عبارتی ديگر ماشین های مجازی که ارتباط بیش تری با آن داشته و جريانهای کاری
بیشتری به آنها محول کرده و میتوانند در آينده به اجرای جريانهای کاری کمک کنند ،در لیست
خود قرار می دهد .ماشین مجازی که جريان کاری را تحويل گرفته به هر دلیلی نتواند اجرای جريان
کاری را انجام دهد ،با چک کردن لیست همکاران خو د ،يک ماشین مجازی را انتخاب و جريان را به
ماشین مجازی که انتخاب کرده تحويل میدهد.
1
الگوریتمهای یادگیری و یادگیری عمیق ماشین
روشهای يادگیری ماشین و يادگیری عمیق شامل دو مرحله به عنوان مراحل يادگیری و پیشبینی
است که در شکل 7-2نشان داده شده است .در مرحله آموزش طبقهبندی ،ويژگیهای اشیاء در هر
کالس استخراج میشود ،بنابراين بر اساس اين طبقهبندی يک مدل بر اساس اين روابط ايجاد میشود.
سپس از اين مدلها برای پیشبینی کالسهای شیء داده جديد استفاده میشود.
1
درخت تصمیم
الگوريتم درخت تصمیم متعلق به خانواده الگوريتمهای يادگیری تحت نظارت است .درخت تصمیم
يک مدل ساختاری شبیه درخت است که ترکیبی از ويژگیهای منتهی به اين طبقهبندیها را نشان
میدهد و برگها و شاخهها نشان دهنده طبقهبندیها يا تصمیمات هستند ،همان طورکه در شکل
2-13نشان داده شده است .گره باالی درخت تصمیمگیری به عنوان گره ريشه شناخته میشود .آن
ياد میگیرد که بر اساس ارزش ويژگی تقسیم شود .طبقهبندی درخت يک مقدار ورودی با عبور آن
از روی درخت شروع میشود که از گره ريشه شروع میشود و به برگ ختم میشود .پرکاربردترين
مدلهای درخت تصمیم در ادبیات به عنوان مدلهای CHAID ، CART ،C4.5 ،ID3و MARSمشخص
شده است.
پیشینه تحقیق
در اين بخش ،برخی از مطالعات انجام شده در مورد زمانبندی ،روش تخصیص منابع و گرسنگی
وظايف و کمبود منابع در ابر برای استفاده بهینه از منابع ارائه شده است:
مقاالت [ 19و 12و 11و 10و7و6و ۴و ]2تأيید کردند که اجرای برنامههای MPIدر ابر مناسب است .در
[ ، ]17رتبهبندی هر کار در الگوريتم افزايش زود هنگام ناهمگن اولیه 1بر اساس میانگین اتصاالت کار
و هزينه محاسبه بین کار فعلی و جايگزينی آن انجام شد .در [ ،]20الگوريتم نگاشت مناسب برای حل
مسائل نگاشت در گرهها و هستههای خوشه ای ارائه شد که بر اساس يک روش ابتکاری گريدی به
منظور تطبیق الگوهای ارتباطی برنامه با سلسله مراتب سخت افزاری بود.
يک الگوريتم زمانبندی وظیفه ای جديد در [ ]26بر اساس بهبود ژنتیکی توسعه داده شد .برخی از
نتايج تجربی نشان میدهد که الگوريتم پیشنهادی میتواند به طور موثر عملکرد سیستمهای محاسبات
ابری را بهبود بخشد تا بتواند زمان اجرای زمانبندی وظايف را به میزان قابل توجهی کاهش دهد .در
[ ، ]27يک الگوريتم زمانبندی وظیفه جديد با عنوان تخصیص منابع و آگاهی از منابع مبتنی بر GA
و زمانبندی وظیفه 2برای محیط ناهمگن چند ابر به منظور مقابله با شکاف بین نیازهای متغیر مشتری
و زيرساخت های موجود برای خدمات پس از آن ارائه شد ،که نتايج شبیه سازی با الگوريتم زمانبندی
موجود مقايسه شد.
هدف ،نگاشت منابع و وظايف چند ابر به منظور دستیابی به حداقل زمان اتمام و حداکثر رضايت
مشتری بود .در [ ، ]28مشکل تخصیص منابع مرکز داده برای مشتريان شرکت ابری که به خدمات
مورد نیاز در صورت تقاضا نیاز دارند ،در نظر گرفته شده است .برای وضعیت ترافیک باالتر ،روش
ابتکاری بسیار مناسب تر بود ،که مورد تجزيه و تحلیل قرار گرفت و سپس نتايج برای حداکثر 3200
سرور ارائه شد .روش اکتشافی پیشنهادی برای حل مشکالت در مقیاس بزرگ سريع بود که حل
مشکل برنامه نويسی خطی 1مشکل بود .آنها يک مدل MILPجديد و همچنین يک روش اکتشافی
متناوب ايجاد کردند که در هر مرحله مرور در اين چارچوب حل شد.
به عبارت ديگر ،گزينههای فرکانس بیشتر برای سرور به معنای کاهش بیشتر در مصرف انرژی است.
بر اساس يافتههای [ ، ]28چندين دستورالعمل آينده برای رسیدگی وجود دارد ،که در صورت کمبود
منابع کافی برای بررسی کامل يک درخواست ،امکان انجام جزئی درخواست را نمیدهد .عالوه بر اين،
آنها قصد داشتند ارزيابی عملکرد در بارها را بر اساس فاصله جغرافیايی به مرکز داده اضافه کنند.
عالوه بر اين ،آنها شبکههای مجازی مختلف ،2زمانبندی کردند تا سیاستهای مختلف تخصیص را
بررسی کنند و عملکرد خدمات برای گروههای مختلف مشتری شبکههای مجازی قابل مقايسه باشد.
در [ ،]32الگوريتم مبانی يادگیری ماشین 3با الگوريتم Sufferage and ،Max-Min ،Min-Min
۴ MMS Enhancement HEFTمقايسه شده است .در [ ، ]33نتايج شبیه سازی نشان میدهد که
الگوريتم با تعداد زياد وظايف و ماشینها بهترين است .در [ ، ]3۴نتايج بدست آمده نشان داد که
الگوريتم بهبود يافته زمانبندی حداکثر زمان 5در مقايسه با سه الگوريتم مانند Min-Min ،Max-Min
و ،6 RRکمترين زمان تکمیل را در بین همه ماشینهای مجازی دارد .در [ ، ]35رويکرد ارائه شده به
نام قرار دادن فرآيند بهینه 7بهترين طرح قرارگیری را در مقايسه با تمام ارتباطات جمعی در همه
اندازه پیامها پیدا کرد.
از مکانیسم تقسیم وظايف برای تقسیم منظوره 8 در [ ، ]۴0استراتژی بهینه سازی گردش کار چند
کارهای بزرگ به کارهای فرعی برای کاهش طول زمانبندی آنها استفاده میکند .نتايج شبیهسازی
نشان داد که MOWOSهزينه اجرا و زمان اتمام بهتری دارد و همچنین از منابع بهتری نسبت به
الگوريتمهای [۴9] HSLJFو [50] SECUREاستفاده کرده است.
در [ ، ]۴1ترکیبی از کوتاهترين کارها 9و RRيکی از هیبريدهای بسیار کاربردی و قدرتمند برای حل
گرسنگی است که در آن از عملکرد SJFدر کاهش گردش و از RRدر کاهش انتظار کار استفاده
خواهیم برد .زمان .اما ارزش کوانتومی وظیفه همیشه مانع داشتن هیبريد بهینه بود.
در [ ، ]۴2برای حل گرسنگی ،الگوريتم ترکیبی کوتاهترين و طوالنی ترين زمانبندی ارائه شد.
قابلیتهای هر ماشین مجازی و طول کار برای اختصاص وظايف به راحتترين ماشینهای مجازی در
نظر گرفته شد .بنابراين ،الگوريتم آنها با در نظر گرفتن نیازهای ارائه دهنده و کاربر بر مشکل گرسنگی
غلبه کرد .نتايج تجربی ثابت کرد که الگوريتم 1HSLJFپیشنهادی از نظر به حداقل رساندن میانگین
زمان اتمام ،زمان پاسخگويی و زمان اجرای واقعی وظايف ،از الگوريتمهای موجود بهتر عمل میکند،
در حالی که بهرهبرداری منابع و توان را به حداکثر میرساند.
در [ EDF-VD ، ]۴3به طور مستقل روی هر زير مجموعه يا پارتیشن اعمال شد .تقسیم پردازنده به
دو قسمت تقريباً هیچ افت عملکردی در مقايسه با ( EDF-VDبا پردازنده اختصاصی) ندارد .استفاده از
CAPSکوچکتر يک پارتیشن منجر به عملکرد پايینتر از نظر مجموعهای از وظايف زمانبندی شده
شد .اگر يکی از وظايف HIبه حالت HIتغییر کند ،فقط آن وظايف LOدر يک پارتیشن يا زير مجموعه
يکسان حذف میشوند ،در حالی که وظايف LOدر پارتیشنهای ديگر به کار خود ادامه میدهند.
مزيت اصلی نسبت به روش جداگانه اين است که هیچ دوره گرسنگی وجود ندارد ،يعنی فاصله زمانی
بین دو اجرا /تکرار که در آن هیچ خدماتی به وظايف درون سرور ارائه نمیشود .برعکس ،وظايف در
يک پارتیشن تا زمانی اجرا میشوند که از استفاده اختصاص داده شده خود استفاده نکرده باشند،
يعنی تا زمانی که کمتر از حد استفاده خود باشند.
در [ ، ]۴۴الگوريتم زمان بندی فرآيند مبتنی بر اولويت 2ارائه شد ،که با صف مبتنی بر بلوک در CC
توسعه داده شد .الگوريتم پیشنهادی اولويت بااليی به فرآيندهای پشتیبانی شده از زمان انجام و سپس
زمان انفجار میدهد .بنابراين ،میتواند مشکل گرسنگی را حل کند .الگوريتم زمان بندی مبتنی بر
اولويت بر تعديل مشکل گرسنگی متمرکز بود .برای الگوريتم پیشگیرانه ،گرسنگی به صورت خطی
افزايش میيابد ،در حالی که برای الگوريتم زمانبندی مبتنی بر اولويت ،میزان افزايش بسیار کند
است.
در صورت بهبود الگوريتم ژنتیک از منابع به خوبی استفاده میشود ،اما در مورد الگوريتم ژنتیک
استاندارد از برخی منابع به طور مؤثر استفاده نمیشود ،شکاف زيادی در درصد استفاده از منابع وجود
دارد [ .]۴5الگوريتم پیشنهادی فاخته 3در مقايسه با الگوريتمهايی مانند Min -Min ،ACO ،PBACO
و FCFSبه حداقل میزان نقض مهلت میرسد [ PSO .]۴6استاندارد به راحتی در راه حلهای بهینه
محلی گیر افتاده است ،که منجر به بهبود همگرايی زودرس میشود [ .]۴7مقايسه الگوريتم بهبود
بلکه، بهبود يافته نه تنها سريعتر همگرا شدPSO نشان داد کهPSO در متقاطع و جهش) باPSO) يافته
با توجه به ماهیت پويای ابر و کمبود.]۴8[ در مقیاس بزرگتر سريعتر از دو الگوريتم ديگر اجرا شد
پیشنهادات و راه حلهايی برای بهبود دقت و کارايی روشهای پیش بینی،روشهای ارائه شده
روشهای جديد بايد بتوانند همه ابعاد برنامه را برای ايجاد مدل يادگیری.]8[ پیشنهاد شده است
، همچنین. مدل يادگیری کارآمد میتواند دقت پیش بینی را افزايش دهد.مناسب در نظر بگیرند
هدف.]9[ روشهای جديدی برای توسعه مدلهای پیش بینی به روش ترکیبی پیشنهاد شده است
بهبود مشکل گرسنگی برای وظايف گردش کار و کمبود منابع کافی در سطح ماشین مجازیSMPIA
به ويژه، اين الگوريتمها. حل شدMin-Min وMax-Min ،Greedy اين مشکل با الگوريتمهای.بود
و الگوريتم زمانبندیAVM مشکالت ذکر شده در باال را بر اساس زمان اجرای، Min-Min وMax-Min
جزئیات2-2 جدول. مجموع زمان اجرا و زمان اتمام نیز در اولويت قرار گرفتند.اولويت حل میکند
. الگوريتمها و روشهای بهینهسازی را نشان میدهد، را با معیارهاSMPIA پارامترهای عملکرد مقايسه
الگوریتمها و روشهای بهینهسازی، با معیارهاSMPIA مقایسه پارامترهای کارایی:2-2 جدول
Problem Technique Platform Technology Ref Metrics Improvement
Performance PingPong TCP CPU, RAM, VM MPI [2] Latency 30%
PingPong
Performance CPU, RAM, VM MPI [2] Latency 36%
Open-MX
Performance Alltoall CPU, RAM, VM MPI [2] Latency 35%
Performance Alltoallv CPU, RAM, VM MPI [2] Latency 35%
Elapse
Performance HEAT CPU, RAM, VM MPI [2] 30%
time
Performance HEAT CPU, RAM, VM MPI [2] Latency 30%
Performance Allgather CPU, RAM, VM MPI [2] Latency 33%
Performance Allgatherv CPU, RAM, VM MPI [2] Latency 31%
Performance Reduce CPU, RAM, VM MPI [2] Latency 35%
Reduce-
Performance CPU, RAM, VM MPI [2] Latency 32%
Scatter
Performance Exchange CPU, RAM, VM MPI [2] Latency 45%
Performance Sendrecv CPU, RAM, VM MPI [2] Latency 35%
LAMPICS,
Performance CPU, RAM, VM MPI [3] Latency 26.5%
MPAR
Performance MCM CPU MPI [4] ET 30%
MCM_ CG
Performance CPU MPI [4] ET 16.2%
Class B
MCM_ CG
Performance CPU MPI [4] ET 12.7%
Class C
CPU, RAM,
Performance NPA Simulations [6] ET 28.3%
Bandwidth
CPU, RAM, MPICH2 on
Performance NPA [6] ET 25.4%
Bandwidth AEC2
CPU, RAM, Perform
Performance N-body Bandwidth MPI [6] 41.6%
ance
Networ
k
CPU, RAM,
Performance CMPI MPI [6] commu 33.2%
Bandwidth
nication
time
MCM, NAS- OpenMPI,
Performance CPU, RAM, VM [9] Latency 29.26%
CG CLASS B MPI
Performance NPB CPU, RAM, VM MPI [12] ET 20%
CPU, RAM, Cloud
Task scheduling and Heuristic, Respons
Bandwidth, computing, [16] 50%
resource allocation BATS+BAR e time
VM Simulation
Cloud
Task mapping and
load balancing LB* VM computing, [17] MS 15%
simulation
Performance of task 10.3%
OpenMPI,
mapping and load Eager Map CPU, RAM ET
MPI [20]
balancing HPC
Cloud
Performance, Load
Min-Max CPU computing, [30] TET 9%
balancing
simulation
Cloud
Performance, Load
Min-Max CPU computing, [30] TET 7%
balancing
simulation
Cloud
Performance, load
Min-Max CPU computing, [30] ART 9%
balancing
simulation
Cloud
Performance, Task Tasks/Virtual
PA-LBIMM computing, [31] ACT 20%
scheduling resources
simulation
Cloud
Performance, Task Tasks/Virtual
PA-LBIMM computing, [31] MS 13.2%
scheduling resources
simulation
Cloud
Performance, Task Tasks/Virtual
PA-LBIMM computing, [31] ARU 1.16%
scheduling resources
simulation
Load balancing, Cloud
FOML CPU, RAM, VM [32] ACT 16%
Energy consumption computing
Segmented Computing
Performance,
Min-Min VM system, MS 6.8%
Scheduling [33]
(SMM) simulation
Cloud
Load balancing LBIMM CPU, RAM, VM computing, [34] MS 12.5%
simulation
Cloud
Load balancing Min-Min CPU, RAM, VM computing, [34] MS 19.625%
simulation
Performance OPP_cyclic CPU, RAM MPI [35] ET 53.6%
Performance OPP_block CPU, RAM MPI [35] ET 20.4%
Workflow scheduling Grid
Average
and resource OWM CPU, VM environmen [36, 26%
MS
allocation ts 37]
فصل دوم :روش تحقیق
/ 32بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
مقدمه
زمان بندی گردش کار ،پردازش مناسب کارهای منابع است ،بطوريکه کارها بتوانند طبق معیار مورد
نظر تکمیل گردند .زمانبندی جريانهای کاری با حجم زياد داده در محیط ابری چندگانه جز مسائل
NP-Hardمیباشد .در الگوريتمهای موجود زمانبندی ،به موضوع وابستگیدادهای در جريان های کاری
و اهمیت آن در بهینهسازی معیارهای زمانبندی از جمله زمان اجرا و هزينه توجهی نشده است.
اهداف زمانبندی جريان کار ،برای کاربردهای مختلف متفاوت است .برخی از الگوريتمها هزينه و زمان
را بهینه میکنند .الگوريتمهای ديگر ،دسترسی ،اعتماد ،بهره وری و متعادل سازی بار را برای تخصیص
بهینه منابع در نظر میگیرند .با توجه به مطالب بیان شده ،ما به يک روش کارآمد برای بهینهسازی
زمانبندی گردش کار در محیط ابر نیاز داريم .يک زمانبند کار بايد استراتژی زمان بندی خود را با
محیط در حال تغییر و نوع کار وفق دهد .در اين فصل ،جهت بهینهسازی گردش کار در سیستمهای
رايانش ابری ،استفاده از تکنولوژی MPIهوشمند و MPIهوشمند فازی ارائه میگردد .در تحقیق
حاضر سه پارمتر مهم يعنی زمان اجرا ،بهره وری منابع و زمان اتمام در نظر گرفته میشود .اين سه
پارامتر به عنوان مسائل بهینه سازی در تحقیق حاضر میباشد .اساس کار بهینهسازی پارامترهای مورد
نظر براساس بکارگیری تکنیکهای الگوريتم PSOو GAو گريدی و Max-Minو Min-Minمیباشد.
فازهای مختلفی برای روش پیشنهادی در نظر گرفته شد که در ادامه جزئیات فازهای مختلف بررسی
می شوند .اهداف مشخصی که با ارائه اين طرح به دنبال آن هستیم عبارت است از:
( )1يکی از اهداف مهم در ارائه روش پیشنهادی ،مديريت جريانهای کاری مختلف است .وقتی
جريان های کاری مختلفی در سیستم وجود دارد بحث مديريت جريان کاری بايد طوری انجام شود
که هر جريان دقیقا به فرآيند مورد نظر ارسال شود؛ بنابرين هر سرور يا ماشین که يک يا چند فرآيند
دارد هر جريان را يک ماشین اجرا میکند .پس در هر سرور تعدادی جريان مختلف وجود دارد که
مديريت اين جريان ها بايستی بدرستی انجام شود .پس ما به دنبال ،يک روش کارآمد برای مديريت
اين جريانهای کاری هستیم.
( ) 2با ارائه روش پیشنهادی مديريت مراکز داده تصمیم میگیرد که جريانها را به کدام سرور ارسال
کند با اين کار آسان شدن مديريت جريان کاریهای مختلف در بستر ابر فراهم میشود.
( )3پشتیبانی اجرای جريان کاری در سیستمهای رايانش ابری با مقیاسپذيری مطلوب؛ در اين فصل
روش شناسی تحقیق مبتنی بر MPIهوشمند و MPIهوشمند فازی بررسی میشود .با بهینهسازی
مناسب گردش کار میتوان عملکرد سیستم را بهبود بخشید .
برای تشريح روش پیشنهادی مراحل مختلفی در نظر گرفته شده است که در دو فاز اين مراحل مورد
مطالعه قرار می گیرند .فاز اول کار مربوط به ايجاد زيرساخت کل ابر و مدل کلی سیستم يا همان
فصل دوم :روش تحقیق 33 /
ساختار کل سیستم ابر میباشد .در فاز دوم کار ،ايده اصلی روش پیشنهادی مشخص میگردد .البته
اين نکته را بايد در نظر گرفت که در فاز اول کار بعد از اينکه کل سیستم مدل شده؛ قبل از اينکه ايده
اصلی اعمال شود؛ سیستم با در نظر گرفتن يک الگوريتم گريدی؛ انتخاب ماشینهای مجازی را برای
اجرای جريان های کاری در نظر میگیرد .در ادامه به تشريح دو فاز پرداخته میشود .شکل 1-3فرآيند
کلی انجام کار در روش پیشنهادی را نشان میدهد.
در ابتدا کل محیط ابر مدل شده و ساختار کلی سیستم ابر پیاده میشود .برای مدل کردن سیستم و
اعمال الگوريتم پیشنها دی؛ تعدادی مراکز داده و هر در هر مرکز داده چندين ماشین مجازی در نظر
گرفته میشود .در پیاده سازی روش پیشنهادی ،تعدادی مرکز داده ،تعدادی ماشین مجازی و سرور در
مرکز داده ،تعداد CPUدر سرور ،حافظه سرور ،پهنای باند و ظرفیت سرور تعیین میشود .در هر
ماشین مجازی يک کار پردازش می شود يا به عبارتی هر ماشین مجازی فقط يک جريان را اجرا
میکند .تمامی ماشین های مجازی باهم در VMPIBبا يکديگردر ارتباط هستند .پس هر ماشین مجازی
يک سیستم تبادل پیام با ماشین های مجازی ديگر دارند .در ادامه نحوه ارتباط هر ماشینمجازی با
ساير ماشین های مجازی با استفاده از اين سیستم ارتباطی نشان داده میشود .يک سیستم به عنوان
مدير کل ابر(سیستم مدير ابر) وجود دارد که ورودیها به آن وارد میشوند .تمامی مراکز داده با اين
مدير ابر در ارتباط هستند (ارتباط دو طرفه).
/ 34بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
در فصل قبل مدل کلی سیستم ابر مخابرات در شکل 1-2نشان داده شد .همان طور که در مطالب
فصل اول بیان شد .ماشینهای مجازی با استفاده از توابع MPIبا يکديگر در ارتباط هستند.
در اين فصل روشهای پیشنهادی بصورت روش SMPIAو روش FSMPIAارائه گرديد .خروجیهای
MPIهوشمند باعث بهبود پارامترهای کارايی زمان اجرا و زمان اتمام و بهره برداری منابع شدند.
همچنین خروجیهای روش SMPIAدر کسری از خروجی روش MPIهوشمند فازی با استفاده از
روش فازی آنتروپی ضرب شده و باعث بهبود خروجی نهايی گرديد .خروجی نهايی با استفاده از روش
خوشه بندی فازی بهینه شده و کارايی روش خوشه بندی فازی با استفاده از محاسبه پارامترهای مورد
نظر ارزيابی شد .بايستی توجه نمود که در روش SMPIAاز الگوريتمهای گريدیMin- ، Max-Min ،
Minو GAو PSOاستفاده گرديد .اين کار يک متن کاوی (داده کاوی) است .بعد از مشخص شدن
فصل دوم :روش تحقیق 35 /
مدل کلی سیستم؛ اجرای جريانهای کلی توسط ماشین های مجازی انجام میشود .در روش
پیشنهادی قرار است جريان های کاری معامالت مربوط به مخابرات اجرا شوند .شکل 2-3نمونهای از
جريان کاری در معامالت را نشان میدهد .برای جريانهای کاری در بحث مخابرات ،هر فلش به عنوان
جريان در نظر گرفته شده است.
همان طور که از شکل 2-3پیداست دو جريان کاری مختلف وجود دارد که با استفاده از الگوريتمی
مشخص بیان میشود که هر کدام از جريان ها توسط کدام ماشین مجازی اجرا شوند .به تعداد
سفارشهايی که وارد سیستم میشوند حتی آنهايی که پاسخ داده نمیشوند "وظیفه" داريم .در بحث
مخابرات وظیفههای مورد نظر در مورد معامالت بزرگ(کالن) و معامالت کوچک(يامتوسط) به فرآيند
خريد و قراردادها مرتبط میباشد .شکل 3-3معامالت در نظر گرفته شده برای مخابرات را نشان
میدهد .قرار است با اعمال روش پیشنهادی جريان های کاری اين معامالت توسط ماشینهای مجازی
اجرا شوند .اين نکته را بايد در نظر گرفت که يک ماشین مجازی فقط يک نوع جريان را اجرا میکند.
ولی اين امکان وجود دارد که در يک لحظه 20نوع از اين جريان در ماشین مجازی اجرا شده باشند.
ماشین مجازی همزمان نمی تواند جريانهای مختلف را اجرا کنند.
/ 36بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
مجازی که شرايط الزم گیرد .نحوه انتخاب يک ماشینمجازی صورت میاجرای جريان توسط ماشین
شود .برای انتخاب ماشین مجازی جهت اجرای جريان (ظرفیت) را داشته باشد توسط مدير ابر انجام می
کند و های مجازی ارسال میکاری معامالت ،در ابتدا مدير ابر يک پیام به صورت کلی به تمامی ماشین
های يابد سپس جريان را به يکی از ماشینهای مجازی که مربوط به کار هستند را میتمامی ماشین
کند ،که کمترين واريانس بار را داشته باشد.مجازی با در نظر گرفتن الگوريتم گريدی ارسال می
در اين کار ،هر Taskاز تعدادی jobتشکیل شده بود (شکل .)۴-3شکل ۴-3مدل Taskرا نشان
میدهد.
بر اساس زمانبندی انجام شده توسط زمانبند در مرکز مديريت ابر ،تمام جريانها مطابق شکل 5-3
به سمت ماشینهای مجازی هدايت میشوند .جريانهای مختلف به طور همزمان در ماشینهای
مجازی اجرا نمیشدند ،اما در هر لحظه ،به عنوان مثال 20جريان از همان نوع در ماشین مجازی اجرا
میشوند.
فصل دوم :روش تحقیق 37 /
مشکل تخصیص منابع بصورت فازی در کار ما انتخاب AVMهای مناسب و نگاشت بهینه جريانها بر
روی آنها در حداقل زمان اتمام به منظور بهینهسازی همزمان پارامترهای کارايی است .برای اين
منظور ،يک Non-FSMPIAو يک FSMPIAارائه شده استMPI .در هر دو روش موجود بود ،اما در
روش پیشنهادی با آموزش داده MPIهوشمند میشود.
شرح مشکل
در اساسیترين مدل سرويس ابری ،زيرساخت به عنوان يک سرويس در نظر گرفته میشود که در آن
منابع محاسباتی را میتوان به عنوان ماشین مجازی ارائه کرد [ .]2مشکل اصلی در کار ما اختصاص
AVMهای مناسب و سپس نگاشت بهینه جريانها بر روی آنها در حداقل زمان پردازش به منظور:
( )1بهینه سازی همزمان پارامترهای کارايی است.
( )2حل مشکل زمان بندی وظیفه و تخصیص منابع در محاسبات ابری با استفاده از SMPIA
( )3حل مشکل گرسنگی وظايف (زمان انتظار زياد برای مشاغل کوچک و بزرگ) و کمبود منابع کافی.
برای اين منظور FSMPIA ، SMPIA ،و O-SMPIAاستفاده شده است .در Greedy, ( Non-SMPIA
،)Max-Min, Min-Min, GA, PSOابتدا ،جريان فعلی بر اساس اين الگوريتمها از جريانهای مورد
انتظار انتخاب شدند .پس از آن ،جريان انتخاب شده به منبع منتخب اين الگوريتمها ارسال شد.
در نهايت SMPIA ،به منظور بهینهسازی مجموع زمان اجرا ،زمان اتمام و بهره برداری منابع بر روی
هر يک از اين الگوريتمها اعمال شد .پس از بهینه سازی ،اگر ماشین مجازی نتواند جريان جاری را
اجرا کند (به عنوان مثال صف پر بود ،سیستم خراب شد ،سیستم قطع شد و غیره) SMPIA ،اعمال
میشود SMPIA .در سه مرحله محاسبه رتبه ، AVMانتخاب AVMو نگاشت جريان بر روی AVM
اجرا شد .در مورد مديريت MPIماشینهای مجازی ،رتبه AVMها بر اساس تعداد اتصاالت آن با ساير
AVMها بر اساس زمان اتمام محاسبه شد.
/ 38بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
1. SortTransTime.
2. AddJobVM.
3. AddMinutes
4. CompareDateTime
5. RetRelatedVMs
فصل دوم :روش تحقیق 39 /
پس از به روز کردن گام های زمانی (توسط تابع زمان) ،لیست معامالت چک میشود .اگر زمان فعلی
بزرگتر از زمان معامله باشد و اگر معامله جديد در لیست وجود داشته باشد ،يکی از آنها (معامالت
بزرگ يا کوچک) برای اجرا انتخاب میشود.
اگر معامله بزرگ انتخاب شود ،شماره اولین جريان در برنامه برابر با 2است و اگر معامله کوچک
انتخاب شود ،شماره اولین جريان برابر با 1است .پس از انتقال جريانهای معامالت به ماشین مجازی
انتخاب شده ،روش MPIهوشمند اعمال می شود و براساس روش پیشنهادی AVMمناسب انتخاب
مطالعه موردی: هوشمندMPI بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از/ 40
بعد شرط توقف. معامله پردازش میشود و نتايج ذخیره میشوند، مناسب باشدAVM اگر.میشود
از يک ماشین مجازی بهjob انجام میشود (انتقالjob مهاجرت، در غیر اين صورت.چک میشود
شبه. مناسب ديگر اعمال میشودAVM ماشین مجازی ديگر) و روش پیشنهادی دوباره برای انتخاب
. نشان داده شده است1-3 در جدولMPI کد الگوريتم
درSMPIA ، VMPIB درAVM به منظور برداشت جريان فعلی از ماشین مجازی فعلی و انتقال آن به
:سه مرحله به شرح زير اجرا شده است
فصل دوم :روش تحقیق 41 /
رابطه 1
MPI
به عنوان ارتباط هوشمند AVMبا ساير AVMها در سیستم شبکه توزيع شده تعريف میشود .به
عبارت ديگر AVM ،هايی که بیشتر با آنها در تماس بوده و جريان بیشتری دريافت کرده اند ،برای
اجرای جريان بعدی در لیست ماشین مجازی معرفی شده اند .در هر ماشین مجازی ،لیست AVMها
در يک جدول مشخص شده است .در اين لیست ،حداقل رتبه هر AVMبرابر با 1بود Pi .يا زمانهای
اجرا 1مطابق شبه کد در جدول 2-3محاسبه شد .
Min_SMPIAو Min-Min_SMPIAحل شد .با اين حال ،به منظور بهبود عملکرد سطح مراکز داده به
دلیل افزايش استفاده از مراکز داده در مکانهای مختلف جغرافیايی ،ويژگیهای FKM ، PSO ،GAو
O-SMPIAبه دلیل همگرايی سريع آنها ،پیش بینی فازی منابع ،افزايش گذردهی به ترتیب مورد
استفاده قرار گرفتند .در ، FSMPIAمنابع سريعتر شدند .طبقهبندی گردش کار در GAو PSOدر
مرحله اول و استفاده از روش فازی آنتروپی در مرحله دوم در سطح مراکز داده عملکرد را بهبود
بخشید .مقايسه هر دو روش نشان میدهد که عملکرد FSMPIAاز نظر زمان اتمام و بهره برداری منابع
به ترتیب ٪32.۴9و ٪11.26بیشتر از SMPIAاست .تخصیص منابع با حداکثر میزان درگیری و بهره
برداری منابع کمتر از 9درصد انجام شد .اين مطالعه نتايج [ 56و9و ]8را تأيید میکند و از نقض SLA
و افت QoSجلوگیری میکند.
ابتدا SMPIA ،برای هر يک از Max-Min ،Greedyو Min-Minاجرا شد .در ادامه SMPIA ،به منظور
ارزيابی عملکرد رويکرد پیشنهادی در سیستمهای ابری Max-Min ،Greedyو Min-Minروی هر
الگوريتم اعمال شد .دو رويکرد به موازات يکديگر اجرا شدند .هرگونه تغییر در وضعیت جريان های
جانشین در ماشین های مجازی جانشین (تغییرات بار ،ظرفیت و غیره) بر جريانهای بعدی AVM
بعدی تأثیر میگذارد SMPIA .در استراتژیهای مختلف TSRAبه شرح زير اعمال میشود.
رابطه 2
در مرحله سوم برای جريان های بعدی AVMمناسب با توجه به محاسبه فرمول زمان اتمام برای همه
AVMها در SMPIAانتخاب شد .کوتاهترين زمان اتمام باعث انتخاب يکی از AVMها شد .با انتخاب
AVMدر ، VMPIBمی توان سرعت اجرا را افزايش داد و میانگین پارامترهای زمان اتمام و مجموع
زمان اجرا برای گردش کار در نظر گرفته شده به حداقل رسید .متغیرها و تعاريف مورد استفاده در
کتاب در جدول 1پیوست 1ذکر شده است .شناسهها به وسیله AVMبه وسیله " " For Loopالگوريتم
گريدی با استفاده از شبه کد در جدول 5-3اختصاص داده شده است.
47 / روش تحقیق:فصل دوم
برایGreedy بهترين ماشین مجازی بر اساس کمترين واريانس بار با الگوريتم،Non-SMPIA در
مناسب در مرحله سوم برای جريانهای بعدی انتخابAVM ، SMPIA در.جريان های قبلی انتخاب شد
به۴ و3 مطابق با تابع هدف رابطههایSMPIA پیچیدگی زمان الگوريتم گريدی با استفاده از.شد
. محاسبه شدO(p ∗ v) صورت
3 رابطه
O(θ) = C1 + ∑P1(C2 + ∑V1 C3 )
M 𝑅
4 رابطه
F1 = C1 + ∑ (C2 + ∑(C3 + C4 + FAlg + C5 ) + C6 + C7 )
i=1 j=k
. نشان داده شده است8-3 بر روی سیستم ابر گريدی در شکلSMPIA چهارچوب استفاده از
/ 48بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
الگوريتم تخصیص جريانهای کاری به ماشین های مجازی با استفاده از الگوريتم گريدی در جدول -6
3ارائه شده است SMPIA .از الگوريتمهای هیوريستیک ،گريدی GA ،و PSOمستقل بود و برای هر
يک از الگوريتمها در برنامه اجرا شد SMPIA .برای الگوريتمهای هیوريستیک ،گريدی ،در جدول (6-
)3بر اساس شبه کد اجرا شد .مت غیرها و تعاريف به کار رفته در کتاب در جدول 1از پیوست 1نشان
داد شد.
49 / روش تحقیق:فصل دوم
رابطه 5
رابطه 6
هر دو الگوريتم Min-Minو Max-Minيک تخصیص فرضی از وظايف به منابع در نظر میگیرند ،زمانی
که منابع براساس تخصیص فرضی بیکار شوند نگاشت انجام میشود .هر دو الگوريتم پیچیدگی زمانی
𝑂(𝑚𝑛)2را دارند که mتعداد منابع در سیستم و nتعداد وظايف که بايد برای اجرا ،زمانبندی شوند
انتخاب شده اند.
در ،Non-SMPIAماشین مجازی با حداقل زمان اتمام روی الگوريتمهای Max-Minو Min-Minبرای
جريانهای قبلی انتخاب شد .در AVM ، SMPIAمناسب برای جريانهای بعدی در مرحله سوم انتخاب
فصل دوم :روش تحقیق 51 /
شد .پیچیدگی زمان الگوريتم های Max-Minو Min-Minبا توجه به تابع هدف رابطههای ( )3و ()7
به صورت ) O (P3با SMPIAمحاسبه شد.
رابطه 7
)) 𝟒𝐂 𝟏𝐏∑ 𝟐(𝟏𝐏∑ F2 = 𝐂𝟏 + ∑𝐏𝟏(∑𝐏𝟏 𝐂𝟐 + ∑𝐕𝟏 𝐂𝟑 +
رابطه ( )8برای جريان iدر کلیه ماشینهای مجازی محاسبه میشود .
/ 52بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
The amount of current workload on VM j+The amount of workload required for flow i
= VMmin رابطه 8
The speed of execution flow i on VM j
با محاسبه اين رابطه برای همه ماشین های مجازی ،حداقل مقدار پیدا خواهد شد و مشخص میشود
که در کدام ماشین مجازی واقع شده است .نگاشت های جريان فعلی روی AVMانتخابی در
الگوريتمهای Max-Minو Min-Minتقريباً يکسان بودند ،تنها تفاوت ظريف در اين است که درMin-
Minجريان با زمان اجرای کم به AVMبا حداقل زمان اتمام منتسب میشود SMPIA .روی هر يک از
الگوريتمهای گريدی Min-Min ، Max-Min ،اعمال شد .برای ارزيابی کارايی روش پیشنهادی در
سیستم ابری گريدی و سیستم ابر Min-Min ، Max-Minدو روش به طور همزمان بر هر يک از
الگوريتمها بصورت موازی اجرا شدند .هرگونه تغییر در وضعیت جريانهای قبلی در AVMهای قبلی
(تغییر بار ،ظرفیت و غیره) ،جريان های بعدی AVMهای بعدی را تحت تأثیر قرار میدهد .میانگین
پارامترهای زمان (زمان اجرا و زمان اتمام) و بهره برداری منابع محاسبه و دو روش مورد آزمايش و
ارزيابی قرار گرفتند.
و ذره در نظر گرفته شد GA .و PSOپس از مراحل خاص خود ،پاسخ خوب کافی را مطابق با تابع
هزينه پیدا کردند .پس از انجام الگوريتم های GAو ، PSOيک ماتريس به عنوان ماتريس بهتر با
استفاده از تابع هزينه پیشنهاد شده در رابطه ( )9انتخاب شد.
جدول :8-3ماتریس اختصاص
رابطه 9
برای هر تراکنش در حال اجرا ،رابطه ( )9محاسبه شد .حداکثر Costمحاسبه شده برای هر معامله به
عنوان هزينه در نظر گرفته شد .اين تابع چند منظوره جديد شامل مقدار بار جريان ،میزان بار روی
ماشین مجازی ،ظرفیت ماشین مجازی و پارامترهای سرعت احرا میباشد .سرانجام ،با توجه به ماتريس
انتخاب شده ،جريان معامالت بر اساس فاز 3به ماشین های مجازی ارسال شد .همین فرايند برای
دسته های ديگر اعمال شد ،تا زمانی که همه جريان تراکنشها به ماشینهای مجازی ارسال شود.
بنابراين ،مناسب ترين مقادير برای ماتريس برای الگوريتم های GAو PSOيافت شد .پس از انتخاب
بهترين ماتريس با مقادير مناسب ،جريانها به يک ماشین مجازی ارسال میشوند .در مرحله بعد،
بررسی کرديم که آيا همه دستهها مورد بررسی قرار گرفته اند يا خیر .يکی از دستهها برای اختصاص
جريان به ماشین مجازی انتخاب شد .طبق جدول ،8-3معامالت طبقه بندی شده به ماشین های
مجازی ماتريس اختصاص داده شده ارسال میشود.
پارامترهای GAو PSOبه ترتیب در جداول 9-3و 10-3ارائه شده است .مقادير پارامترها بر اساس
فرايند آزمايش و خطا محاسبه شد .آزمايش و خطا يک روش اساسی برای حل مشکل است که با
تالشهای مختلف تا رسیدن به موفقیت ادامه میيابد.
/ 54بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
Parameter Value
Crossover 80%
Mutation rate 40%
Replacement rate 10%
ToT 4
PS 16
Max iteration 10
آزمايش و خطا يک رويکرد غیر سیستماتیک است که از بینش ،نظريه يا روشهای سازمان يافته
استفاده نمیکند .با اجرای ، GAيک کروموزوم (ماتريس اختصاص داده شده) با توجه به تابع هزينه
در رابطه 9به عنوان کروموزوم مناسب انتخاب شد و با توجه به کروموزوم انتخاب شده ،جريان
تراکنشها به ماشین های مجازی منتخب ارسال شد.
جدول :10-3پارامترهای PSO
Parameter Value
PS // PS denotes population size 10
C1 // C1 denotes fixed numbers in the PSO speed update formula. 0.8
C2 // C2 denotes fixed numbers in the PSO speed update formula. 0.4
Max iteration 7
انتخاب ماتريس با مقاديرمناسب يکی از مهمترين مراحل در فرايند پیاده سازی GAو PSOاست .در
مرحله جايگزينی ،بهترين کروموزوم در فرآيند انتخاب کروموزوم ها انتخاب شده است .برای جلوگیری
از حذف بهترين و انتخاب آن ،از الگوريتم انتخاب تورنمنت در فرآيند انتخاب در GAاستفاده شد .در
روش تورنمنت ،برای انتخاب جمعیت ،ابتدا نمونه ای از نسل قبلی انتخاب شد و با توجه به رتبه اعضا،
SMPIAبرای اين نمونه تهیه شد .سپس ،با استفاده از ، SMPIAچندين نفر از افراد جامعه انتخاب
شدند .الگوريتم ( 1الگوريتم تورنمنت) در جدول 3-11استفاده شده است.
جدول : 11-3الگوریتم تورنمنت در GA
01 Start
02 Input: ToT, PopFits, PopSize. // ToT denotes T of Tournament.
03 Output: SelectionIndex.
04 A sample of the previous generation population (PopSize) was randomly
selected and placed in the SelectedIndex matrix.
05 Using members of the SelectedIndex matrix, a number of appropriate
members (PopFits) were selected based on their ranks in fitness function
and were placed in the SlectedValue variable.
فصل دوم :روش تحقیق 55 /
ابتدا ،همان طور که در شکل 10-3نشان داده شده است ،مقادير اولیه بارگیری میشوند ،ظرفیت
ماشینهای مجازی محاسبه میشود و گام زمانی به روز می شود .در مرحله اول ،يک پیام پرس و جو
پخش شده به همه ماشینهای مجازی ارسال میشود که میتوانند به جريان فعلی پاسخ دهند.
در ) ،Non-SMPIA (GA, PASOانتخاب بهترين VMبر اساس الگوريتم های GAو PSOانجام میشود.
در مرحله دوم AVM ،مناسب برای جريان های بعدی با توجه به محاسبه فرمول زمان اتمام برای تمام
AVMهای موجود در SMPIAبا استفاده از ) GA-SMPIAو (PSO-SMPIAانتخاب شد .پس از آن ،در
مرحله سوم ،جريان جاری با استفاده از تابع " "AddJobVMبه AVMها ارسال میشود تا وضعیت آن
به مديريت ابر گزارش شود .استفاده از الگوريتم PSOمشابه استفاده از GAدر رويکرد پیشنهادی است.
فرايند اختصاص جريان به ماشینهای مجازی با استفاده از GAو PSOانجام شد .در ،PSOذرات در
نظر گرفته شدند و هر ذره به عنوان يک ماتريس اختصاص در نظر گرفته شد .اما ،در ،GAهر کروموزوم
به عنوان يک ماتريس اختصاص در نظر گرفته شد.
در اين کتاب SMPIA ،روی GAو PSOبه منظور تعیین بهترين AVMاستفاده شد .در ادامهSMPIA ،
فراخوانی شد .اگر AVMانتخابی از طريق SMPIAمناسب نبود (حداقل زمان اتمام را نداشت) ،مهاجرت
( jobانتقال jobبرای اجرای از يک AVMبه AVMديگر) انجام شد و SMPIAدوباره فراخوانی شد .در
غیر اين صورت ،معامله پردازش شد و نتايج ذخیره شد .سپس شرط توقف (آيا همه معامالت انجام
شده است يا همه معامالت کامل هستند؟) بررسی شد SMPIA .برای الگوريتمهای GAو PSOبر اساس
شبه کد در جدول 12-3اجرا شده است.
/ 56بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
عالوه بر اين ،در الگوريتم انتخاب رهبر جديد و بهترين ذره (جدول ) 1۴-3رهبر جديد و بهترين ذره
59 / روش تحقیق:فصل دوم
در الگوريتم ارزيابی ذرات. مرحله ارزيابی برای همه جمعیت استفاده شده است، همچنین.يافت شد
ارزيابی،)3-16 ارزيابی ذرات جديد و در الگوريتم ارزيابی کردوموزم (جدول،) 15-3 (جدول
.کروموزومهای جديد نشان داده شده است
انتخاب رهبر جدید و بهترین ذره: 14-3 جدول
01 Start
02 Input: PopSize
03 Output: New leader and BestParticleFit.
04 Leader = Particles (1, :) // Put all the particles of the row’s 1 in the leader.
05 LeaderFit = PopFits (1, 1) // Put all the particles of the first row and the first column of
PopFits in the LeaderFit.
06 if (LeaderFit < BestParticleFit)
07 BestParticle = Leader
08 BestParticleFit = LeaderFit
09 end
10 end
تکرار جريان برای اجرای، پذيرفته شدAVM هنگامی که اجرای جريان توسط. انجام شدSMPIA طريق
-3 (جدولSMPIA در الگوريتم پیاده سازی. های هوشمند بیشتر خواهد بودAVM هوشمند توسط
. ها پیادهسازی شده استAVM برایSMPI ،)17
هاAVM برایSMPIA پیاده سازی:17-3 جدول
01 Start
02 Input: FID, TCL, TRT
03 Output: OVMID, ORT.
04 OVMID = -1
05 ORT = -1
06 RelatedVMs = RetRelatedVMs (FID)
//Takes the flow ID and return the VMs corresponding to it and put them in the
RelatdVMs variable.
07 RT = zeros (size (RelatedVMs))
//Takes the array of the corresponding VMs and calculates matrix size (execution
time) of each flow of VMs in them and put it in the RunTimes (RT) variable.
08 (VMsCount , TempSize) = size (RelatedVMs)
//Calculates and return the number and size of the all corresponding VMs based
on the length of the array.
09 for i = 1 to VMsCount
10 Index = RelatedVMs (i) //Set a number to each corresponding VM to the index
variable.
11 A = TCL //Set the computation load of the flow to the variable A.
12 B = VMsLoad (1, Index) //Set the total load of the VM to the variable B .
13 C = VMS (Index, 4) //Set the capacity of VM to the variable C.
14 D = FID //Put the flow ID in the variable D.
15 E = EV (D, Index) //Allocate the speed of executing flow D on the VM index to
the variable E.
16 TT = ((A + B) / C) / E //Calculate ((A + B) / C) / E and allocates the result to the
TempTime variable.
17 RT (i) = TT // The TempTime variable is used as the MS of the AVMs for the
desired flow, and puts it in the RunTimes variable.
18 end
19 for i = 1 to VMsCount
20 if (RT (i) < TRT)
21 TRT = RT (i) //Consider the MS value of the AVM and send the current flow to
it.
22 OVMID = RelatedVMs (i) //Increase the rank of the AVM.
23 end
24 end
25 end
فصل دوم :روش تحقیق 61 /
حل مشکل TSRAبا استفاده از SMPIAبر روی الگوریتمهای خوشه بندی FKM
را معرفی کرديم که بر اساس آنتروپی FKMبندی ،ما روش خوشهSMPIAبرای کوتاه کردن زمان تکمیل
Greedy_SMPIA ،Max-Min_SMPIA ،Min-Min_SMPIA ،فازی جديد است .اين روش با
برای هر FKMبندی روش خوشه ها را هوشمند کرد AVM.ترکیب شد و PSO_SMPIAو GA_SMPIA
را به صورت زير پیاده سازی کرديمFKM .ابتدا ،روش خوشه بندی اجرا شد SMPIA.و Non-SMPIAدو
گیرد که در جدول -3های پیکربندی سیستم مديريت ابر مورد استفاده قرار می ،مجموعه دادهFKMدر
گیری های آموزشی در روش درخت تصمیم 18ارائه شده است .در مجموع 200 ،پرونده به عنوان داده
چندين پرونده داده با فرمت داده آموزشی مشابه برای سازی شده است.سازی پیادهفازی 1در شبیه
های آموزشی به عنوان ورودی بخش آموزش در يک فايل اکسل با نام شود .دادهآزمايش استفاده می
های پايگاه داده را از فايل ،ابتدا دادهFKMدر روش شود.سازی استفاده میبرای شبیه ""Dataset.xlsx
کنیم.بندی می خوشهk-meansبندی میخوانیم و سپس ،داده های آموزش را با الگوريتم خوشهExcel
هر ويژگی شامل نمونه هايی است که با يک عدد صحیح مشخص شده و در پايگاه داده ذخیره میشود.
جدول ( 19-3فراداده) ويژگیها ،نمونه ها و اعداد صحیح مورد استفاده در شبیهسازی روش
خوشهبندی را نشان میدهد K-means .محبوب ترين و ساده ترين الگوريتم پارتیشن بندی است که
برای خوشه بندی استفاده میشود [.]۴5
در اين الگوريتم خوشهبندی ، FKMتعداد خوشهها (گروه ها) بايد از قبل مشخص شده باشد .خوشه
بندی داده ها در مناطقی که سرور در آن قرار دارد انجام میشود .همچنین ،تعداد خوشهها را بر اساس
مناطقی که از تعداد خاصی در آنها استفاده میشود ،تعیین میکنیم .با وجود سادگی ،اين يک روش
اساسی برای بسیاری از روش های خوشه بندی است .اشکال مختلفی برای اين الگوريتم وجود دارد،
اما آنها روالهای تکراری دارند و موارد زير برای تعداد مشخصی از خوشهها تخمین زده میشود)1) :
به دست آوردن نقاط به عنوان مرکز خوشهها .اين نقاط در واقع میانگین نقاط هر خوشه هستند)2 ) .
هر نمونه داده به خوشه اختصاص داده می شود ،از مرکز آن حداقل فاصله وجود دارد.
جدول :19-3فراداده (جدول نگاشت)
Row Attributes Samples Value
DC 1 1
DC 2 2
DC 3 3
DC 4 4
DC 5 5
DC 6 6
1 DC ID DC 7 7
DC 8 8
DC 9 9
DC 10 10
DC 11 11
DC 12 12
DC 13 13
Server 1 1
Server 2 2
Server 3 3
Server 4 4
Server 5 5
2 Server ID
Server 6 6
Server 7 7
Server 8 8
Server 9 9
Server 10 10
CPU 1 1
3 )CPU (Number
CPU 2 2
64 1
128 2
4 )CPU Freq (HZ 256 3
512 4
1024 5
512 1
5 )Bandwidth (Mb/S
1024 2
Less than 20 1
6 VMs Count
More than 20 2
512 1
7 Memory
1024 2
فصل دوم :روش تحقیق 63 /
در اين روش ،تعدادی از نقاط به طور تصادفی متناسب با خوشه های مورد نیاز انتخاب میشوند.
سپس ،داده ها بر اساس میزان مجاورت (شباهت) به يکی از اين خوشهها اختصاص داده میشوند.
بنابراين ،مراکز جديد برای آنها محاسبه می شود که با تکرار يک روش مشابه و میانگین دادهها،
خوشههای جديدی به دست میآيد .دوباره ،دادهها به خوشههای جديد اختصاص داده میشوند .اين
روند تا زمانی که تغییری در دادهها ايجاد نشود ادامه میيابد FI .به عنوان تابع هدف در رابطه 10در
نظر گرفته می شود .الگوريتم پايه (جدول )20-3به عنوان الگوريتم اساسی برای الگوريتم k-means
در نظر گرفته شده است.
𝑧 𝑝
) (
FI = ∑ ∑ || ah o − eo ||2 رابطه 10
𝑜=1 ℎ=1
|| || اندازه گیری فاصله بین نقاط است eo ،مرکز خوشه p ،othتعداد نمونه و zتعداد خوشهها است،
ahيک نمونه نمونه است.
جدول :20-3الگوریتم پایه k-means
01 Start
02 z=10 centres are randomly selected. // Based on the number of servers
03 Repeat
04 Each sample is assigned to the closest center.
05 The centres are updated according to the clusters.
06 Until (there are not great changes in the clusters or the numbers are
)determined in advance.
07 End
پس از خوشه بندی داده های آموزشی ،زمان آموزش برنامه با استفاده از FDTفرا میرسد .خوشه بندی
دادهها در مناطقی که سرور در آن قرار دارد انجام میشود .شرايط يادگیری در الگوريتم FDTاين است
که دادهها بايد گسترده باشند .اين مرحله توسط الگوريتم k-meansانجام میشود .سپس دادهها در
ماتريس ذخیره میشوند و برای آموزش به FDTارسال میشوند .طبقهبندی درختان در الگوريتم k-
meansانجام میشود .اين يک فرايند د و مرحله ای به شرح زير است:
( )1مدلسازی :مجموعه داده های آموزشی به پايگاه داده ای اشاره دارد که حاوی دادههای پیکربندی
ابر با 10سرور فعال در ابر است که پس از گسستهسازی در يک ماتريس ذخیره میشوند .برچسب
های کالس مربوط به اين نمونهها مشخص شده و هر کالس با ويژگی جدول 3-19تعیین میشود
که "برچسب کالس" نامیده میشود.
( ) 2استفاده از مدل :برچسب کالس هر نمونه pپايگاه داده از طريق تابع )y = f (pپیش بینی میشود.
اين تابع در قالب قوانین طبقهبندی ،درخت تصمیم گیری يا فرمول های رياضی است.
/ 64بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
در روش ، FKMدادههای قابل پیشبینی يا دادههای آزمايشی توسط يک فايل اکسل با فرمت دادههای
آموزشی مشابه وارد برنامه می شوند .پس از تشخیص توسط الگوريتم ، k-meansآنها با استفاده از
يک تابع به قوانین طبقه بندی شده روی میآورند و با دادههای آموزشی تصمیمگیری (ارائه نتايج پیش
بینی شده) مقايسه میشوند.
پس از مرحله آموزش ماشین ،داده های آموزشی با استفاده از الگوريتم فازی الگويی از اين دستگاه را
استنباط میکنند .داده های آزمايش پس از مقايسه با اين الگو نتايج پیش بینی شده را ارائه میدهد.
در روش ،FKMدادههای آزمايش شامل برخی از ويژگیهای آزمايش شده (حافظه،توان ،CPUتعداد
، CPUنام ديتاسنتر ،نام سرور ،تعداد ماشین های مجازی ،تخصیص پهنای باند) است .ويژگی ظرفیت
(به عنوان ويژگی پاسخ) نتیجه تنظیم FDTاست که میتواند در خروجی برنامه مشاهده شود.
با توجه به پیادهسازی ،دادههای فوق را در فايل " "Dataset.slsxذخیره کرديم .اين فايل شامل 200
رديف و 8ستون است و مطابق با قالب داده های آموزشی ،شبیه سازی را به عنوان داده ورودی توسط
فايل ""Create_Dictunary.mوارد میکند .محتوای فايل Excelدر ماتريسی به نام
""Train_Dataذخیره می شود .هر ستون از اين ماتريس در آرايه درج میشود تا مقادير دادههای
آموزش را مشخص نکند .سپس" ،برای حلقه" به تعداد دفعات تعداد سطرهای موجود در اين فايل
میچرخد و مقادير گسسته میشوند.
در نهايت ،دادهها در ماتريسی به نام " "Train_Dataقرار داده میشوند تا توسط فايل " "Main.mبرای
يادگیری برنامه بارگیری شوند .پس از اجرای " ، "Create_Dictunary.mفايل " "Main.mبايد اجرا
شود .اين فايل ابتدا " "Train_Dataرا بارگذاری میکند ،سپس ستون های 1تا 7را در آرايه
""Train_Patternsوارد میکند و آخرين ستون (ستون پاسخ) در آرايه " "Train_Targetsقرار
میگیرد .پاسخ با استفاده از فايل " "Test_Data.xlsxآزمايش يا پیش بینی میشود .سپس ،دادهها در
فايل " "Main.mدر برنامه به عنوان دادههای آزمايش وارد میشوند ،که با دادههای قبلی (داده های
يادگیری) مقايسه می شود و نتیجه به عنوان خروجی نمايش داده میشود .دادههای آزمايش حاوی 7
ستون نیز گسسته هستند .در ادامه ،پاسخ در اين دادهها نامشخص است ،فقط 7ستونی که برنامه با
آنها نحوه پیشبینی پاسخ را میآموزد به عنوان ورودی دادههای آزمايش در نظر گرفته میشوند.
دادهها پاسخ را با روش FDTپیش بینی کرده و آن را به ع نوان خروجی نمايش میدهند .تابع " "
Test_Fuzzyدر فايل " "Test_Fuzzy.mقرار دارد و پیشبینی پاسخ را بر اساس دادههای آموزش از
طريق روش FDTمیآموزد FDT .توسعه يافته يک درخت تصمیم معمولی )(ODTاست که از قوانین
فازی برای طبقهبندی استفاده میکند .به همین دلیل ،عالوه بر دادههای آموزشی ،نیاز به تعريف دقیق
مجموعه های فازی برای هر ويژگی دارد .اما ،عملکرد کلی آن و کاری که انجام میدهد شبیه عملکردی
است که ODTانجام میدهد.
فصل دوم :روش تحقیق 65 /
يکی از کارهايی که در FDTانجام میشود ،مانند ، ODTمحاسبه آنتروپی و بهره وری اطالعات است.
با اين حال ،فرمول محاسبه آن ها متفاوت و مبهم است .محاسبه آنتروپی به طور معمول در رابطه 11
بیان میشود.
𝐫
رابطه 11
𝐡𝐩 𝟐 𝐠𝐨𝐥 𝐡𝐩 ∑ 𝐄𝐧𝐭𝐫𝐨𝐩𝐲 (𝐔) = −
𝟏=𝐡
جايیکه Uمجموعه ای از نمونهها است r ،تعداد مقاديری است که تابع هدف میتواند بپذيرد و ph
کسری از نمونهها است که در آنها تابع هدف دارای مقدار hاست .آنچه در اين الگوريتم مورد نیاز
است محاسبه آنتروپی فازی است .رابطه 12برای نشان دادن آنتروپی فازی استفاده میشود:
𝑟 𝑝 𝑝
در رابطه |U| ،12تعداد اعضای مجموعه Uاست p ،تعداد نمونهها و rبرچسب کالسهای عملکردی
تناسب اندام است .رابطه 12شکل گسترده ای از رابطه 11است .اما ،به جای قرار دادن مقدار 0يا 1
برای درجه عضويت ،ما مقداری بین 0تا 1قرار می دهیم .رابطه ای که برای محاسبه آنتروپی در
الگوريتم ما استفاده می شود کمی با آنچه در باال ذکر شد متفاوت است .تفاوت اصلی آن در تعداد
نمونه های بکار رفته است ،يعنی |.|U
تقسیم درجههای عضويت بر تعداد نمونهها نمیتواند بسیار موثر باشد زيرا حاالت نامشخص است و
تعداد حاالت با استفاده از روش فازی تعیین می شود .به همین دلیل ،بر مجموع درجات عضويت در
همه نمونهها تقسیم می شود .بر اين اساس ،رابطه آنتروپی گسترده به صورت رابطه 13ارائه شده است.
(a) U = {a1, a2, …, ap} is a set of samples.
(b) G = {b1, b2, …, br} is a set of class tags.
](c) µho ∈ [0, 1
𝐫
𝟏 = 𝐨𝐡(𝐝) ∑ µ
𝟏=𝐡
𝐩
𝐩 ≤ 𝐨𝐡(𝐞) 𝟎 ≤ ∑ µ
𝟏=𝐨
𝐩 𝒑 𝒓
𝐫
جايیکه به جای تقسیم بر | |Uبر مجموع درجات عضويت همه مقادير تابع هدف در همه نمونهها
تقسیم میشود .پس از آموزش دادههای موجود در فايل " ،" Main.mعملکرد ""Test_Fuzzyداده
های آموزش ديده را با دادههای آزمايش مقايسه کرده و پیش بینی میکند .دادههای پیش بینی شده
توسط تابع ""Mainprogram.mاستفاده میشود.
در ادامه ،فلوچارت اعمال SMPIAدر روش خوشه بندی FKMبر اساس آنتروپی فازی )(FSMPIAدر
شکل 11-3نشان داده شده است .طبق شکل ،11-3در مرحله دوم AVM ،FSMPIAمناسب برای
جريان های بعدی با توجه به محاسبه فرمول زمان اتمام برای همه AVMهای موجود انتخاب شدند.
تک پردازنده 2 پايین LOدر O-SMPIAبرای زمانبندی وظايف پراکنده 1که تحت زمانبندی پیشگیرانه
اجرا میشوند در نظر گرفته میشوند .هر jobشامل تعداد وظايف ،اندازه ،jobاولويت ،jobموقعیت،
نوع و غیره میباشد .حداقل فاصله بین هر دو jobيا يک نمونه وظیفه با 𝑖𝑇 مشخص میشود و ما
مهلت های ضمنی را فرض میکنیم ،يعنی ∀i : 𝐷𝑖 = 𝑇𝑖 :جايیکه 𝑖𝐷 مهلت نسبی يک کار است .هیچ
حالت خود تعلیقی 3وجود ندارد و فرض بر اين است که سربارهای تعويض متن ۴در پردازندههای
مختلف ناچیز هستند .با توجه به رابطه ( LO ، )1۴يک Taskرا در زير مجموعههای ديگر انجام
نمیدهد ،بلکه فقط در τxاست ،جايیکه }. x, m ∈ {LO, HI
رابطه 14
LO LO
UHIو در نهايت ،در میان چهار ترکیب بالقوه به حالت بحرانی ،توجه داشته باشید که فقط ,ULO
HI HI
ULOبرای τx ⊂ τخاصی وجود ندارد ،زيرا وظايف LOزمانی رها میشوند وقتی ULOتعريف شده است.
که يک وظیفه HIدر τxبه حالت HIتغییر کند و در نتیجه در حالت τx’s HIاجرا نشوند .در قسمت
دوم ،ما از همان مدل سیستم در کارهای قبلی در مورد زمان بندی وظايف روی هر پارتیشن استفاده
میکنیم .به طور رسمی ،هر وظیفه τiمجموعه } τ = {τ1, …, τmبه وسیله زوج (Ci(LO), Ci(HI), D i,
) Ti, Liتعريف می شود .برای اينکه چنین سیستمی با موفقیت زمانبندی شود ،همه jobها (دور
ريخته نشده ها) در يک پارتیشن معادل همیشه بايد مهلت خود را رعايت کنند .يک مفهوم مشابه،
تابع محدود به عرض 5آن 1باشد ،که مقدار زمان اجرای عرضه شده پلت فرم را در هر پنجره زمانی
با اندازه 1محدود میکند .به عنوان مثال ،يک واحد تک سرعته اختصاصی دارای SBF (l) = lاست.
ساير پلتفرمها ،مانند سرورهای مجازی که در زمان بندی سلسله مراتبی استفاده میشوند SBF ،های
خاص خود را دارند SBF .در صورت مطابقت با رابطه 15حداکثر سرعت واحد را دارد [52و.]۴3
رابطه 15
ايده اصلی آن برای حل مشکل گرسنگی در اين تحقیق اين است که jobهای HIدر حالت LOبا
کوتاه کردن مهلت های زمانی به منظور ذخیره ظرفیت پردازنده برای حالت HIارتقا میيابد .از
توضیحات باال ،وظايف LOو HIبايد با 𝑂𝐿𝑖𝑐 مربوطه در حالت LOقابل زمانبندی باشند .به طور مشابه،
در حالت ، HIوظايف HIنیز بايد با 𝑂𝐿𝑖𝑐 مربوطه قابل زمانبندی باشند .در نتیجه ،دو شرايط زمانبندی
زير با رابطه ( )16و ( )17الزم است بیان شود.
LO
ULO LO
+ UHI 1 رابطه 16
HI
UHI 1 رابطه 17
در ادامه ،الگوريتم جدول 21-3برای زمان بندی وظايف ارائه شده است.
جدول : 21-3الگوریتم برای زمانبندی CAPS
01 start
02 Require: = A B … Z
03 Require: UL
04 for each x do
05 LO LO HI
Compute ULO + UHI and UHI
06 LO LO
if ULO + UHI > 1 then
07 )”Return (“not scheduable
08 HI
else if UHI > 1 then
09 )”Return (“not scheduable
10 ULO 𝐼𝐻UL − U
else if HI
HI
then
UL − ULO
LO ULO
LO
11 U = U + UL
12 Compute x
13 else
14 )"Return (“not schedulable
15 end if
16 end for
17 if U > 1 then
18 )"Return (“not schedulable
19 else
20 )"Return (“schedulable
21 end if
22 end
اگرچه استفاده از ULثابت ساده تر است ،در برخی موارد ،ما میخواهیم مقدار بهینه ULرا برای τx
xمعین پیدا کنیم ،بنابراين چنین زمانبندی میتواند تضمین شود .يک ،DBF (τi , 𝑙) 1حد بااليی
را برای حداکثر تقاضای اجرای وظیفه τiدر هر بازه زمانی طول 1نشان میدهد ،جايیکه تقاضا به
عنوان مقدار کل زمان اجرای مورد نیاز jobها با کل پنجرههای زمانبندی آنها در زمان محاسبه
میشود .ايده DBFها در اين تحقیق به تنظیمات SMPIAبر اساس پارتیشنها و CAPSها گسترش
يافت .برای هر وظیفه ،دو DBFLO ،DBFو ، DBFHIبه ترتیب برای حالتهای کم و زياد ،ساخته
می شوند .در حالی که سیستم در حالت کم بحرانی است ،هر کار τiبه عنوان يک کار پراکنده سنتی
با پارامترهای )Di (LO) ،Ci (LOو Tiرفتار می کند .توجه داشته باشید که از مهلت نسبی )Di (LO
استفاده میکند ،جايیکه Di (LO) = Diاگر Li = LOو Di (LO) <= Di (HI) = Diاگر . Li = HIيک DBF
محکم از چنین وظیفه ای در رابطه 18شناخته میشود [53و 52و.]۴3
رابطه 18
با توجه به شکل 12-3و همچنین همان طور که در [ 52و ] ۴3پیشنهاد شده است ،اول از همه،
وظايف از قسمت های مختلف سیستم به پردازنده مرکزی ارسال میشود.
رابط چک کننده وظیفه تمام کارهای ورودی را پردازش میکند .سپس هر يک از ورودی های LOو
HIچک میشوند .پس از تشخیص وظايف LOيا HIبه آنها برچسب اختصاص داده شد ،و آنها به
صفهای مربوطه ارسال می شوند .هر صف ،پس از دريافت وظايف ،آنها را به رابط مرتبساز ارسال
میکند .مرتب سازی بر اساس رابط اولويت ،وظايف HIرا در باالی جدول قرار میدهد و ساير وظايف
بر اساس اولويت بر روی جدول مرتب میشوند .سپس همه وظايف به SMPIAوارد میشوند و وظايف
الگوريتم بین پارتیشنها توسط توزيع CAPSايجاد میشود و و زمان بندی وظايف انجام میشود.
در حین اجرای موازی وظايف در هر پارتیشن ،تکنیکهای محدود کردن برای وظايف HIو LOنیز
اعمال میشود .سپس ،حساسیت HIبررسی می شود .در اين زمان ،نیازی به زمان پردازش وظايف LO
نیست .يکی از مزايای اصلی روش پیشنهادی نسبت به ساير روشها ،استفاده موثر از زمان برای انجام
کلیه وظايف توسط CPUاست.
/ 70بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
شکل : 12-3فلوچارت روش پیشنهادی مطابق با [ ]39و روشی که در [ ]43 ، 54ارائه شده است.
فصل دوم :روش تحقیق 71 /
با توجه به ايده های ارائه شده در اين فصل برای حل مشکل گرسنگی وظايف و کمبود منابع کافی،
الگوريتم ( O-SMPIAجدول ) 22-3به شرح زير پیشنهاد شده است:
جدول : 22-3الگوریتم روش پیشنهادی O-SMPIA
01 start
02 )Function My_Approach_starvation (Tasks T
03 {
04 HI_Queue = null
05 LO_Queue = null
06 )for i=1 to Count (T
07 {
08 )if (Type (T[i]) == HI
09 )]HI_Queue.Add (T[i
10 else
11 )]LO_Queue.Add (T[i
12 }
13 )List <Sorted_Tasks>= Sort_By_Priority (HI_Queue, LO_Queue
14 )pc =Partitioning_CPU_Caps (PartitionCount
15 )SchedulingByEDF-VD (pc
16 for i=1 to Pc
17 {
18 )]Set_Bounding (pc[HI, LO
19 }
20 }
21 end
بنابراين ،يکی از مزايای مهم روش O-SMPIAاين است که اولويت بندی وظايف و زمانبندی آنها با
استفاده از ماشین های مجازی يک روش برای حل مشکل گرسنگی است .همان طور که در اين بخش
توضیح داده شد ،روش O-SMPIAبر اساس اولويتبندی وظايف است .با اولويت بندی وظايف،
زمانبندی تغییر می کند ،که باعث می شود انتخاب ماشین مجازی مورد نظر با استفاده از الگوريتم
Greedyانجام شود .الگوريتم گريدی ،بر اساس محاسبه واريانس و HIو وظايف ،LOماشین مجازی
قابل قبول را انتخاب میکند .بنابراين ،بهترين ماشین مجازی ابتدا با توجه به الگوريتم Max-Minيا
Min-Minانتخاب می شود .سپس ،وظايف با اولويت باالتر اجرا میشوند .در SMPIAو ،O-SMPIAتمام
فرآيندهای ايجاد شده به يک گره ارسال می شوند .در نتیجه ،اولین ماشین تمام بار را خواهد داشت،
در حالی که هیچ وظیفهای به ماشینهای ديگر ارسال نمیشود .روش کار SMPIAو O-SMPIAدر
شکل 13-3نشان داده شده است.
/ 72بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
برای اجرای موازی آماده میشود [ MPICH-3.0.4 .]39با استفاده از مکانیزم چند منظوره 1اجرا
می شود ،يعنی يک مدير فرآيند که قادر به اجرای برنامه موازی روی چندين ماشین است .عالوه بر
اين ،ارتباط بین تمام فرايندهای راه اندازی شده برای تبادل داده را فراهم میکند MPD .در تمام
گره های شرکت کننده در خوشه شروع میشود MPD .با استفاده از ،mpdbootخود را روی تمام
گره های خوشه اجرا میکند .پیکربندی خوشههای MPDدارای توپولوژی حلقه است که در آن هر
گره به گره بعدی متصل میشود و بنابراين آخرين گره به اولین متصل میشود .هنگامی که يک برنامه
موازی MPI_Comm_spawnرا فراخوانی می کند ،بدون تعیین محل اجرای فرآيند تازه ايجاد شده از
طريق پارامتر ] MPD ،[mpi infoمدير فرآيند فرآيندهای جديد ايجاد شده را در گره بعدی حلقه MPD
شروع می کند .برای فرآيندهای تازه ايجاد شده ،پیش فرض اين است که هر بار الگوريتم RRرا از رتبه
( )0شروع کنید.
بنابراين ،ايجاد فرايندها با استفاده از MPI_Comm_spawnدو سناريو دارد:
( )1اولین سناريو زمانی اتفاق میافتد که از يک تابع MPI_Comm_spawnبرای ايجاد فرآيندهای
متعدد با استفاده از پارامتر ] [Maxprocاستفاده کنید .از الگوريتم های حريص برای توزيع فرايندها
از رتبه ( )0پیروی میکند ،و اين بار را به طور مساوی توزيع میکند.
( ) 2هنگامی که تابع MPI_Comm_spawnبارها فراخوانی می شود ،سناريوی دوم دچار مشکل مهمی
میشود .به عنوان مثال ،هنگام فراخوانی تابع به صورت مکرر در يک حلقه ،يا هنگام فراخوانی بازگشتی
برای اين تابع ،در هر دو حالت ،هر فراخوانی اين تابع هر بار فرآيند جديد را به رتبه اول ارسال میکند.
در اين حالت ،تمام فرآيندهای ايجاد شده به يک گره ،اولین ماشین ارسال میشود .در نتیجه ،اولین
ماشین کل بار را خواهد داشت ،در حالی که هیچ وظیفه ای به ماشین های ديگر ارسال نمیشود.
همان طور که در باال ذکر شد ،تصمیم ارسال وظايف جديد به میزبان در سطح عملکرد گرفته میشود.
در هر فراخوانی به اين تابع ،تسلیم وظايف بر اساس الگوريتمهای حريص شروع میشود از اولین
میزبان خوشهها مستقل از MPI_Comm_spawnکه قبالً نامگذاری شده بود .اين بار نامتعادل به دلیل
عدم تمرکز در تصمیمگیری MPI_Comm_spawnدر مورد ارسال فرايند تولید مجدد جديد به میزبان
اتفاق میافتد ،زيرا MPI-2هیچ راهی برای زمانبندی ارائه نمیدهد [ 51و .]۴1
خالصه
در اين فصل ،روشهای FSMPIA ، SMPIAو O-SMPIAدر متلب پیاده سازی و شبیه سازی شدند.
فازهای اساسی SMPIAتشريح شدند .داليل استفاده از روشهای گريدیPSO ،Min-Min ،Max-Min ،
و GAبیان شد SMPIA .بر الگوريتمهای فوق اعمال شد ،از الگوريتم FKMبرای خوشه بندی در پايگاه
داده استفاده شد .ماتريسهای گسسته ،داده های آموزش و آزمايش را ذخیره میکنند .با آموزش
دستگاه از طريق روش فازی ،الگويی از اين دستگاه استنباط می شود .در آنتروپی فازی ،درجه عضويت
با مجموع درجه عضويت کلیه مقادير عملکرد تابع هدف در کلیه نمونهها تقسیم میشود .عملکرد
""Test_Fuzzyپیش بینی پاسخ را براساس دادههای آموزش با استفاده از روش FDTفرا میگیرد .با
تطبیق ماتريس آزمايش با الگوی بدست آمده ،نتیجه پیش بینی شده نمايش داده میشود FKM .با
شبیهسازی در محیط متلب ارزيابی شد .همچنین م دل گرسنگی وظايف براساس O-SMPPIAارائه
شد.
فصل سوم :
تجزیه و تحلیل نتایج و ارزیابی
یافتههایتحقیق
/ 126بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
مقدمه
در اين فصل روشهای پیشنهادی را با يکديگر مقايسه و نتايج را ارائه میدهیم ،اين روشها از لحاظ
افزايش بهره وری و کاهش حداکثر زمان اجرای سرويس ها و زمان اتمام بهبود يافتند .براى مقايسه
روشهای پیشنهادی ابتدا اجزا و پارامترهای شبیه سازی و معیارهای ارزيابی معرفی میگردند ،سپس
نتايج شبیهسازى و ارزيابی عملکرد روشهای پیشنهادی ارائه میگردد.
.1در اينجا به معنای کار يا کارهايی است که به ماشینهای مجازی تخصیص داده میشود.
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 127 /
میتواند فعالیتهايی مانند پیکربندی برنامههای کاربردی و ايجاد وضعیتهای مختلف را انجام دهد.
(:SimCloud )2
اين اليه برای مدلسازی و شبیهسازی محیطهای مراکز داده مبتنی بر ابر شبیهسازی شده میباشد
که شامل ساختار رابطهای کاربر ( ،CloudLetماشینهای مجازی) ،اجرای کارها و مديريت ماشین های
مجازی میباشد .همچنین موضوعات بنیادی مانند نگهداری از میزبانها ،مديريت برنامههای اجرايی و
نظارت بر سیستمهای پويا نیز از وظايف اين اليه میباشند .فراهمکنندگان خدمات ابری که میخواهند
کارايی بهتری از سیاستهای اختصاص دادهشده به ماشینهای مجازی داشته باشند ،میتوانند
راهبردهای خود را در اين اليه پیادهسازی نمايند.
( )3موتور شبیهسازی هسته :SimCloud
در واقع عملیات مربوط به SimJavaو GridSimدر اين اليه جمع شدند ،GridSim .اجزای نرمافزاری
سطح باال را برای انواع مختلف زيرساختهای شبکه فراهم میکند SimJava .نیز چارچوب اساسی برای
Sim Cloudمیباشد که عملیات زير را برای سطح باال انجام میدهد:
( ) 1عملیات مربوط به صف و پردازش رويدادها
( ) 2ايجاد اجزای اصلی سیستم
( ) 3ارتباط بین موجوديتها
شبیهسازی روش SMPIAبا داده های واقعی يک محیط همگن انجام شد 201535 .رکورد معامالت
و مناقصههای مخابرات ايران از سال 2011تا 2017جمع آوری شده است .شبیهسازی در متلب
انجام شد .اجرای برنامه روی يک سیستم با ويژگیهای زير انجام شده است CPU 1.83 :گیگاهرتز ،
. Core i7 4 GB RAM.پارامترهای شبیهسازی و جزئیات آنها در جدول ۴-1و جدول 2-۴نشان
داده شده است.
جدول :1-4پارامترهای شبیه سازی
Data Server CPU CPU Freq Memory BandWidth VM Flow ID
Center ID ID )(Number )(HZ )(MB )(Mb/S ID
1 1 4 1000 2000 100 12 12
1 2 2 2000 2000 50 9 9
1 3 1 1000 4000 100 9 9
1 4 4 1200 1000 100 3 3
1 5 2 1000 1000 100 9 9
1 6 1 1000 2000 100 6 6
1 7 4 1200 2000 100 6 6
2 8 2 1800 2000 50 9 9
2 9 2 2000 1000 50 3 3
2 10 2 1800 4000 20 6 6
2 11 2 1000 1000 50 6 6
/ 128بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
ارزیابی SMPIA
Max-Minو ] Min-Min [21و همچنین الگوريتم های گريدی [ ]22بطور گسترده و موفقیت آمیز
برای نگاشت وظايف مستقل بر روی منابع در سیستمهای محاسباتی مورد استفاده قرار گرفتند .آنها
به ترتیب دارای ) [21] O (N2 * Mو ) [22] O (M * Nبودند که در آن Nتعداد کارها را نشان
میدهد و Mتعداد پردازندهها را نشان میدهد.
به منظور ارزيابی روش SMPIAدر سیستم توزيع شده ،از پارامترهای کارايی (زمان اجرا ،زمان اتمام
و بهره برداری منابع) استفاده شد .همچنین ،برای ارزيابی روش SMPIAدر سیستم توزيع شده ،از
الگوريتم های گريدی GA ، Min-Min ،Max-Min ،و PSOاستفاده شد .عملکرد روش SMPIAبا
محاسبه عملکرد مجموع زم ان اجرا ،زمان اتمام و پارامتر استفاده از منابع در SMPIAو Non-SMPIA
مورد بررسی قرار گرفت .فرض بر اين بود که هر دو پارامتر تعداد رکورد و تعداد ماشینهای مجازی
ثابت است .اين آزمايشات بر روی دادههای واقعی در يک محیط همگن شامل ۴مرکز داده 22 ،سرور
132 ،ماشینهای مجازی 132 ،جريان و 32۴تجهیزات کامپیوتری و ارتباطی انجام شده است .در
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 129 /
اين فرايند ،زمان اتمام به عنوان حداکثر زمان اتمام و زمان اجرا به عنوان مجموع زمان اجرا محاسبه
میشود .برای محاسبه میانگین پارامترها ،برنامهها حداقل 50بار در يک سیستم با مشخصات يکسان
اجرا شدند .سرانجام ،میانگین مقادير ثبت شد.
برای اين منظور ،سوابق 201535رکورد در مناقصهها و معامالت شرکت مخابرات ايران از سال 2011
تا 2017جمعآوری شده است .شبیه سازی و اجرا در متلب مورد استفاده قرار گرفته است.
ابتدا Non-SMPIA ،پیادهسازی شده بود .برای ارزيابی عملکرد SMPIAدر محیط ابری الگوريتمهای
گريدی GA ، Min-Min ،Max-Min ،و ، PSOبرای هر دو روش SMPIAو Non-SMPIAاستفاده شد.
دو رويکرد به موازات يکديگر اجرا شدند .هر نوع تغییر در وضعیت جريان قبلی در ماشینهای مجازی
قبلی (تغییرات در بار و غیره) ،جريان بعدی AVMبعدی را تحت تأثیر قرار میدهد.
رابطه 1
/ 130بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
شکل :1-4تأثیر 132حجم بار کاری روی مجموع زمان اجرا با Non-SMPIAوSMPIA
Tijkزمان صرف شده توسط اجرای جريان Kاز تراکنش jدر VMiاست ،در غیر اين صورت ،صفر است
[ CCi .]22پارامتری است که CCفلو Kرا در VMiتعیین میکند ESi .پارامتری است که ESجريان K
را در VMiتعیین میکند.
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 131 /
رابطه 3
رابطه 4
CPiظرفیت پردازش شده در VMiاست TPCi ،به کل ظرفیت پردازش VMiاشاره دارد MCi ،نشان
دهنده ظرفیت حافظه MCUi ،VMiبه معنی ظرفیت حافظه مورد استفاده در VMiاست.
/ 132بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
شکل :3-4تاثیر 132حجم بار کاری روی بهره برداری منابع با Non-SMPIAوSMPIA
Non-SMPIA
MS
ما فرضیات زير را با استفاده از رابطههای 10 ،9 ، 8 ،7 ،6 ، 5و 11فصل سوم در نظر گرفتیم:
رابطه 5
)L (VMtiبه اين معنی است که بار روی VMiمیتواند به صورت تعداد وظايف در زمان tمحاسبه شود
) ، N (T, tتعداد وظايف در زمان tدر صف سرويس VMiاستS (VMti) ،نشان میدهد نرخ سرويس
VMiدر زمان tاست.
رابطه 6
Penumiتعداد پردازنده های VMiاست Pemipsi ،میلیون دستور در ثانیه از همه پردازندههای VMi
است VMbwi ،قابلیت پهنای باند ارتباطی VMiاست.
رابطه 7
رابطه 8
Lبارهايی است که بر روی همه ماشینهای مجازی در مرکز داده اعمال میشود.
رابطه 9
رابطه 10
رابطه 11
Uنشان می دهد حداکثر زمان اتمام به عنوان حداکثر کل زمان تکمیل همه گردش کارها تعريف شده
است.
/ 134بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
الگوريتمهای هوشمند PSOو هوشمند GAدر تعدادی از گردش کار بیشتر مشهود بود .زيرا در SMPIA
،هنگامی که يک AVMاجرای جريان را قبول میکند ،مجدداً درخواست اجرای ساير AVMها را
خواهد داشت .اثر تغییر انتخاب AVMها در تغییرات زمان اتمام با الگوريتم های هوشمند PSOو
هوشمند GAافزايش يافته است .با انتخاب هوشمند AVMدر ،VMPIBسرعت انجام وظايف بهبود
يافته و میانگین پارامترهای زمان اتمام و مجموع زمان اجرا برای گردش کار به حداقل رسیده است.
الگوريتم PSOبه دلیل همگرايی زودرس و اجرای سريع کار ايی بیشتری نسبت به هیوريستیکها و
GAدارد [ 29و 28و 27و .]26اما در ،SMPIAبا توجه به طبقهبندی جريان های جاری ،انتخاب ماتريس
اختصاص با مقادير مناسب و يک تابع هزينه موثر ،يک پاسخ به اندازه کافی خوب يافت شد .الگوريتم
های GAو PSOبا SMPIAپس از 10و 7بار تکرار به جواب رسیدند .محاسبه پیچیدگی زمانی
الگوريتمها ،تابع هزينه SMPIAو مقايسه نتايج شبیه سازی نشان داد که عملکرد الگوريتم PSO
هوشمند در اين کتاب از ساير الگوريتم های ديگر بهتر است .در نتیجه ،الگوريتم هوشمند PSOبرای
اختصاص کار بعدی انتخاب شد .مقايسه مجموع زمان اجرا و مدت زمان اجرای الگوريتمها نشان داد
که مجموع زمان اجرا و زمان اتمام با SMPIAدر مقايسه با Non-SMPIAکاهش يافته است .اجرای
روش پیشنهادی باعث کاهش مجموع زمان اجرا از 1۴3896ثانیه در الگوريتم PSOبه 63897ثانیه
( )55.59٪شد .عالوه بر اين ،زمان اتمام از 17563ثانیه در الگوريتم PSOبه 8587ثانیه ()51.10
کاهش يافته است .همچنین ،مدت زمان اتمام در GAاز 20378ثانیه به 9000ثانیه ()55.83٪
کاهش يافت .عالوه بر اين ،میزان استفاده از منابع در الگوريتم PSOاز 76.79به )1۴.26( 26. 91.05
اف زايش يافته است .بر اين اساس ،اجرای يک گردش کار به صورت هدفمند بهبود يافته است.
معیارهای محاسبات ابری (زمان اجرا و زمان اتمام) و ارائه دهندگان ابر (استفاده از منابع) به عنوان
بخشی از بهینه سازی چند هدفه محیط های واقعی در نظر گرفته شدند .با توجه به نتايج به دست
آمده با SMPIAدر سه بخش ،به ويژه با الگوريتم پیشنهادی ،استفاده بهینه از منابع برای بهبود کارايی
سیستم فراهم شده است .مقايسه نتايج حاکی از عملکرد چشمگیر روش پیشنهادی در جهت بهبود
کارايی و توزيع مناسب بار در ابر است .در نتیجه SMPIAبهتر از Non-SMPIAبود.
/ 136بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
حداکثر درصد پیشرفت بهره برداری منابع در 132بارکاری ابر در الگوريتم هوشمند GAفازی ٪3
است اما FSMPIAعملکرد بهتری نسبت به Non-FSMPIAدارد .ساير جزئیات در جدول ۴-۴ارائه
شده است.
/ 140بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
شکل : 9-4تأثیر مجموع زمان اجرا بر بهره برداری منابع با FSMPIAو Non-FSMPIA
اساس میانگین مقادير به دست آمده پس از 50بار اجرای برنامه محاسبه شد .پارامتر بهرهبرداری
منابع میزان بهرهبرداری منابع و میزان درگیری منابع سخت افزاری را در ابر به درصد نشان میدهد.
درصد باال و پايین در اين تحقیق نشانگر کیفیت باال يا پايین آن نیست .در روش پیشنهادی ،منابع
سريعتر شدند .تخصیص منابع با حداکثر میزان درگیری و بهره برداری منابع کمتر از 9درصد انجام
شد .اين مطالعه با نتايج [ 23و 20و 19و 18و 15و 1۴و13و 6و ]1مطابقت دارد ،و از نقض SLAو افت QoS
جلوگیری میکند.
TET
36338 36716 36157 36051 39035
Non-FSMPIA
MS
16383 16043 15819 22624 17967
RU
27.56 26.39 25.45% 24.43% 23.47%
TET
16217 32317 16240 16187 19739
FSMPIA
MS
7105 1855 7398 6913 9003
)Improvement (%
TET
N
𝑖𝑇𝐸 ∑ = LoadVMj
𝑖=1
(a) Throughput
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 145 /
Throughput ()a
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 147 /
Min-Min جدول :4-5مقایسه عملکرد SMPIAو Non-SMPIAبر اساس گریدی Max-Min ،و
Non-SMPIA SMPIA )Improvement (%
Data set
TET MS RU% TET MS RU% TET% MS% RU%
MCITI 155445 19668 74.72 75523 12027 87 51.10 38.84 12.28
MCITI 143172 17976 75.72 76008 7919 87.52 49.91 55.94 11.80
MCITI 143517 18921 76.87 63430 8884 88.73 55.80 53.04 11.86
در کتاب حاضر ،يک ويژگی مهم بر اساس روش اولويتبندی به SMPIAاضافه شد ،که عملکرد سیستم
را تا حد قابل قبولی بهبود میبخشد و منجر به انجام کارها با اولويت باالتر میشود که بايد زودتر اجرا
شوند FSMPIA ،SMPIA .و O-SMPIAدر محیط متلب شبیهسازی شدند .با دستهبندی جريان های
جاری ،انتخاب ماتر يس اختصاص داده شده با مقادير مناسب ،با استفاده از يک تابع مناسب هدف در
GAو ، PSOپاسخ به اندازه کافی خوب يافت شد .نتايج با دادههای واقعی محیط نشان داد که FSMPIA
در سیستم ابری کارآمدتر از Non-FSMPIAاست .مقايسه معیارهای عملکرد نشان میدهد که
PSO_FSMPIAاز ساير الگوريتمهای فازی اين تحقیق بهتر است.
ما از روشهای مختلفی مانند O-SMPIA ،FKM ،PSO ،GAبرای بهینهسازی عملکرد و کوتاه کردن
زمان اتمام و زمان اجرا استفاده کرديم .در اين کار O-SMPIA ،ارائه شده است که بر اساس اولويتبندی
وظايف است O-SMPIA .با در نظرگرفتن فوريت زمان اجرا مشکل گرسنگی کار و کمبود منابع را
برطرف کرده است .همچنین باعث افزايش گذردهی سیستم شده است .وظايف HIبه بهترين منبع
انتخابی موجود اختصاص داده شده است .در اين کتاب ،الگوريتم EDF-VDبرای CAPSاستفاده شد.
EDF-VDبا O-SMPIAترکیب شد که منجر به بهبود عملکرد سیستم شد O-SMPIA .به کوتاه کردن
/ 152بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
زمان اجرا ،زمان پاسخدهی و زمان تأخیر کمک میکند و توان عملیاتی (گذردهی) سیستم را افزايش
داده است .نتايج با دادههای واقعی محیط نشان داد که O-SMPIAدر سیستم ابری کارآمدتر از SMPIA
و FSMPIAاست .مق ايسه معیارهای عملکرد نشان میدهد که Greedyاز نظر تأخیر ،توان عملیاتی
(گذردهی) و زمان پاسخگويی از Min-Min ،Max-Minبهتر است .همچنین Max-Min ،از نظر زمان
اجرا بهتر از Greedyو Min-Minاست .اين نتايج نشان دهنده اثربخشی O-SMPIAبر زمان مصرف
منابع ابری و بهره برداری منابع است .نتايج شبیهسازی نشان داده است که O-SMPIAتوانست با
انتخاب سريع ماشین های مجازی و پاسخ گويی به تعیین وظايف برای ماشینهای مجازی انتخاب شده
در زمان مناسب ،گذردهی سیستم را افزايش دهد .تأثیر و گذردهی O-SMPIAبا تغییر در تعداد jobها
واضح تر شد و با زياد شدن تعداد بارهای کاری ابر افزايش میيابد .يکی از مزايای O-SMPIAنسبت
به ساير روش ها استفاده موثرتر از زمان شما برای انجام کلیه وظايف توسط CPUاست.
در اين کار O-SMPIAارائه شد که بر اساس اولويت بندی وظايف طراحی شده بود O-SMPIA .موفق
شد با در نظر گرفتن فوريت زمان اجرا ،مشکل گرسنگی وظايف و کمبود منابع را کاهش دهد .همچنین
باعث افزايش گذردهی سیستم شد .وظايف HIبه بهترين منبع انتخابی موجود اختصاص داده شد .در
اين کتاب ،الگوريتم EDF-VDبرای نسخه ثابت CAPSها استفاده شد .الگوريتم EDF-VDبا O-SMPIA
ترکیب شد که باعث بهبود عملکرد سیستم شد O-SMPIA .زمان اجرا ،زمان پاسخگويی و زمان تأخیر
را کوتاه کرده و درعین حال ،توان عملیاتی (گذردهی) را افزايش میدهد O-SMPIA .در محیط متلب
شبیه سازی شد .بهترين حالت گريدی بود ،که در آن با ، O-SMPIAتأخیر ،زمان پاسخگويی و گذردهی
بهبود يافته بود .نتايج با دادههای واقعی محیط نشان داد که O-SMPIAدر سیستم ابری کارآمدتر از
SMPIAاست .مقايسه معیارهای عملکرد نشان داد که الگوريتم Greedyاز نظر تاخیر ،گذردهی و
زمان پاسخ گويی بهتر از الگوريتم های Max-Minو Min-Minاست .همچنین با ارائه يک روش با دقت
و کارايی باال بهینه سازی گردش کار در محیط ابر بهبود يافت ،بطوريکه با کاهش میانگین زمان اتمام،
زمان تأخیر ،زمان ارتباطات MPIدر مقايسه با روشها و الگوريتمهای مورد بررسی کاهش يافت .ضمن ًا
اطمینان از کارايی با محاسبه کارايی حاصل شده و کارايی کلی الگوريتم پیشنهادی (گذردهی) بدست
آمده است .زمان مصرف منابع و میزان درگیری نیز کاهش يافت.
خالصه
در اين فصل الگوريتم FSMPIA ،SMPIAو O-SMPIAمورد بررسی قرار گرفته است .شبیه سازی سه
روش با الگوريتمهای گريدی GA ، Min-Min ، Max-Min ،و PSOانجام شد .توابع بکار رفته در ارزيابی
کارايی پروتکل پیشنهادی شبیه سازی و تشريح گرديد .ورودیها مشخص گرديد و خروجیها نیز با
يکديگر مقايسه شدند .نتايج حاکی از آن است که الگوريتم پیشنهادی O-SMPIAاز لحاظ زمان اجرا
در حد مورد قبول نسبت به الگوريتمهای مشابه میباشد .کارايی آن بهتر از الگوريتمها و روشهای
مورد بحث میباشد.
فصل سوم :تجزیه و تحلیل نتایج و ارزیابی یافتههایتحقیق 127 /
نتیجهگیری
/ 126بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
محاسبات ابری معیار جديدی برای توسعه برنامه های کاربردی سازمانی بوده که به طور مؤثر توانسته
به تسهیل اجرای جريان کار در سیستم مديريت فرايندهای کسب و کار ياری برساند .تکنولوژی جريان
کار در فرايندهای کسب و کار معاملهها و مناقصه های مخابرات قادر است تا نیازهای جديد شرکتها
و سازمانها را مديريت نموده و میزان بهره وری آنها را به طور رضايت بخشی بهبود بخشد.
با انتقال جريانهای کاری معاملهها و مناقصه ها به محیط محاسبات ابری ،سازمان مخابرات را به
استفاده از سرويس های مختلف ابر به منظور تسهیل اجرای جريان کاری شان قادر نموده است .بنابراين
بهینهسازی کارآمد جريانهای کاری مختلف ،ماشین های مجازی و اجرای جريان کاری بر روی
ماشینهای مجازی مختلف و مراکز داده همچنان میتواند چالش برانگیز باشد.
در اين کتاب هدف اصلی بهینه سازی چند هدفه وظايف گردش کار در سیستمهای رايانش ابری (زمان
بندی وظايف) ،حل مشکل گرسنگی وظايف و منابع و تخصیص بهینه منابع به وظايف با استفاده از
MPIهوشمند و روش فازی MPIهوشمند و O-SMPIAمحقق گرديد .در اين فصل ابتدا مزايا و معايب
روش پیشنهادی و سپس پیشنهادها و در نهايت محدوديتهای تحقیق بررسی میشود.
هوشمند AVMها و محاسبه رتبه ماشینهای پیشین ،ماشین جانشین و AVMهای بعدی ،حجم بار
کاری به درستی روی منابع توزيع شده و بازدهی عملیاتی سیستم افزايش يافته است .يک مدل
زمانبندی کارآمد با توجه به الگوريتم چرخ رولت و بر اساس رتبهبندی منابع و تعیین رتبه هر AVM
پیشنهاد شده است .ضريب بهینه سازی (حداقل زمان اتمام) باعث توزيع مناسب بارها بر روی منابع و
بهبود عملکرد سیستم از طريق تغییر انتخاب AVMها شده است .عالوه بر اين ،زمان مصرف منابع ابر
را کاهش می دهد ،که به طور غیرمستقیم رضايت مصرف کنندگان و منابع ابر را فراهم میکند .ارزيابی
معیارهای عملکرد نشان داد که تأخیر و زمان پاسخ الگوريتم گريدی نسبت به بقیه کمتر است .در
همان زمان ،زمان اجرای Max-Minکمتر از بقیه بود و گذردهی گريدی بیشتر بود.
مزايای روش FSMPIA ،SMPIAو O-SMPIAرا از چند جهت میتوان دسته بندی کرد:
( ) 1دسته اول :به طور کلی نتايج اين تحقیق موجب کاهش بروکراسی اداری ،مصرف کاغذ ،و مراجعات
حضوری میشود.
( )2دسته دوم :استفاده از ابر و SMPIAو ارتباط مستقیم جريان های کاری موجب کاهش زمان پاسخ
سیستم و افزايش بهره وری کلی سیستم و در نتیجه رضايت بیشتر کاربران شده و از طرفی افزايش
بهره برداری ماشینهای مجازی و سرورها میشود.
( )3دسته سوم :اين کار موجب مديريت کارآمد گردشهای کاری ،تسهیل اجرای گردشهای کاری،
پشتیبانی اجرای گردش کاری و انعطاف پذيری در سیستمهای رايانش ابری با مقیاس پذيری مطلوب
می گردد .کاربران حس و تجربه بهتری نسبت به کارکردن با سیستم خواهند داشت .به درخواست های
کاربران (مناقصات و معامالت) زودتر پاسخ داده می شود و کارها (مناقصات و معامالت) زودتر انجام
می شود .موجب کاهش هزينه پردازش تراکنش ،کاهش چرخه فرايندهای کاری ،و افزايش بهره برداری
منابع و کاهش سطح درگیری منابع ،کاهش زمان مصرف منابع می شود .نهايتا رضايت مشتری افزايش
يافته و کارايی سیستم افزايش میيابد.
با توجه به اينکه روش پیشنهادی توانست شش پارامتر را بطور همزمان بهینه سازی نمايد ،ممکن
است سربار شبکه را افزايش دهد که به تصمیم گیری مديريت سیستم بستگی داشته و میتواند در
جهت افزايش کارايی شبکه قابل استفاده باشد.
پیشنهادها
پیشنهادها به سازمان بکارگیرنده
در اين تحقیق با استفاده از روشهای نرم افزاری FSMPIA ،SMPIAو O-SMPIAنشان داده شد که در
مخابرات ايران چنانچه اين کار (محاسبات ابری) انجام شود هزينههای مديريتی و هزينه سحت افزازی
کاهش يافته و میزان بهره برداری منابع بهويژه ماشینهای مجازی افزايش میيابد .همچنین میانگین
/ 128بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از MPIهوشمند :مطالعه موردی
زمان کل پردازش وظايف گردش کار در فرايندهای معاملههای بزرگ و کوچک و مناقصهها کاهش
میيابد .بنابراين در کلیه سازمانها به خصوص در مخابرات ايران هزينههای خريد مراکز داده و سرورها
به میزان قابل توجهی (حداقل 0.1درصد) میتواند کاهش يابد .همچنین با 0.1هزينه همین کارايی
را از مراکز داده و سرورها میتوان انتظار داشت.
محدودیتهای تحقیق
به علت گستردگی جامعه آماری مورد مطالعه در جمعآوری دادههای مورد نیاز معامالت و مناقصات مخابرات
ابتدا مشکالتی به وجود آمده بود که با هماهنگی بخشهای مختلف مخابرات ايران و همکاری مسووالن
زيربط دانشگاه آزاد اسالمی واحد ساری و مکاتبات به عمل آمده خوشبختانه کار به خوبی پیش رفت.
1. Pattern
مطالعه موردی: هوشمندMPI بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از/ 126
فهرست منابع
[1] Ma, T. Chu, Y. Zhao, L. and Ankhbayar, O. (2014). Resource Allocation and
Scheduling in Cloud Computing: Policy and Algorithm. IETE Technical Review, Vol.
31, No. 1, pp. 4–16, doi: 10.1080/02564602.2014.890837.
[2] Gomez-Folgar, F. Valin, R. Garc´ıa-Loureiro, A. J. Pena, T. F. Zablah, J. I. and
Ferreiro, R. V. (2012). Cloud Computing for Teaching and Learning MPI with
Improved Network Communications. In: Mikroyannidis, A., Hern´andez
Rizzardini, R., Schmitz, H.-C. (Eds.): Workshop on Cloud Education Environments
(WCLOUD 2012). CEUR Workshop Proceedings, Vol. 945, vol. 945, pp. 22–27.
[3] Gomez-Folgar, F. Indalecio, G. Seoane, N. Pena, T. F. and Garc´ıa-Loureiro, A.
J. (2018). MPI-Performance-Aware-Reallocation: Method to Optimize the
Mapping of Processes Applied to a Cloud Infrastructure. Computing, Vol. 100,
No. 2, pp. 211–226, doi: 10.1007/s00607-017-0573-6.
[4] Esp´ınola, L. Franco, D. and Luque, E. (2017). MCM: A New MPI
Communication Management for Cloud Environments. Procedia Computer
Science, Vol. 108, pp. 2303–2307, doi: 10.1016/j.procs.2017.05.069.
[5] Zhuang, W. and Huang, L. (2019). Overview of Cloud Computing Resource
Allocation and Management Technology. 2019 6th International Conference on
Systems and Informatics (ICSAI), Shanghai, China, pp. 713–718, doi:
10.1109/icsai48974.2019.9010101.
[6] Gong, Y. He, B. and Zhong, J. (2015). Network Performance Aware MPI
Collective Communication Operations in the Cloud. IEEE Transactions on Parallel
and Distributed Systems, Vol. 26, No. 11, pp. 3079–3089, doi:
10.1109/tpds.2013.96.
[7] He, Q. Zhou, S. Kobler, B. Duffy, D. and McGlynn, T. (2010). Case Study for
Running HPC Applications in Public Clouds. Proceedings of the 19th ACM
International Symposium on High Performance Distributed Computing (HPDC
’10), pp. 395–401, doi: 10.1145/1851476.1851535.
[8] Amiri, M. and Mohammad-Khanli, L. (2017). Survey on Prediction Models of
Applications for Resources Provisioning in Cloud. Journal of Network and
Computer Applications, Vol. 82, pp. 93–113, doi: 10.1016/j.jnca.2017.01.016.
[9] Kumar, K. D. and Umamaheswari, E. (2018). Resource Provisioning in Cloud
Computing Using Prediction Models: A Survey. International Journal of Pure and
Applied Mathematics, Vol. 119, No. 9, pp. 333–342,
https://acadpubl.eu/jsi/2018-119-9/articles/9/32.pdf.
[10] Rad, P. Boppana, R. V. Lama, P. Berman, G. and Jamshidi, M. (2015). Low-
Latency Software Defined Network for High Performance Clouds. 2015 10th
System of Systems Engineering Conference (SoSE), San Antonio, TX, USA, IEEE,
pp. 486–491, doi: 10.1109/sysose.2015.7151909.
127 / فهرست منابع
Strategy in Cloud Computing. The Open Cybernetics and Systemics Journal, Vol.
8, No. 1, pp. 111–114, doi: 10.2174/1874110x01408010111.
[31] Chen, H. Wang, F. Helian, N. and Akanmu, G. (2013). User-Priority Guided
Min- Min Scheduling Algorithm for Load Balancing in Cloud Computing. 2013
National Conference on Parallel Computing Technologies (PARCOMPTECH), IEEE,
pp. 1–8, doi: 10.1109/parcomptech.2013.6621389.
[32] Liang, B. Dong, X. Wang, Y. and Zhang, X. (2020). A Low-Power Task
Scheduling Algorithm for Heterogeneous Cloud Computing. The Journal of
Supercomputing, Vol. 76, No. 9, pp. 7290–7314, doi: 10.1007/s11227-020-
03163-8.
[33] Wu, M. Y. Shu, W. and Zhang, H. (2000). Segmented Min-Min: A Static
Mapping Algorithm for Meta-Tasks on Heterogeneous Computing Systems.
Proceedings of 9th Heterogeneous Computing Workshop (HCW 2000), IEEE, pp.
375–385, doi: 10.1109/hcw.2000.843759.
[34] Hung, T. C. Hieu, L. N. Hy, P. T. and Phi, N. X. (2019). MMSIA: Improved Max-
Min Scheduling Algorithm for Load Balancing on Cloud Computing. Proceedings
of the 3rd International Conference on Machine Learning and Soft Computing
(ICMLSC 2019), pp. 60–64, doi: 10.1145/3310986.3311017.
[35] Zhang, J. Zhai, J. Chen, W. and Zheng, W. (2009). Process Mapping for MPI
Collective Communications. In: Sips, H., Epema, D., Lin, H. X. (Eds.): Euro-Par 2009
Parallel Processing (Euro-Par 2009). Springer, Berlin, Heidelberg, Lecture Notes
in Computer Science, Vol. 5704, pp. 81–92, doi: 10.1007/978-3-642-03869-3 11.
[36] Arabnejad, H. and Barbosa, J. (2012). Fairness Resource Sharing for Dynamic
Workflow Scheduling on Heterogeneous Systems. 2012 IEEE 10th International
Symposium on Parallel and Distributed Processing with Applications, pp. 633–
639, doi: 10.1109/ispa.2012.94.
[37] Hsu, C. C. Huang, K.C. and Wang, F. J. (2011). Online Scheduling of Workflow
Applications in Grid Environments. Future Generation Computer Systems, Vol.
27, No. 6, pp. 860–870, doi: 10.1016/j.future.2010.10.015.
[38] Panda, S. K. and Jana, P. K. (2015). Efficient Task Scheduling Algorithms for
Heterogeneous Multi-Cloud Environment. The Journal of Supercomputing, Vol.
71, No. 4, pp. 1505–1533, doi: 10.1007/s11227-014-1376-6.
[39] Mokhtari, M. Bayat, P. and Motameni, H. (2021). Multi-Objective task
scheduling using smart MPI-based cloud resources. Computing and informatics,
vol. 40, no. 1, pp. 104-144.
[40] Konjaang, J. K. and Xu, L. (2021). Multi-objective workflow optimization
strategy (MOWOS) for cloud computing. Journal of Cloud Computing, vol. 10, no.
1, pp. 1-19.
[41] Elmougy, S. Sarhan, S. and Joundy, M. (2017). A novel hybrid of shortest job
first and round robin with dynamic variable quantum time task scheduling
مطالعه موردی: هوشمندMPI بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از/ 130
demand under mixed-criticality EDF. Real-Time Systems, vol. 57, no. 1, pp. 55-94.
[55] Ramanathan, S. and Easwaran, A. (2017). Utilization difference based
partitioned scheduling of mixed-criticality systems. In Design, Automation & Test in
Europe Conference & Exhibition (DATE), Lausanne, Switzerland, IEEE, pp. 238-243.
[56] Zohrati, L. Abadeh, M. N. and Kazemi, E.: Flexible approach to schedule tasks
in cloud-computing environments. IET Software, Vol. 12, No. 6, pp.474-479m
2018.
[57] Al-Arasi, R. A. and Saif, A. (2020). Task scheduling in cloud computing based
on metaheuristic techniques: A review paper. EAI Endorsed Transactions on
Cloud Systems, vol. 6, no. 17.
[58] Jain, R. and Nayyar, A. (2020). A novel homomorphic RASD framework for
secured data access and storage in cloud computing. Open Computer
Science, vol. 10, no. 1, pp. 431-443.
[59] Wei, H. M. Gao, J. Qing, P. Yu, K. Fang, Y. P. (2020). MPI-RCDD: A framework
for MPI runtime communication deadlock detection. J. Comput. Sci. & Technol,
vol. 35, no. 2, pp. 395-411.
[60] Hassanpour, H. and Mokhtari, M. (2009). Proposing a dynamic routing
approach to improve performance of iran data network. World Applied Sciences
Journal 7 (Special Issue of Computer & IT), vol. 7, pp. 01-07.
[61] Arunarani, A. R. Manjula, D. and Sugumaran, V. (2019). Task scheduling
techniques in cloud computing: A literature survey. Future Generation Computer
Systems, vol. 91, pp. 407-415.
[62] Swathy, R. Vinayagasundaram, B. Rajesh, G. Nayyar, A. Abouhawwash, M.
and Abu Elsoud, M. (2020). Game theoretical approach for load balancing using
SGMLB model in cloud environment. PloS one, vol. 15, no. 4, e0231708.
[63] Laghari, A. A. He, H. Shafiq, M. and Khan, A. (2017). Impact of storage of
mobile on quality of experience (QoE) at user level accessing cloud. in 2017 IEEE
9thinternational conference on communication software and networks (ICCSN),
Guangzhou, China, IEEE, pp. 1402-1409.
[64] Blazewicz, J. Ecker, K. H. Pesch, E. Schmidt, G. Sterna, M. (2019). Scheduling
under resource constraints. in Handbook on Scheduling, ed: Springer, Berlin,
Heidelberg, pp. 475-525.
[65] Naisbitt, J. (1982). Megatrends. New York, Warner Books, s. 10.
[66] Fan, W. Bifet, A.: Mining big data: Current status and forecast to the future.
ACM SIGKDD Explorations Newsletter, 14(2), 1—5.2013.
[67] Reinsel, D. Gantz, J. and Rydning J. (2017). Data Age 2025”, IDC White Paper.
[68] Al, S. and Dener, M. (2021). STL-HDL: A new hybrid network intrusion
detection system for imbalanced dataset on big data environment. Computers &
Security, 110, 102435.
مطالعه موردی: هوشمندMPI بهینه سازی گردش کار در سیستمهای رایانش ابری با استفاده از/ 132
1 پیوست
لیست متغیر ها و تعاریف مورد استفاده در این کتاب:1 جدول
Variable Definition
The Other Run Time is the execution time of another VM and its initial value is
ORT
equal to -1, i.e.
The job of Evaluation Individual function is to receive an array called Individual
EI and the execution flows, and calculate how much time Individual needs to
execute, which is the same as the temp time.
EV An Evaluation Value function that calculates maximum run time (makespan).
TRT Temp Run Time.
CPi The Capacity Processed in VMi.
TPCi The Total Processing Capacity of VMi.
MCi The Memory Capacity of VMi.
MCUi The Memory Capacity Used in VMi.
Tijk Time spent by execution flowk of transactionj on VMi ; otherwise, it is zero.
CCi The parameter determining the Computational Cost of flow i.
ESi The parameter determining the Execution Speed of VMi.
L The Loads exerted on all VMs in a data center.
C The Capacity of all VMs in a data center.
C1 The initial loading of the information.
C2 Finding the next transaction.
C3 Finding the execution transactions.
C4 Finding the next flow of the execution transactions.
C5 Calculating the evaluation parameters.
C6 Cloud storage.
C7 Displaying the information and status.
C8 & C9 Fixed numbers in the PSO speed update formula.
ToT T of Tournament.
M The number of time steps.
R The total number of transactions.
v The number of execution transactions in the current time step.
p The number of execution transactions during the current time step.
V The total number of VMs.
D The total number of Data centers.
A function defined, in which VM is assigned to each data center in the Virtuall
φ
MPI Bus.
DC Data center.
F The total of the flows depending on each other.
T The set of t transaction, it was defined as the total of transactions.
Maximum makespan is defined as the maximum total time of completion of all
𝑓
workflows.
133 / فهرست منابع
پیوست 2
دیتاست مناقصهها و معاملههای مخابرات ایران
رکوردها از سال 2011تا 2017از 31استان (منطقه ارتباطات) جمعآوری شده است .مناقصهها به
سه دسته (کلی ،محدود ،رسمیت مرخصی) تقسیم شدند و معامالت به سه دسته (بزرگ ،متوسط ،
کوچک) تقسیم شدند .در اين کتاب ،دادههای مربوط به معاملهها و مناقصهها دارای سوابق 201535
رکورد است .فیلدهای بانک اطالعاتی شامل نام محصول ،قیمت محصول ،کد محصول ،نام پیشنهاد
دهنده ،نوع پرداخت (وجه نقد ،چک تضمین شده) ،کد نوع پرداخت ،نام نوع معامله (مناقصه عمومی،
مناقصه محدود ،ترک مناقصه تشريفات) ،نوع کد معامالت ،ارزش معامالت ،کد ارزش معامالت ،نام
شهر ،کد شهر ،تاريخ معامله ،زمان معامله و غیره .مقادير معامالت بزرگ ،متوسط و کوچک بر اساس
مقادير سالیانه تعیین شده برای نوع معامالت تعیین شده است .برای ارزيابی روش پیشنهادی در
سیستم توزيع شده ،از الگوريتمهای گريدی PSO ،Min-min ،Max-min ،و GAاستفاده شده است.
عملکرد روش پیشنهادی با محاسبه عمل کرد میانگین مجموع زمان اجرا ،میانگین زمان اتمام،
بهره برداری ،تأخیر ،زمان پاسخ ،گذردهی ارزيابی شد .فرض بر اين بود که هر دو پارامتر تعداد سوابق
رکورد و تعداد VMها ثابت بود .اين آزمايشات بر روی دادههای واقعی در يک محیط همگن شامل ۴
مراکز داده 22 ،سرور 132 ،ماشین مجازی 132 ،جريان و 32۴تجهیزات ارتباطی مخابراتی انجام
شده است .شبیهسازی و پیادهسازی در MATLABانجام شد .اين آزمايشات بر روی يک سیستم با
ويژگیهای زير برای ارزيابی کارايی انجام شده است:
CPU 1.83 GHz, Core i7 4GB RAM