Skip to main content
Log in

RALBA: a computation-aware load balancing scheduler for cloud computing

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Cloud computing serves as a platform for remote users to utilize the heterogeneous resources in data-centers to compute High-Performance Computing jobs. The physical resources are virtualized in Cloud to entertain user services employing Virtual Machines (VMs). Job scheduling is deemed as a quintessential part of Cloud and efficient utilization of VMs by Cloud Service Providers demands an optimal job scheduling heuristic. An ideal scheduling heuristic should be efficient, fair, and starvation-free to produce a reduced makespan with improved resource utilization. However, static heuristics often lead to inefficient and poor resource utilization in the Cloud. An idle and underutilized host machine in Cloud still consumes up to 70% of the energy required by an active machine (Ray, in Indian J Comput Sci Eng 1(4):333–339, 2012). Consequently, it demands a load-balanced distribution of workload to achieve optimal resource utilization in Cloud. Existing Cloud scheduling heuristics such as Min–Min, Max–Min, and Sufferage distribute workloads among VMs based on minimum job completion time that ultimately causes a load imbalance. In this paper, a novel Resource-Aware Load Balancing Algorithm (RALBA) is presented to ensure a balanced distribution of workload based on computation capabilities of VMs. The RABLA framework comprises of two phases: (1) scheduling based on computing capabilities of VMs, and (2) the VM with earliest finish time is selected for jobs mapping. The outcomes of the RALBA have revealed that it provides substantial improvement against traditional heuristics regarding makespan, resource utilization, and throughput.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

Notes

  1. https://bitbucket.org/RALBA_18/ralba/src.

References

  1. Ray, P.P.: The Green grid SAGA—A Green initiative to data centers: a review. Indian J. Comput. Sci. Eng. 1(4), 333–339 (2012)

    Google Scholar 

  2. Hayes, B.: Cloud computing. Commun. ACM 51(7), 9 (2008)

    Article  Google Scholar 

  3. Rimal, P., Choi, E., Lumb, I.: A taxonomy and survey of cloud computing systems. In: NCM 2009—5th International Joint Conference INC, IMS, IDC, pp. 44–51 (2009)

  4. Fernandez-baca, D.: Allocating modules to processors in a distributed system. IEEE Trans. Softw. Eng. 15(11), 1427–1436 (1989)

    Article  Google Scholar 

  5. Cook, S.A.: The complexity of theorem-proving procedures. In: in: Proceedings of 3rd Annual ACM Symposium on Theory of Computing, pp. 2–8 (1971)

  6. Goldwasser, S., Micali, S., Rackoff, C.: The knowledge complexity of interactive proof system. SIAM J. Comput. 18(1), 186–208 (1989)

    Article  MathSciNet  Google Scholar 

  7. Braun, T.D., et al.: A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J. Parallel Distrib. Comput. 61(6), 810–837 (2001)

    Article  Google Scholar 

  8. Ibarra, O.H., Kim, C.E.: Heuristic algorithms for scheduling independent tasks on nonidentical processors. J. ACM 24(2), 280–289 (1977)

    Article  MathSciNet  Google Scholar 

  9. Deldari, A., Naghibzadeh, M., Abrishami, S.: CCA: a deadline-constrained workflow scheduling algorithm for multicore resources on the cloud. J. Supercomput. 73(2), 756–781 (2016)

    Article  Google Scholar 

  10. Kumar, S., Nadjaran, A., Gopalaiyengar, S.K.: SLA-based virtual machine management for heterogeneous workloads in a cloud datacenter. J. Netw. Comput. Appl. 45, 108–120 (2014)

    Article  Google Scholar 

  11. Jennings, B., Stadler, R.: Resource management in clouds: survey and research challenges. J. Netw. Syst. Manag. 23(3), 567–619 (2014)

    Article  Google Scholar 

  12. Wu, F., Wu, Q., Tan, Y.: Workflow scheduling in cloud: a survey. J. Supercomput. 71(9), 3373–3418 (2015)

    Article  Google Scholar 

  13. Farrag, A.A.S., Abbas, S., El-Horbaty, E.-S.M.: Intelligent cloud algorithms for load balancing problems: a survey. In: IEEE Seventh International Conference on Intelligent Computing and Information Systems (ICICIS), December 2015, pp. 210–216 (2015)

  14. Lenzini, L., Mingozzi, E., Stea, G.: Tradeoffs between low complexity, low latency, and fairness with deficit round-robin schedulers. IEEE/ACM Trans. Netw. 12(4), 681–693 (2004)

    Article  Google Scholar 

  15. Chen, H., Wang, F., Helian, N., Akanmu, G.: User-priority guided min–min scheduling algorithm for load balancing in cloud computing. In: 2013 National Conference on Parallel Computing Technologies, PARCOMPTECH 2013, pp. 1–8 (2013)

  16. Panda, S.K., Agrawal, P., Khilar, P.M., Mohapatra, D.P.: Skewness-based min–min max–min heuristic for grid task scheduling. In: Proceedings of the 2014 Fourth International Conference on Advanced Computing & Communication Technologies, pp. 282–289 (2014)

  17. Hung, T.C., Phi, N.X.: Study the effect of parameters to load balancing in cloud computing. Int. J. Comput. Netw. Commun. 8(3), 33–45 (2016)

    Google Scholar 

  18. Yu, X., Yu, X.: A new grid computation-based min–min algorithm. In: Sixth International Conference on Fuzzy Systems and Knowledge Discovery, pp. 43–45 (2009)

  19. Mao, Y., Chen, X., Li, X.: Max–min task scheduling algorithm for load balance in cloud computing. In: Proceedings of International Conference on Computer Science and Information Technology, vol. 255, pp. 457–465 (2014)

  20. Muhammed, A., Abdullah, A., Hussin, M.: Max-average: an extended max–min scheduling algorithm for grid computing environment. J. Telecommun. Electron. Comput. Eng. 8(6), 43–47 (1843)

    Google Scholar 

  21. Tabak, E., Cambazoglu, B., Aykanat, C.: Improving the performance of independent task assignment heuristics minmin, maxmin and sufferage. IEEE Trans. Parallel Distrib. Syst. 25(5), 1244–1256 (2014)

    Article  Google Scholar 

  22. Aditya, A., Chatterjee, U., Gupta, S.: A comparative study of different static and dynamic load balancing algorithm in cloud computing with special emphasis on time factor. Int. J. Curr. Eng. Technol. 5(3), 2277–4106 (2015)

    Google Scholar 

  23. Mohialdeen, I.A.: Comparative study of scheduling algorithms in cloud computing environment. J. Comput. Sci. 9(2), 252–263 (2013)

    Article  Google Scholar 

  24. Tchernykh, A., et al.: Online Bi-Objective Scheduling for IaaS Clouds Ensuring Quality of Service. J. Grid Comput. 14(1), 5–22 (2016)

    Article  Google Scholar 

  25. Elzeki, O.M., Rashad, M.Z., Elsoud, M.A.: Overview of scheduling tasks in distributed computing systems. Int. J. Soft Comput. Eng. 2(3), 470–475 (2012)

    Google Scholar 

  26. Li, B., Pei, Y., Wu, H., Shen, B.: Heuristics to allocate high-performance cloudlets for computation offloading in mobile ad hoc clouds. J. Supercomput. 71(8), 3009–3036 (2015)

    Article  Google Scholar 

  27. Biradar, S., Pawar, D.: A review paper of improving task division assignment using heuristics. Int. J. Sci. Res. 4(1), 609–613 (2015)

    Google Scholar 

  28. Maheswaran, M., Ali, S., Siegel, H.J., Hensgen, D., Freund, R.F.: Dynamic mapping of a class of independent tasks onto heterogeneous computing systems. J. Parallel Distrib. Comput. 59(2), 107–131 (1999)

    Article  Google Scholar 

  29. Parsa, S., Entezari-Maleki, R.: RASA: a new grid task scheduling algorithm. Int. J. Digit. Content Technol. Appl. 3(4), 152–160 (2009)

    Google Scholar 

  30. Sharma, G., Banga, P.: Task aware switcher scheduling for batch mode mapping in computational grid environment. Int. J. Adv. Res. Comput. Sci. Softw. Eng. 3, 1292–1299 (2013)

    Google Scholar 

  31. Mathew, T.: Study and analysis of various task scheduling algorithms in the cloud computing environment. In: IEEE International Conference on Advances in Computing, Communications and Informatics (ICACCI), pp. 658–664 (2014)

  32. Patel Dhara, R., Thaker, C.: Analysis of various task scheduling algorithms in cloud computing. Int. J. Sci. Res. Sci. Eng. Technol. 1(6), 245–249 (2015)

    Google Scholar 

  33. Dehkordi, S.T., Bardsiri, V.K.: TASA: a new task scheduling algorithm in cloud computing. J. Adv. Comput. Eng. Technol. 1(4), 25–32 (2015)

    Google Scholar 

  34. Panda, S.K., Jana, P.K.: SLA-based task scheduling algorithms for heterogeneous multi-cloud environment. J. Supercomput. 73(6), 2730–2762 (2017)

    Article  Google Scholar 

  35. Calheiros, R.N., Ranjan, R., Beloglazov, A., De Rose, C.A.F., Buyya, R.: CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw. Pract. Exp. 39(7), 701–736 (2009)

    Google Scholar 

  36. Mehdi, N.A., Mamat, A., Ibrahim, H., Subramaniam, S.K.: Impatient task mapping in elastic cloud using genetic algorithm. J. Comput. Sci. 7(6), 877–883 (2011)

    Article  Google Scholar 

  37. Behzad, S., Fotohi, R., Effatparvar, M.: Queue based job scheduling algorithm for cloud computing. Int. J. Basic Appl. Sci. 4(12), 3785–3790 (2013)

    Google Scholar 

  38. Liu, Z., Cho, S.: Characterizing machines and workloads on a Google cluster. In: 41st International Conference on Parallel Processing Workshops, pp. 397–403 (2012)

  39. Chen, Y., Katz, R.H.: Analysis and Lessons from a Publicly Available Google Cluster Trace. EECS Dep. Univ. California, Berkeley, Tech. Rep. UCB/EECS-2010-95 94, p. 11 (2010)

  40. Reiss, C., Tumanov, A., Ganger, G.R., Katz, R.H., Kozuch, M.A.: Towards understanding heterogeneous clouds at scale: Google trace analysis. Intel Sci. Technol. Cent. Cloud Comput. Tech. Rep. ISTC-CC-TR-12-101

  41. Reiss, C., Tumanov, A., Ganger, G.R., Katz, R.H., Kozuch, M.A.: Heterogeneity and dynamicity of clouds at scale. In: Proceedings of the Third ACM Symposium on Cloud Computing—SoCC’12, pp. 1–13 (2012)

  42. Moreno, I.S., Garraghan, P., Townend, P., Xu, J.: An approach for characterizing workloads in google cloud to derive realistic resource utilization models. In: Proceedings of the 2013 IEEE Seventh International Symposium on Service-Oriented System Engineering, pp. 49–60 (2013)

  43. Liu, C., Liu, C., Shang, Y., Chen, S., Cheng, B., Chen, J.: An adaptive prediction approach based on workload pattern discrimination in the cloud. J. Netw. Comput. Appl. 80, 35–44 (2017)

    Article  Google Scholar 

  44. Kavulya, S., Tany, J., Gandhi, R., Narasimhan, P.: An analysis of traces from a production MapReduce cluster. In: 11th IEEE/ACM International Conference on Grid Computing (CCGrid), pp. 94–103 (2010)

  45. Elzeki, O.M., Reshad, M.Z., Elsoud, M.A.: Improved max–min algorithm in cloud computing. Int. J. Comput. Appl. 50(12), 22–27 (2012)

    Google Scholar 

  46. De Falco, I., Scafuri, U., Tarantino, E.: Two new fast heuristics for mapping parallel applications on cloud computing. Futur. Gener. Comput. Syst. 37, 1–13 (2014)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Muhammad Aleem.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Hussain, A., Aleem, M., Khan, A. et al. RALBA: a computation-aware load balancing scheduler for cloud computing. Cluster Comput 21, 1667–1680 (2018). https://doi.org/10.1007/s10586-018-2414-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-018-2414-6

Keywords

Navigation