خلاصه پایان نامه بررسی الگوریتم های تخصیص مجدد در گرید های محاسباتی و ارائه یک الگوریتم کارا
پایاننامه کارشناسی ارشد در رشتهی
مهندسی کامپیوتر (نرمافزار
چکیده
شبکه های تورین محاسباتی (گرید) زمینهای را فراهم آورده است که بتوان از منابع ناهمگن در نقاط مختلف جغرافیایی برای حل مسائل پیچیده علمی، مهندسی و تجارت استفاده کرد. عملیات زمانبندی نقش کلیدی در عملکرد گرید ایفا میکند. بدلیل پویایی منابع و تخمین نادقیق زمان اجرایی و ... عملیات زمانبندی باید مکانیسم هایی را برای پشتیبانی از تحمل خطا، افزایش بهره وری از منابع و کاهش زمان اتمام کارها استفاده کند، که به آن زمانبندی مجدد گویند. در این پایان نامه دو الگوریتم زمانبندی کارهای مستقل و یک الگوریتم زمانبندی جریان کارها با در نظر گرفتن پویایی محیط ارائه شده که اهداف آنها کاهش زمان اجرا، افزایش بهرهوری از منابع، ایجاد توازن بار و پشتیبانی از تحمل خطا می باشد.
کلید واژه: گرید محاسباتی، زمانبندی، زمانبندی مجدد، جریان کار.
فصل اول
مقدمه
1-1 مقدمه
اصطلاح "گرید" در اواسط دهه 1990 مطرح شده و زیر ساخت محاسبات گرید (محاسبات شبکه) در زمینه علم و مهندسی پیشرفته پیشنهاد شد [1]. ایده اصلی محیط گرید به اشتراک گذاری منابع محاسباتی است. امروزه، اکثر مردم بیشتر از حد نیاز، قدرت محاسباتی بر روی سیستمهای کامپیوتری خود دارند. از این رو کشف منابع محاسباتی توزیع شده در سطح جغرافیایی و استفاده از آنها برای حل برنامههای کاربردی که قدرت محاسباتی بالایی نیاز دارند و باید در مدت زمان معین با هزینه مشخص اجرا شوند، ترویج پیدا کرد. چنین زیر ساخت هایی گرید محاسباتی نامیده می شود، و منجر به محبوبیت حوزهای به نام محاسبات گرید شده است [1].
از اتصال منابع محاسباتی مانند رایانه های شخصی، ایستگاههای کاری، خوشهها، سرویس دهندهها، ابررایانهها و ...، توزیع شده در مناطق مختلف جغرافیایی شبکههای تورین محاسباتی (گرید) پدید آمده است که به عنوان یک سکوی محاسبات برای حل مسائل مقیاس بزرگ در دانشگاه، پژوهش و صنعت مورد استفاده قرار میگیرد[2].
یکی از عملیات اصلی تضمین کنندهی کارایی در شبکه های تورین محاسباتی، تخصیص منابع به کارها میباشد. عملیات تخصیص منابع باید مکانیسمهایی را برای پشتیبانی از تحمل خطا، اطمینان از اجرای حتمی کارها، افزایش بهرهوری از منابع و کاهش زمان اتمام کارها ارائه دهد. زمانبندی در محیط گرید، با توجه به توزیع جغرافیایی منابع و کاربران، نوسانات منابع، الزامات کیفیت سرویس از برنامههای کاربردی و محدودیتهای اعمال شده توسط صاحبان منابع، جزء مسائل NP-complete می باشد[3].
در زمانبندی وظایف مستقل، هدف افزایش عملکرد کل سیستم و در زمانبندی وظایف با وابستگی، هدف کاهش زمان اجرا کارها، بدون نقض محدودیت اولویت آنها میباشد. با کم کردن زمان اجرا کارها، باعث افزایش بهرهوری از منابع شده، در نتیجه بهبود در عملکرد کل سیستم را خواهیم داشت.
در دهه گذشته زمانبندی کارها (وظایف با وابستگی و مستقل) درون محیط گرید توجه بسیاری از محققین را به خود جلب کرده است. به دلیل پویایی محیط گرید، عملیات زمانبندی باید مرتبا با بررسی کردن حالت جاری سیستم، اقدام به بروزرسانی زمانبند خود نماید. عملیات بروزرسانی با رخداد رویدادی در گرید به دلیل تخمین نادقیق زمان اجرایی، اضافه یا حذف شدن منابع، رخ می دهد. در واقع هدف اصلی از اعمال زمانبندی مجدد افزایش بهره وری از منابع، اجرای قطعی و کاهش زمان اتمام کارها می باشد به این صورت که در ابتدا براساس وضعیت جاری منابع و کارها زمانبندی صورت می پذیرد و در صورت رخداد رویدادهای فوق زمانبندی مجدد براساس منابع موجود و وضعیت کارهای باقی مانده صورت می پذیرد.
1-2 ضرورت اجرا
پژوهشهای زیادی بر روی رابطهی بین تخمینهایی که توسط کاربر به سیستم مدیریت منبع میدهد و زمان واقعی اجرای کارها صورت گرفته است و نشان داده شده که تخمینهایی که توسط کاربر فراهم میشوند در اغلب موارد از دقت کافی برخوردار نیستند. دلیل این موضوع را میتوان چنین دانست که در سیستمهای مدیریت منابع محلی، هنگامی که زمان اجرای تخمین زده شده کار به پایان برسد، کار خاتمه مییابد (فسخ میشود)، بنابراین کاربران اصولا زمان اجرای کار را بیش از حد واقعی تخمین می زنند تا از اتمام کامل کار مطمئن باشند. در پژوهشهای مختلفی تأثیر تخمینهای کاربر بر روی کارائی سیستم ارزیابی شده است و نتایج حاکی از آن است که تخمینهای غیرصحیح کاربر باعث کاهش کارائی سیستم میشود. علاوه بر این در مقاله [4] که در سال 2009 ارائه شد، نویسندگان نشان دادند که سیستمهای مدیریت منابع محلی توانایی کنار آمدن و کنترل حجم زیادی از واگذاریها را ندارند. در مقاله]5[ که در سال 2009 ارائه شد تاثیر تغییر پذیری مجموعه کاریها بر روی سیستم مدیریت منابع محلی مورد بررسی قرار گرفت و نتایج نشان داد که این تغییر پذیری باعث تصمیمات زمانبندی بدتر می شود. زمانبندی مجدد سه هدف اساسی را دنبال میکند: افزایش کارایی زمانبند، کاهش زمان اجرایی و ارائه تحمل خطا.
زمانبندی در محیط گرید بدلیل پویایی از دو مرحله تشکیل میشود در مرحله اول زمانبند براساس حالت جاری منابع، و زمان اجرایی تخمینی یک نگاشت از کارها روی منابع را بوجود میآورد. در مرحله دوم با رخداد یک رویداد، زمانبند، زمانبندی مجددی را براساس کارها، منابع و وابستگی های موجود بین کارها، صورت میدهد و نگاشت جدیدی را تولید می کند.
1-3 هدف از اجرای پایان نامه
با توجه به اینکه منابع گرید غیر اختصاصی بوده و تخمینهای نادقیق ارائه شده توسط کاربران در عملکرد گرید تاثیر بسزایی دارد زیرا کارهایی که بین آنها وابستگی داده وجود دارد (داده تولید شده توسط این کار، نیاز کار دیگری جهت شروع میباشد) و اگر در اینجا نتوانیم اجرای قطعی کار را تضمین کنیم (بدلیل خرابی منبع) اجرای کارهای پیشرو نیز امکان پذیر نمیباشد همچنین این تخمینهای نادقیق نیز باعث کاهش کارایی گرید میگردد به همین دلیل نیاز به نظارت بر وضعیت منابع و کارها و اعمال نگاشت جدید (زمانبندی مجدد) با رخداد رویدادی در گرید (تغییری در وضعیت منابع و یا زمان اجرایی کار) میباشد.
اهداف زمانبند و زمانبند مجدد گرید افزایش بهرهوری از منابع، کاهش زمان اتمام آخرین کار، افزایش کارایی، قطعیت در اجرای کارها و ایجاد توازن بار میباشد در این پایان نامه نیز سعی در ارائه یک الگوریتم زمانبند مناسب با توجه به همین اهداف داریم.
1-4 مراحل انجام پایان نامه
برای انجام پایان نامه در ابتدا مفاهیم گرید و مکانیزم زمانبندی و زمانبندی مجدد (تخصیص مجدد) موجود در محیط گرید بررسی شدند و بعد از ارزیابی روشهای موجود، روشی که بهتر بوده است انتخاب و بهبود داده شده است.
1-5 ساختار پایان نامه
در فصل دوم مفاهیم اولیه زمانبندی و گذری بر تحقیقات پیشین را مورد بررسی قرار داده و در فصل سوم الگوریتمهای پیشنهادی در ارائه شده است و در فصل چهارم نتایج حاصل از ارزیابی و مقایسه الگوریتم پیشنهادی آورده شده است.
(تصاویر در فایل اصلی موجود است )
فصل دوم
2- مفاهیم اولیه زمانبندی و مروری بر کارهای گذشته
2-1 مقدمه
در این فصل ابتدا مفاهیم و محدودیتهایی که در گرید وجود دارد را شرح میدهیم. سپس زمانبندی و انواع آن را بررسی میکنیم. در آخر مروری بر کارهای گذشته داریم.
شبکههای تورین محاسباتی (گرید)، یک فن آوری جدید است که با استفاده از زیرساختهای ارتباطی و شبکههای کامپیوتری و نیز با اتصال منابع محاسباتی ناهمگون در فواصل جغرافیایی مختلف، امکان دسترسی به انواع مختلف منابع را از راه دور میدهد[6]. امروزه میتوان با استفاده از این فن آوری، برنامههای کاربردی بسیار پیچیده و بزرگ را که به توان پردازشی بسیار بالا و به حجم عظیمی از دادههای ورودی نیاز دارند در شبکههای گرید اجرا کرد.
شبکههای محاسباتی گرید از لحاظ کاربرد، دارای تقسیم بندیهای متفاوتی میباشند و عبارتند از: گرید اطلاعاتی، گرید محاسباتی و . . . که در هر کدام هدف و نحوهی اختصاص منابع به کاربران متفاوت میباشد.
یکی از چالش های اصلی در گرید های محاسباتی نگاشت کارهای درخواستی کاربر به
منابع با توجه به سیاستهای زمانبندی میباشد. زمانبندی، عمل واگذاری برنامههای کاربردی به منابع محاسباتی به نحوی که نیازمندیهای برنامههای کاربردی مانند: تعداد پردازنده، زمان اجرا و ... تامین گردد.
مسئله زمانبندی جزء مسائلNp-complete می باشد[3] و بیشتر الگوریتمهای ارائه شده اکتشافی میباشد.
یک زمانبند گرید پیوسته کارهای ورودی جدید را دریافت میکند، منابع موجود در دسترس را بررسی میکند و منبع مناسب را با توجه به معیارهایی انتخاب میکند. مفاهیم و محدودیتهایی که در این راستا وجود دارند در ادامه توضیح داده میشوند.
کار : یک برنامه کاربردی است که نیاز به قابلیتهای پردازشی متفاوت (مانند تعداد پردازنده، حافظه، زمان لازم و ....) و محدودیتهای متفاوت داشته باشد. که معمولاً با توضیحات بخصوص کار نشان داده میشود.
منبع : منبع یک مولفه محاسباتی است (یک ابزار یا یک سرویس محاسباتی) که کارها در آن زمانبندی، تخصیص و پردازش میشوند. منابع ویژگیهای بخصوص مانند حافظه، نرم افزار و غیره دارند. پارامترهای مختلفی در مورد منابع مطرح میشود مانند سرعت پردازش و بارکاری که در طی زمان تغییر میکند. علاوه بر آن از آنجایی که منابع میتوانند به محیط های مدیریتی مختلف تعلق داشته باشند، سیاستهای مختلفی روی آنها برای دسترسی و استفاده اعمال میگردند.
دلال منبع : یک برنامه نرم افزاری است که از میانافزارها و سرویسها استفاده میکند تا مدیریت منابع، زمانبندی کارها و کنترل را انجام دهد. دلال منبع بین تولید کننده و مصرف کننده قرار میگیرد[7].
سیستم مدیریت منابع : یک برنامه نرم افزاری است که مجموعهای از منابع را مدیریت میکند به طوری که کارایی سیستم را بهینه کند[8].
تعریف زمانبندی : نگاشتی از کارها به منابع می باشد. یک مساله ی زمانبندی با
مجموعهای از منابع، مجموعهای از کارها، ملاکی برای بهینه بودن، مشخصات محیط و محدودیتهای دیگر تعریف میشود.
سطوح مختلفی برای زمانبندها وجود دارند که عبارتند از زمانبند گرید، زمانبند خوشه و زمانبند محلی. در ادامه توضیح مختصری در مورد آنها آورده شده است.
زمانبندی گرید : یک زمانبند پیشرفته است که با توجه به پویا بودن محیط گرید، هدف آن نگاشت کار به منابع در محیط گرید با اهداف خاص میباشد.
زمانبندی در گرید را میتوان بر مبنای معیارهای مختلفی نظیر کارآیی یا مقیاس پذیری در ساختارهای مختلفی سازماندهی کرد. براساس یک تقسیمبندی کلی سه مدل زمانبندی متمرکز، سلسه مراتبی و توزیع شده وجود دارد[9]:
(تصاویر در فایل اصلی موجود است )
ساختار متمرکز
در مدل متمرکز (شکل 2-1) تمام ماشین های موازی توسط یک زمانبند مرکزی زمانبندی می شوند. اطلاعات وضعیت سیستم های موجود باید توسط زمانبند جمع آوری شود. این مدل با افزایش اندازه گرید محاسباتی مقیاس پذیر نیست و ممکن است منشا تنگنا در بعضی از موارد شود (اگر خطاهای شبکه باعث جدایی زمانبند از منابع شود، دسترسی و عملکرد سیستم تحت تاثیر قرار می گیرد) از مزایای این روش زمانبندی کارایی زیاد آن است، زیرا زمانبند مرکزی تمام اطلاعات منابع موجود را دارد.
در این سناریو کارها به زمانبند مرکزی ارسال میشوند و کارهایی که نمیتوانند به سرعت انجام شوند، بعد از واگذاری در صف کار مرکزی ذخیره میشوند.
این نمونه زمانبندی برای زیر ساختهای گرید سازمانی مناسب میباشد. گرید سازمانی امکان به اشتراک گذاری منابع گوناگون را به منظور بهبود همکاری داخلی و دستیابی به بازدهی بهتر از سرمایه های فناوری اطلاعات، مهیا میسازد. در نتیجه با استفاده از فناوری گرید بهره برداری از منابع موجود در یک شرکت بهتر میشود و سربار اداری کاهش مییابد.
(تصاویر در فایل اصلی موجود است )
در مدل سلسله مراتبی (شکل 2-2) همه کارها به یک زمانبند مرکزی واگذار میشود، در حالی که هر ماشین از یک زمانبند مجزا برای زمانبندی استفاده میکند.
اگر چه این ساختار مشخصات زمانبندی متمرکز و غیر متمرکز را نشان میدهد، از آنجاییکه یک زمانبند مرکزی وجود دارد که کارها به آن واگذار میشوند، به عنوان یک سیستم متمرکز در نظر گرفته میشود.
فهرست پایان نامه بررسی الگوریتم های تخصیص مجدد در گرید های محاسباتی و ارائه یک الگوریتم کارا
فهرست:
- مقدمه ................................................................................................................................. 1
1-1 مقدمه................................................................................................................................................................... 1
1-2 ضرورت اجرا....................................................................................................................................................... 2
1-3 هدف از اجرای پایاننامه.................................................................................................................................. 3
1-4 مراحل انجام پایاننامه...................................................................................................................................... 4
1-5 ساختار پایاننامه........................................................................................................................................ 4
2- مفاهیم اولیه زمانبندی و مروری بر کارهای گذشته.................................................... 5
2-1 مقدمه........................................................................................................................................................... 5
2-2 ساختار متمرکز.......................................................................................................................................... 7
2-3 ساختار غیر متمرکز و یا توزیعی.......................................................................................................... 8
2-4 فرایند زمانبندی گرید و اجزای آن .................................................................................................... 10
2-5 انواع زمانبند ............................................................................................................................................. 11
2-6 انواع کارها ................................................................................................................................................. 12
2-7 نحوهی زمانبندی ..................................................................................................................................... 14
2-8 وظایف فرازمانبند .................................................................................................................................... 14
2-8-1 نگاشت کار ...................................................................................................................................... 15
2-9 گذری بر تحقیقات پیشین .................................................................................................................... 17
2-9-1 مفاهیم اولیه ................................................................................................................................... 17
2-9-2 الگوریتم ETF ................................................................................................................................ 19
2-9-3 الگوریتم Myopic ......................................................................................................................... 19
2-9-4 الگوریتم کمترین کمترین، بیشترین کمترین، حق رای ................................................... 19
2-9-5 الگوریتم HLEFT ........................................................................................................................ 20
2-9-6 الگوریتم hybrid ........................................................................................................................... 20
2-9-7 الگوریتم GRASP ....................................................................................................................... 21
2-9-8 الگوریتم CPOP ........................................................................................................................... 21
2-9-9 الگوریتم PETS ............................................................................................................................. 22
2-9-10 الگوریتم HLEFT با نگاه به جلو .......................................................................................... 23
2-9-11 الگوریتم FTBAR .................................................................................................................... 23
2-9-12 الگوریتم TSB .......................................................................................................................... 24
2-10 جمع بندی ........................................................................................................................................... 24
3- الگوریتمهای پیشنهادی ............................................................................................ 25
3-1 مقدمه ......................................................................................................................................................... 25
3-2 الگوریتم Asuffrage .............................................................................................................................. 27
3-3 الگوریتم MaxSuffrage ....................................................................................................................... 28
3-4 الگوریتم DHLEFT................................................................................................................................ 30
4- نتایج حاصل از ارزیابی و مقایسه الگوریتم های پیشنهادی ....................................... 34
4-1 مقدمه ......................................................................................................................................................... 34
4-2 محک ارزیابی براون.................................................................................................................................. 34
4-3 ارزیابی الگوریتم Asuffrage............................................................................................................... 36
4-4 ارزیابی الگوریتم MaxSuffrage....................................................................................................... 38
4-5 ارزیابی زمانبند الگوریتم پیشنهادی برای جریان کار.................................................................... 40
4-6 ارزیابی الگوریتم DHLEFT.................................................................................................................. 43
4-7 نتیجه گیری و پیشنهادات برای آینده .............................................................................................. 49
5- منابع........................................................................................................................... 50
منبع:
[1] Foster I., Kesselman C. and Tuecke S. (2001), “The Anatomy of the Grid: Enabling Scalable Virtual Organizations”, International Journal of High Performance Computing applications, Vol. 15, No. 3, pp. 200-222.
[2] Lorpunmanee S., Sap M.N., Abdullah A.H. and Chompoo-inwai C. (2007), “An Ant Colony Optimization For Dynamic Job Scheduling In Grid Environment”, International Journal of Computer and Information Science and Engineering, Vol. 3, No. 1, PP. 207-214.
[3] Braun T.D., Siegel H.J., Beck N., Boloni L.L., Maheswaran M., Reuther A.L., Robertson J.P. and Theys M.D., Yao B. (2001), “A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems”, Journal of Parallel and Distributed Computing, Vol. 61, No. 6,PP. 810-837.
[4] Sonmez O., Yigitbasi N., Iosup A., and Epema D. (2009), “Trace-Based Evaluation of Job Runtime and Queue Wait Time Predictions in Grids”, International Symposium on High Performance Distributed Computing (HPDC’09), Munich, Germany, June 11-13, PP. 111-120.
[5] Beltr´an M. and Guzm´an A. (2009), “The Impact of Workload Variability on Load Balancing Algorithms”, Scalable Computing: Practice and Experience, June, Vol. 10, No. 2, PP. 131–146.
[6] Fernández D. (1989), “Allocating Modules To Processors In A Distributed System”, IEEE Transactions on Software Engineering, Vol. 15, No. 11, PP. 1427-1436.
[7] Xhafa F., Abraham A. (2010), “Computational Models And Heuristic Methods For Grid Scheduling Problems”, Future Generation Computer Systems, Vol. 26, No. 4, PP. 608-621.
[8] Rodero I., Guim F., Corbalan J., Fong L., Sadjadi S. M. (2010), “Grid Broker Selection Strategies Using Aggregated Resource Information”, Future Generation Computer Systems, Vol. 26, No. 1, PP. 72-86.
[9] Zheng R. and Jin H. (2004), “An Integrated Management And Scheduling Scheme For Computational Grid”, Second International Workshop on Grid and Cooperative Computing, Dec. 7-10, Shanghai China, PP. 48-56.
[10] Hamscher V., Schwiegelshohn U., Streit A., Yahyapour R. (2000), “Evaluation of Job-Scheduling Strategies for Grid Computing”, in Proc. of GRID 2000, First IEEE/ACM International Workshop, December 17-20, Bangalore, India, PP. 191-202.
[11] Schopf J. (2001), ‘Ten Actions When SuperScheduling’, document of Scheduling Working Group, Global Grid Forum, available on: http://www.ggf.org/documents/GFD.4.pdf.
[12] Czajkowski K., Fitzgerald S., Foster I., and Kesselman C. (2001), “Grid Information Services for Distributed Resource Sharing”, in Proc. the 10th IEEE International Symposium on High Performance Distributed Computing (HPDC-10), August 7-9, San Francisco, California, USA, PP. 181-194.
[13] Xhafa F. and Abraham A. (2010), “Computational models and heuristic methods for Grid scheduling problems,” Future generation computer systems, Vol. 26, No. 4, PP. 608-621.
[14] Yu J. and Buyya R. (2005), “A taxonomy of workflow management systems for grid computing”, Journal of Grid Computing, Vol. 3, No. 4, PP. 171-200.
[15] Cao J., Jarvis S. A., Saini S. et al.( 2003), “Gridflow: Workflow management for grid computing”, in 3rd IEEE/ACM International Symposium on Cluster Computing and the Grid, Tokyo, Japan, PP. 198-205.
[16] Zhang H.-b., Tang L.-s. and Liu L.-x. (2009), “Survey of grid scheduling”, Computer Engineering and Design, Vol. 9, PP. 026.
[17] Kwok 0Y. and Ahmed I. (1998). “Benchmarking the Task Graph Scheduling Algorithms”. Proc. IPPS/SPDP.
[18] Wieczorek M., Prodan R. and T. Fahringer (2005), “Scheduling of Scientific Workflows in the ASKALON Grid Enviornment”, ACM SIGMOD Record, 34(3):56-62.
[19] Maheswaran M. et al.(1999), “Dynamic Matching and Scheduling of a Class of Independent Tasks onto Heterogeneous Computng Systems”, The 8th Heterogeneous Computing Workshop (HCW'99), San Juan, Puerto Rico.
[20] Braun T. D., Siegel H. J. and Beck N.,( 2001), “A Comparison of Eleven static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems”,Journal of Parallel and Distributed Computing, 61:801-837.
[21] Topcuoglu H., Hariri S. and Wu M. Y. (2002), “Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing”, IEEE Transactions on Parallel and Distributed Systems, 13(3): 260-274.
[22] Yu, Z., & Shi, W. (2007, March), “An adaptive rescheduling strategy for grid workflow applications”, In Parallel and Distributed Processing Symposium, 2007. IPDPS. IEEE International (PP. 1-8). IEEE.
[23] Sakellariou R. and Zhao H. (2004), “A Hybrid Heuristic for DAG Scheduling on Heterogeneous Systems”, The 13th Heterogeneous Computing Workshop (HCW 2004), Santa Fe, New Mexico, USA, April 26.
[24] Feo T. A.and Resende M. G. C. (1995), “Greedy Randomized Adaptive Search Proce-dures”, Journal of Global Optimization, 6:109-133.
[25] Hoos H. H. and StÄutzle T. (2004), “Stochastic Local Search: Foundation and Applications”, Elsevier Science and Technology.
[26] Topcuoglu H., Hariri S. and Wu M.Y., (2002), “Performance effective and low-complexity task scheduling for heterogeneous computing”, IEEE Trans. on Parallel and Distributed Systems, 13: 3.
[27] Topcuoglu H., Hariri, S. and Wu, M. Y. (2002), “Performance-effective and low-complexity task scheduling for heterogeneous computing”, Parallel and Distributed Systems, IEEE Transactions on, 13(3), 260-274
[28] Bittencourt, L. F., Sakellariou, R. and Madeira, E. R. (2010, February). “Dag scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm”, In Parallel, Distributed and Network-Based Processing (PDP), 2010 18th Euromicro International Conference on (PP. 27-34). IEEE.
[29] Tabbaa, N., Entezari-Maleki, R. and Movaghar, A. (2011), “A Fault Tolerant Scheduling Algorithm for DAG Applications in Cluster Environments”, In Digital Information Processing and Communications (PP. 189-199). Springer Berlin Heidelberg.
[30] Ranjit R. (2012), “A Novel Approach for Task Scheduling in Multiprocessor System”, International Journal of Computer Applications (0975 – 8887) Vol. 44, No. 11, April;
[31] Yu J., Buyya R. and Ramamohanarao K. (2008), “Workflow scheduling algorithms for grid computing. In Metaheuristics for scheduling in distributed computing environments”, (PP. 173-214). Springer Berlin Heidelberg.
[32] https://github.com/frs69wq/daggen, (2013, November).
[33] Ali S., Siegel H. J., Maheswaran M. et al., “Representing task and machine heterogeneities for heterogeneous computing systems,” Tamkang Journal of Science and Engineering, Vol. 3, No. 3, PP. 195-208, 2000.