Abstract
This paper addresses the problem of scheduling multi-user jobs on clusters, both homogeneous and heterogeneous. A user job is composed by a set of dependent tasks and it is described by a direct acyclic graph (DAG). The aim is to maximize the resource usage by allowing a floating mapping of processors to a given job, instead of the common mapping approach that assigns a fixed set of processors to a user for a period of time. The simulation results show a better cluster usage. The scheduling algorithm minimizes the total length of the schedule (makespan) of a given set of parallel jobs, whose priorities are represented in a DAG. The algorithm is presented as producing static schedules although it can be adapted to a dynamic behavior as discussed in the paper.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amoura, A.K., Bampis, E., König, J.-C.: Scheduling algorithms for parallel gaussian elimination with communication costs. IEEE Transactions on Parallel and Distributed Systems 9(7), 679–686 (1998)
Barbosa, J., Morais, C., Nobrega, R., Monteiro, A.P.: Static scheduling of dependent parallel tasks on heterogeneous clusters. In: Heteropar 2005, pp. 1–8. IEEE Computer Society, Los Alamitos (2005)
Barbosa, J., Padilha, A.J.: Algorithm-dependent method to determine the optimal number of computers in parallel virtual machines. In: Hernández, V., Palma, J.M.L.M., Dongarra, J. (eds.) VECPAR 1998. LNCS, vol. 1573, pp. 508–521. Springer, Heidelberg (1999)
Barbosa, J., Tavares, J., Padilha, A.J.: Linear algebra algorithms in a heterogeneous cluster of personal computers. In: Proceedings of 9th Heterogeneous Computing Workshop, pp. 147–159. IEEE CS Press, Los Alamitos (2000)
Berman, F., Wolski, R., Figueira, S., Schopf, J., Shao, G.: Application-level scheduling on distributed heterogeneous networks. In: Supercomputing 1996 (1996)
Blazewicz, J., Dell’Olmo, P., Drozdowski, M., Maczka, P.: Scheduling multiprocessor tasks on parallel processors with limited availability. European journal of Operational Research (149), 377–389 (2003)
Blazewicz, J., Machowiak, M., Weglarz, J., Kovalyov, M., Trystram, D.: Scheduling malleable tasks on parallel processors to minimize the makespan. Annals of Operations Research (129), 65–80 (2004)
Shivle, S., et al.: Mapping of subtasks with multiple versions in a heterogeneous ad hoc grid environment. In: Heteropar 2004. IEEE Computer Society, Los Alamitos (2004)
Kim, J.-K., et al.: Dynamically mapping tasks with priorities and multiple deadlines in a heterogeneous environment. Journal of Parallel and Distributed Computing 67, 154–169 (2007)
Geijn, R., Watts, J.: Summa: Scalable universal matrix multiplication algorithm. Technical Report CS-95-286, University of Tennessee, Knoxville (1995)
Gerasoulis, A., Yang, T.: On the granularity and clustering of directed acyclic task graphs. IEEE Transactions on Parallel and Distributed Systems, 686–701 (June 1993)
Jansen, K.: Scheduling malleable parallel tasks: An asymptotic fully polynomial time approximation scheme. Algorithmica 39, 59–81 (2004)
Kwok, Y., Ahmad, I.: Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Computing Surveys 31(4), 406–471 (1999)
Kwok, Y., Ahmad, I.: On multiprocessor task scheduling using efficient state space search approaches. Journal of Parallel and Distributed Computing 65, 1515–1532 (2005)
Lepère, R., Mounié, G., Trystram, D.: An approximation algorithm for scheduling trees of malleable tasks. European journal of Operational Research (142), 242–249 (2002)
Oh-Heum, Chwa, K.-Y.: Scheduling parallel tasks with individual deadlines. Theoretical Computer Science 215, 209–223 (1999)
Park, G.-L.: Performance evaluation of a list scheduling algorithm in distributed memory multiprocessor systems. Future Generation Computer Systems (20), 249–256 (2004)
Shirazi, B., Wang, M., Pathak, G.: Analysis and evaluation of heuristic methods for static task scheduling. Journal of Parallel and Distributing Computing 10, 222–232 (1990)
Sinnen, O., Sousa, L.: List scheduling: extension for contention awareness and evaluation of node priorities for heterogeneous cluster architectures. Parallel Computing (30), 81–101 (2004)
Topcuoglu, H., Hariri, S., Wu, M.-Y.: Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Transactions on Parallel and Distributed Systems 13(3), 260–274 (2002)
Trystram, D.: Scheduling parallel applications using malleable tasks on clusters. In: 15th International Conference on Parallel and Distributed Processing Symposium (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barbosa, J., Monteiro, A.P. (2008). A List Scheduling Algorithm for Scheduling Multi-user Jobs on Clusters. In: Palma, J.M.L.M., Amestoy, P.R., Daydé, M., Mattoso, M., Lopes, J.C. (eds) High Performance Computing for Computational Science - VECPAR 2008. VECPAR 2008. Lecture Notes in Computer Science, vol 5336. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-92859-1_13
Download citation
DOI: https://doi.org/10.1007/978-3-540-92859-1_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-92858-4
Online ISBN: 978-3-540-92859-1
eBook Packages: Computer ScienceComputer Science (R0)