skip to main content
article

Data dependent loop scheduling based on genetic algorithms for distributed and shared memory systems

Authors Info & Claims
Published:01 May 2004Publication History
Skip Abstract Section

Abstract

Many approaches have been described for the parallel loop scheduling problem for shared-memory systems, but little work has been done on the data-dependent loop scheduling problem (nested loops with loop carried dependencies). In this paper, we propose a general model for the data-dependent loop scheduling problem on distributed as well as shared memory systems. In order to achieve load balancing and low runtime scheduling and communication overhead, our model is based on a loop task graph and the notion of critical path. In addition, we develop a heuristic algorithm based on our model and on genetic algorithms to test the reliability of the model. We test our approach on different scenarios and benchmarks. The results are very encouraging and suggest a future parallel compiler implementation based on our model.

References

  1. {1} J. Aguilar, E. Gelenbe, Task assignment and transaction clustering heuristics for distributed systems. Inform. Sci.: Inform. Comput. Sci. 97 (1)(1997) 199-219. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. {2} J. Aguilar, E. Leiss, A general adaptive parallel loop scheduling For distributed and shared memory systems, Technical Report, Department of Computer Sciences, University of Houston, June 2000.Google ScholarGoogle Scholar
  3. {3} A. Bull, Feedback Guided Dynamic Loop Scheduling: Algorithms and Experiments, Lecture Notes in Computer Science, Vol. 1470, Springer, Berlin, 1998, pp. 377-382. Google ScholarGoogle Scholar
  4. {4} F. Chein, T. O'Neil, E. Sha, Optimizing overall loop schedules using prefetching and partitioning, IEEE Trans. Parallel Distributed Systems 11 (6) (2000) 604-614. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. {5} H. El-Rewini, T. Lewis, H. Ali, Task Scheduling in Parallel and Distributed Systems, Prentice-Hall, Englewood Cliff, NJ, 1994. Google ScholarGoogle Scholar
  6. {6} G. Nanliken, G. Belloch, Space-efficient scheduling of nested parallelism, ACM Trans. Programming Language Systems 21 (1) (1999) 138-169. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. {7} A. Nisbet, GAPS: genetic algorithm optimized parallelisation, Technical Report, Department of Computer Sciences, University of Manchester, UK, 1998.Google ScholarGoogle Scholar
  8. {8} N. Passos, M. Sha, Achieving full parallelisation using multi-dimensional retiming. IEEE Trans. Parallel Distributed Systems 7 (11)(1996) 1150-1163. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. {9} A. Srinivasan, J. Anderson. A simple prool technique for priority scheduled systems, Inform. Process. Lett. 77 (2-4) (2001) 63-70. Google ScholarGoogle Scholar
  10. {10} Z. Szczerbinski, Optimal Distribution of Loops Containing no Dependence Cycles, Lecture Notes in Computer Science, Vol 1595. Springer, Berlin, 1999, pp. 1254-1257. Google ScholarGoogle Scholar
  11. {11} S. Tongsima, E. Sha, N. Passos, Communication-sensitive loop scheduling for DSP applications. IEEE Trans. Signal Process. 45 (5) (1997) 1309-1322. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. {12} S. Tongsima, C. Chantrapornchai, E. Sha, Probabilistic Loop Scheduling Considering Communication Overhead, Lecture Notes in Computer Science, Vol. 1459, Springer, Berlin, 1998, pp. 158-179. Google ScholarGoogle Scholar
  13. {13} S. Tongsima, E. Sha, C. Chantrapornchai, D. Surma, N. Luiz, Probabilistic loop scheduling for applications with uncertain execution time, IEEE Trans. Comput. 49 (1) (2000) 65-80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. {14} J. Xue, Communication-minimal tiling of uniform dependence loops, J. Parallel Distributed Comput. 42 (1997) 42-59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. {15} C. Wang, K. Parhi, Resource-constrained loop list scheduler for DSP algorithms, J. VLSI Signal Process. 11 (1-2) (1995) 75-96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. {16} Y. Yan, C. Jin, X. Zhang, Adaptively scheduling parallel loops in distributed shared-memory systems. IEEE Trans. Parallel Distributed Systems 8 (1)(1997) 70-81. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Data dependent loop scheduling based on genetic algorithms for distributed and shared memory systems

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Article Metrics

              • Downloads (Last 12 months)0
              • Downloads (Last 6 weeks)0

              Other Metrics