Abstract
Task scheduling on multiprocessor system is a well-known problem in area of parallel computing. For this problem, many static scheduling algorithms have been reported. But in most static algorithms, only one attribute of tasks is considered when constructing a ready list, which consists of all ready tasks, and there is no evaluation for different task attributes.
In this paper, a list scheduling algorithm for DAG-based parallel computing models is proposed. It is mainly designed for reducing the scheduling length of applications with regular DAG models. Eight task attributes in the DAG model are evaluated, and corresponding rules are presented, which will be used in constructing the ready list. And when scheduling tasks, its start time and communication cost on idle processors are taken into consideration. Experimental results show that the proposed algorithm can achieve a significant performance improvement, which is up to 142 %.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Garey, M.R., Johnson, D.S.: Computers and Intractability: A guide to the theory of NP-Completeness. WH Freeman & Co., San Francisco (1979)
Kohler, W.H., Steiglitz, K.: Characterization and theoretical comparison of branch-and-bound algorithms for permutation problems. J. ACM (JACM) 21(1), 140–156 (1974)
Bruno, J., Coffman Jr., E.G., Sethi, R.: Scheduling independent tasks to reduce mean finishing time. Commun. ACM 17(7), 382–387 (1974)
Gonzalez Jr., Mario, J.: Deterministic processor scheduling. ACM Comput. Surv. (CSUR) 9(3), 173–204 (1977)
Hu, T.C.: Parallel sequencing and assembly line problems. Oper. Res. 9(6), 841–848 (1961)
Sethi, R.: Scheduling graphs on two processors. SIAM J. Comput. 5(1), 73–82 (1976)
Grama, A.: Introduction to Parallel Computing. Pearson Education, London (2003)
Roig, C., Ripoll, A., Senar, M.A., et al.: A new model for static mapping of parallel applications with task and data parallelism. In: Proceedings of the International Parallel and Distributed Processing Symposium, IPDPS 2002, Abstracts and CD-ROM, p. 8. IEEE (2001)
Tang, S., Yu, C., Lee, B.S., et al.: Adaptive data refinement for parallel dynamic programming applications. In: 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), pp. 2220–2229 (2012)
Björnfot, L., Lundqvist, K., Wall, G., et al.: Distribution of tasks within a centrally scheduled local area network. In: Toussaint, M. (ed.) Ada in Europe. LNCS, vol. 887, pp. 421–432. Springer, Heidelberg (1994)
Buyya, R., Paprazycki, M.: Clustering Computing. Prentice Hall, Upper Saddle River (2000)
Gerasoulis, A., Yang, T.: A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessors. J. Parallel Distrib. Comput. 16(4), 276–391 (1992)
Wang, F., Mok, A., Emerson, E.A.: Formal specification of asynchronous distributed real-time systems by APTL. In: Proceedings of the 14th International Conference on Software Engineering, pp. 188–198. ACM (1992)
El-Rewini, H., Lewis, T.G.: Parallel and Distributed Computing. Manning Publications Co., Greenwich (1999)
Sih, G.C., Lee, E.: A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans. Parallel Distrib. Syst. 4(2), 175–187 (1993)
Hwang, J.J., Chow, Y.C., Anger, F.D., et al.: Scheduling precedence graphs in systems with interprocessor communication times. SIAM J. Comput. 18(2), 244–257 (1989)
Wu, M.Y., Gajski, D.D.: Hypertool: a programming aid for message-passing systems. IEEE Trans. Parallel Distrib. Syst. 1(3), 330–343 (1990)
El-Rewini, H., Lewis, T.G., Ali, H.H.: Task Scheduling in Parallel and Distributed Systems. Prentice-Hall Inc., Upper Saddle River (1994)
Tang, S., Yu, C., Sun, J., et al.: EasyPDP: an efficient parallel dynamic programming runtime system for computational biology. IEEE Trans. Parallel Distrib. Syst. 23(5), 862–872 (2012)
Du, J., Yu, C., Sun, J., et al.: EasyHPS: a multilevel hybrid parallel system for dynamic programming. In: 2013 IEEE 27th International Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), pp. 630–639 (2013)
Kwok, Y.K., Ahmad, I.: Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Comput. Surv. 31(4), 406–471 (1999)
Acknowledgments
This work was supported by National Natural Science Foundation of China (No. 61303021).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Fu, H., Yu, C., Sun, J., Wang, M., Du, J. (2015). A List Scheduling Algorithm for DAG-Based Parallel Computing Models. In: Wang, G., Zomaya, A., Martinez, G., Li, K. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2015. Lecture Notes in Computer Science(), vol 9529. Springer, Cham. https://doi.org/10.1007/978-3-319-27122-4_28
Download citation
DOI: https://doi.org/10.1007/978-3-319-27122-4_28
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-27121-7
Online ISBN: 978-3-319-27122-4
eBook Packages: Computer ScienceComputer Science (R0)