In this work, we study a two-tier scheduling problem which is present in the cloud computing environments. This scheduling problem differs from the traditional one-tier scheduling problems since a submitted project consists of multiple jobs each requiring several resources for its processing. In order to reduce cloud service’s turn-around time and support priority scheduling, we have developed a set of scheduling algorithms of different attributes. All the algorithms are derived from conservative backfilling algorithm, but enhanced with the concept of project’s slack which is calculated by multiplying project turn-around time with a system parameter slack factor. Besides, another system parameter preemption limit is also proposed to control the behavior of the cloud scheduler.
The algorithms developed in this study have been experimentally evaluated under different system loads by computer simulation. The experimental results indicate that Two-tier Flexible Backfilling with => > 0 (2TFB-SF) can reduce the job turn-around time by 7.5% to 15.5% and achieve almost the same performance in terms of the mean project turn-around time metric as Two-tier Strict Backfilling (2TSB) when the mean project inter-arrival time is changed from 10.0 to 160.0. Based on these results, we also reach an interesting conclusion that the decrease in the mean job around time does not always lead to a decrease in the mean project turn-around time.
The experimental results also indicate that Two-tier Priority Backfilling (2TPB) can efficiently reduce the mean turn-around time of high-priority projects, but does not lead to an increase in the mean turn-around of all the projects in most cases.
Furthermore, the behavior of the algorithm can be easily controlled by tuning two system parameters: slack factor SF and preemption limit PL, whose impact is analyzed in this work as well. More specifically, the mean turn-around time of high-priority projects is decreased from 6% to 27% when the value of ( ,=>) is increased from (10,0.2) to (160,1.0). As the value of ( , C) is relaxed from (10,1) to (160,∞), the mean turn-around time of high-priority projects is reduced from 1.5% to 20%.
Our proposed algorithms satisfy one fundamental requirement of the two-tier scheduling problem that a project should be granted a guaranteed departure time at the project’s arrival time. However, doing so might decrease the jobs’ backfilling opportunities since we must reserve resources for all the waiting jobs that have been
31
granted. Hence, the project turn-around time cannot be reduced considerably by our proposed algorithms. For future work, we plan to consider a less conservative backfilling approach in which only the jobs belonging to the first project in the waiting queue can receive resource reservations. Obviously, this less conservative approach will degrade the predictability of two-tier backfilling algorithms, but it may bring a more considerable reduction in cloud service’s turn-around time.
Furthermore, an optimal algorithm for the off-line version of the scheduling problem, in which all projects’ characteristics are known beforehand, will be studied in our future work. Other scheduling objectives, i.e. project success ratio, cloud provider revenue, are considered as well.
32
References
[1] L. Ai, M. Tang, C. Fidge, “Resource allocation and scheduling of multiple composite web services in cloud computing using Cooperative Coevolution,” in International Conference on Neural Information Processing (ICONIP 2011), Shanghai, China, pp.13-17, Sep. 2011.
[2] “Google Drive”, available at: https://drive.google.com
[3] A.P.A. Vestjens, “On-line Machine Scheduling,” Ph.D. Thesis, Department of Mathematics and Computing Science, Technische Universiteit Eindhoven, Eindhoven, The Netherlands, 1997.
[4] A. Benoit, L. Marchal, J.-F. Pineau, Y. Robert, F. Vivien, "Scheduling Concurrent Bag-of-Tasks Applications on Heterogeneous Platforms," in IEEE Transactions on Computers, vol.59, no.2, pp.202–217, Feb. 2010.
[5] C. Anglano, M. Canonico, "Scheduling algorithms for multiple Bag-of-Task applications on Desktop Grids: A knowledge-free approach," in IEEE International Symposium on Parallel and Distributed Processing (IPDPS 2008), pp.14–18, April 2008.
[6] K. Gopalan, T. Chiueh, “Multi-resource allocation and scheduling for periodic soft real-time applications,” in Proceedings of Multimedia Computing and Networking, pp.34–45, Jan. 2002.
[7] M. Holenderski, R.J. Bril, J. Lukkien, “Parallel-Task Scheduling on Multiple Resources,” in Proceedings of the 24th Euromicro Conference on Real-Time Systems (ECRTS '12), pp.233–244. 2012.
[8] A.W. Mu'alem, D.G. Feitelson, "Utilization, predictability, workloads, and user runtime estimates in scheduling the IBM SP2 with backfilling," in Parallel and Distributed Systems, IEEE Transactions on Parallel and Distributed Systems, vol.12, no.6, pp.529–543, Jun 2001.
[9] D.G. Feitelson, "Experimental analysis of the root causes of performance evaluation results: a backfilling case study," in IEEE Transactions on Parallel and Distributed Systems, vol.16, no.2, pp.175–182, Feb 2005.
[10] “CSIM 20”, available at: http://www.mesquite.com/products/csim20.htm
[11] D.D. Sleator, R.E. Tarjan, “Amortized efficiency of list update and paging rules,”
in Communications of the ACM 28, pp.202–208, 1985.
33
[12] J. Tan, "Semi-online scheduling problems on m parallel identical machines,"
in Information Technology and Artificial Intelligence Conference (ITAIC), 2011 6th IEEE Joint International , vol.1, pp.289–291, 20–22 Aug 2011.
[13] J.A. Hoogeveen, A.P.A. Vestjens, “Optimal on-line algorithms for single-machine scheduling,” in Proceedings Fifth International Conference on Integer Programming and Combinatorial Optimization, Vancouver, British Columbia, Canada, June 3–5, 1996, vol.1084 of LNCS, pp. 404–414, Springer- Berlin, 1996.
[14] X. Lu, R.A. Sitters, L. Stougie, “A class of on-line scheduling algorithms to minimize total completion time,” in Operations Research Letters, vol.31, no.3, pp 232–236, May 2003.
[15] D.G. Feitelson, L. Randolph, U. Schwiegelshohn, “Parallel job scheduling – a status report,” in Proceedings Tenth Workshop on Job Scheduling Strategies for Parallel Processing, vol.3277 in LNCS, pp.1–16, 2004.
[16] D. Lifka, “The ANL/IBM SP scheduling system,” in Job Scheduling Strategies for Parallel Processing, D. G. Feitelson and L. Rudolph (eds.), vol. 949 of LNCS, pp. 295–303, Springer-Verlag, 1995.
[17] S. Srinivasan, R. Kettimuthu, V. Subramani, P. Sadayappan, “Selective reservation strategies for backfill job scheduling,” in Job Scheduling Strategies for Parallel Processing, D. G. Feitelson and L. Rudolph (eds.), vol. 2537 of LNCS, pp 55–71. Springer Verlag, 2002.
[18] S-H. Chiang, A. Arpaci-Dusseau, M. K. Vernon, “The impact of more accurate requested runtimes on production job scheduling performance,” in Job Scheduling Strategies for Parallel Processing, D. G. Feitelson, L. Rudolph, and U. Schwiegelshohn (eds.), vol.2537 of LNCS, pp. 103–127, Springer-Verlag, 2002.
[19] J. P. Jones, B. Nitzberg, “Scheduling for Parallel Supercomputing: A Historical Perspective of Achievable Utilization,” in Job Scheduling Strategies for Parallel Processing, vol.1659 of LNCS, pp. 1–16, Springer-Verlag, 1999.
[20] D. Talby, D.G. Feitelson, "Supporting priorities and improving utilization of the IBM SP scheduler using slack-based backfilling," in 13th International and 10th Symposium on Parallel and Distributed Processing, pp.513-517, 12-16 Apr 1999.
[21] Jr. W. A. Ward, C. L. Mahood, J. E. West, “Scheduling Jobs on Parallel Systems Using a Relaxed Backfill Strategy,” in Job Scheduling Strategies for Parallel Processing, vol. 2537 of LNCS, pp. 88-102, Springer-Verlag, 2002.
34
[22] B. Li, Y. Li, M. He, H. Wu, J. Yang, "Scheduling of a Relaxed Backfill Strategy with Multiple Reservations," in International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT 2010), pp.311-316, 8-11 Dec 2010.
[23] B. G. Lawson, E. Smirni, “Multiple-Queue Backfilling Scheduling with Priorities and Reservations for Parallel Systems,” in Job Scheduling Strategies for Parallel Processing, vol. 2537 of LNCS, pp. 72–87, Springer-Verlag, 2002.
[24] E. Shmueli, D.G. Feitelson, “Backfilling with lookahead to optimize the performance of parallel job scheduling,” in Job Scheduling Strategies for Parallel Processing, D. G. Feitelson, L. Rudolph, and U. Schwiegelshohn (eds.), vol. 2862 of LNCS, pp. 228 – 251, Springer-Verlag, 2003.
[25] A. Sulistio, U. Cibej, S. Prasad, R. Buyya, “GarQ: An Efficient Scheduling Data Structure for Advance Reservations of Grid Resources,” in International Journal of Parallel, Emergent and Distributed Systems (IJPEDS), Taylor & Francis Publication, UK, 4 April 2008.
[26] A. Brodnik, A. Nilsson, “A static data structure for discrete advance bandwidth reservations on the internet,” in Proceedings of Swedish National Computer Networking Workshop (SNCNW), Stockholm, Sweden, September 2003.
[27] T. Wang, J. Chen, “Bandwidth tree – a data structure for routing in networks with advanced reservations,” in Proceedings of the 21st Intl. Performance, Computing, and Communications Conference (IPCCC), pp. 37–44, Phoenix, USA, 2002.
[28] R. Brown, “Calendar queues: A fast O(1) priority queue implementation for the simulation event set problem,” in Communications of the ACM 31(10), pp.1220–
1227,1988.
[29] Q. Xiong, C. Wu, J. Xing, L. Wu, H. Zhang, “A Linked-List Data Structure for Advance Reservation Admission Control,” in ICCNMC 2005, LNCS 3619, pp.
901 – 910, Springer-Verlag Berlin Heidelberg, 2005.