An Evolutionary Approach to Task Graph Scheduling

  • Saeed Parsa
  • Shahriar Lotfi
  • Naser Lotfi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4431)


Effective scheduling is of great importance to parallel programming environments. The aim is to minimize the completion time of task graphs. The completion time of a task graph is directly affected by the length of its critical path. Hence, the trend of an evolutionary approach for task graph scheduling can be biased towards reduction of the critical path. In this paper, a new genetic scheduling algorithm is presented. The algorithm, in the first priority, minimizes the critical path length of the parallel program task graph and in the second priority minimizes the inter-processor communication time. Thereby, it achieves a better scheduling in comparison with the existing approaches.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ahmad, I., Kwok, Y.K.: On Parallelizing the Multiprocessor Scheduling Problem. IEEE Transaction on Parallel and Distributed Systems 10(4), 414–432 (1999)CrossRefGoogle Scholar
  2. 2.
    Al-Mouhamed, M.A.: Lower Bound on the Number of Processors and Time for Scheduling Precedence Graphs with Communication Costs. IEEE Transaction Software Engineering 16(12), 1390–1401 (1990)CrossRefMathSciNetGoogle Scholar
  3. 3.
    Baxter, J., Patel, J.H.: The LAST Algorithm: A Heuristic-Based Static Task Allocation Algorithm. In: Proceeding of International Conference on Parallel Processing, vol. 2, pp. 217–222 (1989)Google Scholar
  4. 4.
    Brest, J., Zumer, V.: A Comparison of the Static Task Graph Scheduling Algorithms. Faculty of Electrical Engineering and Computer Science Smetanova, Maribor, Slovenia (2000)Google Scholar
  5. 5.
    Coffman, E.G.: Computer and Job-Shop Scheduling Theory. John Wiley, Chichester (1976)zbMATHGoogle Scholar
  6. 6.
    Correa, R.C., Ferreira, A., Rebreyend, P.: Scheduling Multiprocessor Tasks with Genetic Algorithms. IEEE Transaction on Parallel and Distributed Systems 10(8), 825–837 (1999)CrossRefGoogle Scholar
  7. 7.
    De Jong, K.A., Spears, W.M.: A Formal analysis of the Role of Multi-Point Crossover in Genetic Algorithms (1991)Google Scholar
  8. 8.
    Dhodhi, M.K., Ahmad, I.: Multiprocessor Scheduling Scheme Using Problem-Space Genetic Algorithms. In: Proceeding of IEEE International Conference on Evolutionary Computation (1995)Google Scholar
  9. 9.
    Goldberg, D.E.: Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley, Reading (1989)zbMATHGoogle Scholar
  10. 10.
    Hou, E.S.H., Ansari, N., Ren, H.: A Genetic Algorithm for Multiprocessor Scheduling. IEEE Transaction on Parallel and Distributed Computing 5(2), 113–120 (1994)CrossRefGoogle Scholar
  11. 11.
    Hwang, J.J., Chow, Y.C., Anger, F.D., Lee, C.Y.: Scheduling Precedence Graphs in Systems with Inter-processor Communication Times. SIAM Journal on Computer 18(2), 244–257 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Kim, S.J., Browne, J.C.: A General Approach to Mapping of Parallel Computation upon Multiprocessor Architectures. In: Proceeding Of International Conference on Parallel Processing, vol. 2, pp. 1–8 (1988)Google Scholar
  13. 13.
    Kruatrachue, B., Lewis, T.G.: Duplication Scheduling Heuristics (DSH): A New Precedence Task Scheduler for Parallel Processor Systems. Technical Report. Oregon State University, Corvallis (1987)Google Scholar
  14. 14.
    Kwok, Y.K., Ahmad, I.: Benchmarking and Comparison of the Task Graph Scheduling Algorithms. Journal of Parallel and Distributed Computing 59, 381–422 (1999)zbMATHCrossRefGoogle Scholar
  15. 15.
    McCreary, C.L., Khan, A.A., Thompson, J.J., McArdle, M.E.: A Comparison of Heuristics for Scheduling DAGS on Multiprocessors. In: Proceedings of the 8th International Parallel Processing Symposium, pp. 446–451 (1994)Google Scholar
  16. 16.
    Rinehart, M., Kianzad, V., Bhattacharyya, S.S.: A Modular Genetic Algorithm for Scheduling Task Graphs. Department of Electrical and Computer Engineering, and Institute for Advanced Computer Studies, University of Maryland, College Park (2003)Google Scholar
  17. 17.
    Sarkar, V.: Partitioning and Scheduling Parallel Programs for Multiprocessors. MIT Press, Cambridge (1989)zbMATHGoogle Scholar
  18. 18.
    Sih, G.C., Lee, E.A.: A Compile-Time Scheduling Heuristic for Interconnection Constrained Heterogeneous Processor Architectures. IEEE Transaction on Parallel and Distributed Systems 4(2), 75–87 (1993)CrossRefGoogle Scholar
  19. 19.
    Wu, A.S., Yu, H., Jin, S., Lin, K.C., Schiavone, G.: An Incremental Genetic Algorithm Approach to Multiprocessor Scheduling. IEEE Transaction on Parallel and Distributed Systems 15(9), 824–834 (2004)CrossRefGoogle Scholar
  20. 20.
    Wu, M.Y.: MCP Revisited. Department of Electrical and Computer Engineering, University of New MexicoGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Saeed Parsa
    • 1
  • Shahriar Lotfi
    • 1
  • Naser Lotfi
    • 1
  1. 1.Faculty of Computer Engineering, Iran University of Science and Technology, TehranIran

Personalised recommendations