TY - CHAP
T1 - A methodology for online consolidation of tasks through more accurate resource estimations
AU - Iglesias, Jesus Omana
AU - Murphy, Liam
AU - De Cauwer, Milan
AU - Mehta, Deepak
AU - O'Sullivan, Barry
N1 - Publisher Copyright:
© 2014 IEEE.
PY - 2014/1/29
Y1 - 2014/1/29
N2 - Cloud providers aim to provide computing services for a wide range of applications, such as web applications, emails, web searches, map reduce jobs. These applications are commonly scheduled to run on multi-purpose clusters that nowadays are becoming larger and more heterogeneous. A major challenge is to efficiently utilize the cluster's available resources, in particular to maximize the machines' utilization level while minimizing the applications' waiting time. We studied a publicly available trace from a large Google cluster (i12,000 machines) and observed that users generally request more resources than required for running their tasks, leading to low levels of utilization. In this paper, we propose a methodology for achieving an efficient utilization of the cluster's resources while providing the users with fast and reliable computing services. The methodology consists of three main modules: i) a prediction module that forecasts the maximum resource requirement of a task, ii) a scalable scheduling module that efficiently allocates tasks to machines, and iii) a monitoring module that tracks the levels of utilization of the machines and tasks. We present results that show that the impact of more accurate resource estimations for the scheduling of tasks can lead to an increase in the average utilization of the cluster, a reduction in the number of tasks being evicted, and a reduction in the tasks' waiting time.
AB - Cloud providers aim to provide computing services for a wide range of applications, such as web applications, emails, web searches, map reduce jobs. These applications are commonly scheduled to run on multi-purpose clusters that nowadays are becoming larger and more heterogeneous. A major challenge is to efficiently utilize the cluster's available resources, in particular to maximize the machines' utilization level while minimizing the applications' waiting time. We studied a publicly available trace from a large Google cluster (i12,000 machines) and observed that users generally request more resources than required for running their tasks, leading to low levels of utilization. In this paper, we propose a methodology for achieving an efficient utilization of the cluster's resources while providing the users with fast and reliable computing services. The methodology consists of three main modules: i) a prediction module that forecasts the maximum resource requirement of a task, ii) a scalable scheduling module that efficiently allocates tasks to machines, and iii) a monitoring module that tracks the levels of utilization of the machines and tasks. We present results that show that the impact of more accurate resource estimations for the scheduling of tasks can lead to an increase in the average utilization of the cluster, a reduction in the number of tasks being evicted, and a reduction in the tasks' waiting time.
KW - Cloud computing
KW - Constraint programming
KW - Forecasting
KW - Online scheduling
KW - Resource provisioning
UR - https://www.scopus.com/pages/publications/84946692658
U2 - 10.1109/UCC.2014.17
DO - 10.1109/UCC.2014.17
M3 - Chapter
AN - SCOPUS:84946692658
T3 - Proceedings - 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, UCC 2014
SP - 89
EP - 98
BT - Proceedings - 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, UCC 2014
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 7th IEEE/ACM International Conference on Utility and Cloud Computing, UCC 2014
Y2 - 8 December 2014 through 11 December 2014
ER -