DOI QR코드

DOI QR Code

Static Homogeneous Multiprocessor Task Graph Scheduling Using Ant Colony Optimization

  • Boveiri, Hamid Reza (Sama Technical and Vocational Training College, Islamic Azad University) ;
  • Khayami, Raouf (Information Technology Department, Shiraz University of Technology)
  • Received : 2016.04.03
  • Accepted : 2016.11.15
  • Published : 2017.06.30

Abstract

Nowadays, the utilization of multiprocessor environments has been increased due to the increase in time complexity of application programs and decrease in hardware costs. In such architectures during the compilation step, each program is decomposed into the smaller and maybe dependent segments so-called tasks. Precedence constraints, required execution times of the tasks, and communication costs among them are modeled using a directed acyclic graph (DAG) named task-graph. All the tasks in the task-graph must be assigned to a predefined number of processors in such a way that the precedence constraints are preserved, and the program's completion time is minimized, and this is an NP-hard problem from the time-complexity point of view. The results obtained by different approaches are dominated by two major factors; first, which order of tasks should be selected (sequence subproblem), and second, how the selected sequence should be assigned to the processors (assigning subproblem). In this paper, a hybrid proposed approach has been presented, in which two different artificial ant colonies cooperate to solve the multiprocessor task-scheduling problem; one colony to tackle the sequence subproblem, and another to cope with assigning subproblem. The utilization of background knowledge about the problem (different priority measurements of the tasks) has made the proposed approach very robust and efficient. 125 different task-graphs with various shape parameters such as size, communication-to-computation ratio and parallelism have been utilized for a comprehensive evaluation of the proposed approach, and the results show its superiority versus the other conventional methods from the performance point of view.

Keywords

References

  1. P. Chretienne et al, Scheduling Theory and Its Application, New York, Wiley, 1995.
  2. Kwok Yu-Kwong, and Ishfaq Ahmad, "Static scheduling algorithms for allocating directed task graphs to multiprocessors," ACM Computing Surveys (CSUR), vol. 31, no. 4, pp. 406-471, 1999. https://doi.org/10.1145/344588.344618
  3. Thomas L. Adam, K. Mani Chandy and J. R. Dickson, "A comparison of list schedules for parallel processing systems," Communications of the ACM, vol. 17, no. 12, pp. 685-690, 1974. https://doi.org/10.1145/361604.361619
  4. B. Kruatrachue and TG. Lewis, "Duplication Scheduling Heuristics (DSH): A New Precedence Task Scheduler for Parallel Processor Systems," Technical report: Oregon State University, Corvallis, Report No.: OR 97331, 1987.
  5. McCreary Carolyn, and Helen Gill, "Automatic determination of grain size for efficient parallel processing," Communications of the ACM, vol. 32, no. 9, pp. 1073-1078, 1989. https://doi.org/10.1145/66451.66454
  6. J. Baxter and JH. Patel, "The LAST Algorithm: A Heuristic-Based Static Task Allocation Algorithm," in Proc. of the 1989 Int'l Conf. Parallel Processing, pp. 217-222, Aug. 1989.
  7. JJ. Hwang, YC. Chow, FD. Anger and CY. Lee, "Scheduling Precedence Graphs in Systems with Interprocessor Communication Times," SIAM J. Computing, vol. 18, no. 2, pp. 244-257, Apr. 1989. https://doi.org/10.1137/0218016
  8. GC. Sih and EA. Lee, "A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures," IEEE Trans. Parallel and Distributed Systems, vol. 4, no. 2, pp. 75-87, Feb. 1993.
  9. MY. Wu and DD. Gajski, "Hypertool: A Programming Aid for Message-Passing Systems," IEEE Trans. Parallel and Distributed Systems, vol. 1, no. 3, pp. 330-343, Jul. 1990. https://doi.org/10.1109/71.80160
  10. H. R. Boveiri, "A Novel ACO-Based Static Task Scheduling Approach for Multiprocessor Environments," International Journal of Computational Intelligence Systems, vol. 9, no. 5, pp. 800-811, 2016. https://doi.org/10.1080/18756891.2016.1237181
  11. H. R. Boveiri, "An incremental ACO-based approach to task assignment to processors for multiprocessor scheduling," Frontiers of Information Technology & Electronic Engineering, 2016, In the Press.
  12. M. Dorigo, V. Maniezzo and A Colorni, "Positive feedback as a search strategy," Technical report: Politecnico di Milano, Milan, Report No.: 91-016, 1991.
  13. M. Dorigo, G. DiCaro and L. Gambardella, "Ant Algorithm for Discrete Optimization," Artificial Life, vol. 5, no. 2, pp. 137-172, 1999. https://doi.org/10.1162/106454699568728
  14. MA. Al-Mouhamed, "Lower Bound on the Number of Processors and Time for Scheduling Precedence Graphs with Communication Costs," IEEE Trans. Software Engineering, vol. 16, no. 12, pp. 1390-1401, Dec. 1990. https://doi.org/10.1109/32.62447
  15. A. Al-Maasarani, "Priority-Based Scheduling and Evaluation of Precedence Graphs with Communication Times," M.S. Thesis: King Fahd University of Petroleum and Minerals, Saudi Arabia, 1993.
  16. R. Hwang, M. Gen and H. Katayama, "A comparison of multiprocessor task scheduling algorithms with communication costs," Computer & Operations Research, vol. 35, no. 3, pp. 976-993, 2008. https://doi.org/10.1016/j.cor.2006.05.013
  17. H. R. Boveiri, "Assigning Tasks to the Processors for Task-Graph Scheduling in Parallel Systems Using Learning and Cellular Learning Automata," in Proc. of the 1st National Conf. on Comp. Eng. and Info. Tech, pp. 1-8, Shoushtar, Iran, Feb. 2014 (in Farsi).
  18. H. R. Boveiri, "Multiprocessor Task Graph Scheduling Using a Novel Graph-Like Learning Automata," International Journal of Grid and Distributed Computing, vol. 8, no. 1, pp. 41-54, Feb. 2015. https://doi.org/10.14257/ijgdc.2015.8.1.05
  19. H. R. Boveiri, "An Efficient Task Priority Measurement for List-Scheduling in Multiprocessor Environments," International Journal of Software Engineering and Its Applications (IJSEIA), vol. 9, no. 5, pp. 233-246, May 2015.

Cited by

  1. An intelligent hybrid approach for task scheduling in cluster computing environments as an infrastructure for biomedical applications vol.38, pp.1, 2017, https://doi.org/10.1111/exsy.12536