Abstract
Scheduling of tasks in cloud computing is an NP-hard optimization problem. Load balancing of nonpreemptive independent tasks on virtual machines (VMs) is an important aspect of task scheduling in clouds. Whenever certain VMs are overloaded and remaining VMs are under loaded with tasks for processing, the load has to be balanced to achieve optimal machine utilization. In this paper, we propose an algorithm named honey bee behavior inspired load balancing (HBB-LB), which aims to achieve well balanced load across virtual machines for maximizing the throughput. The proposed algorithm also balances the priorities of tasks on the machines in such a way that the amount of waiting time of the tasks in the queue is minimal. We have compared the proposed algorithm with existing load balancing and scheduling algorithms. The experimental results show that the algorithm is effective when compared with existing algorithms. Our approach illustrates that there is a significant improvement in average execution time and reduction in waiting time of tasks on queue
چکیده
زمانبندی وظایف در محاسبات ابری یک مساله بهینهسازی NP-سخت است. تعادل بار وظایف مستقل غیرپیشگیرانه در ماشینهای مجازی (VMS) از جنبههای مهم زمانبندی وظیفه در ابر است. هرگاه برخی ماشینهای مجازی سربارگذاری شوند و سایر ماشینهای مجازی با وظایف برای پردازش، کم بارگذاری شده باشند، برای رسیدن به بهرهبرداری بهینه از ماشینها، بار سیستم باید تعدیل شود. در این مقاله، ما یک الگوریتم به نام تعادل بار الهام گرفته از رفتار زنبور عسل (HBB-LB) را پیشنهاد کردهایم که هدف آن دستیابی به تعادل بار در سراسر ماشینهای مجازی برای به رسیدن به حداکثر توان است. الگوریتم پیشنهاد شده وظایف را بر اساس اولویت در ماشینهای مجازی متعادل میکند به گونهای که مدت زمان انتظار وظایف در صف حداقل باشد. ما الگوریتم پیشنهادی را با الگوریتمهای تعادل بار و زمانبندی موجود مقایسه کردهایم. نتایج تجربی نشان می دهد که الگوریتم ما در مقایسه با الگوریتمهای موجود موثر عمل میکند. رویکرد ما نشان میدهد که بهبود قابل توجهی در متوسط زمان اجرا و کاهش زمان انتظار وظایف در صف وجود دارد.
1-مقدمه
محاسبات ابری یک رویکرد مبتنی بر اینترنت که در آن تمام برنامههای کاربردی و فایلها در یک ابر متشکل از هزاران کامپیوتر که به شیوهای پیچیده به هم مرتبط شده اند، میزبانی میشود. محاسبات ابری مفاهیم محاسبات موازی و توزیع شده را به منظور ارائه مبتنی بر تقاضای منابع به اشتراک گذاشته، سخت افزار، نرم افزار و اطلاعات به کامپیوتر و یا دستگاههای دیگر، ترکیب میکند. این پیدایش سیستمهای توزیع شده بر اساس مدل «پرداخت به ازای مصرف» است. مشتری نیاز به خرید نرمافزار یا بستر محاسباتی ندارد. با امکانات اینترنت، مشتری میتواند قدرت محاسباتی و یا منابع نرمافزاری را فقط با پرداخت پول برای مدت زمان استفادهشده از منابع، به کار گیرد. این سیاستهای صدور مجوز نرمافزار را مجبور میکند تا تغییر کرده و از هزینه پول برای امکانات استفاد نشده توسط مشتری در یک بسته نرمافزاری جلوگیری کند...