Skip to main content

Probabilistic loop scheduling considering communication overhead

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1459))

Abstract

This paper presents a new methodology for statically scheduling a cyclic data-flow graph whose node computation times can be represented by random variables. A communication cost issue is also considered as another uncertain factor in which each node from the graph can produce different amount of data depending on the probability of its computation time. Since such communication costs rely on the amount of transfered data, this overhead becomes uncertain as well. We propose an algorithm to take advantage of the parallelism across a loop iteration while hiding the communication overhead. The resulting schedule will be evaluated in terms of confidence probability—the probability of having a schedule completed before a certain time. Experimental results show that the proposed framework performs better than a traditional algorithm running on an input which assumes fixed average timing information.

This research was supported in part by the Royal Thai Government Scholarship and the NSF grant MIP 95-01006

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. U. Banerjee. Unimodular transformations of double loops. In Proceedings of the Workshop on Advances in Languages and Compilers for Parallel Processing, pages 192–219. IEEE, August 1990.

    Google Scholar 

  2. L. Chao, A. LaPaugh, and E. Sha. Rotation scheduling: A loop pipelining algorithm. In Proceedings of the 30th Design Automation Conference, pages 566–572, Dallas, TX, June 1993.

    Google Scholar 

  3. L.-F. Chao and E. H.-M. Sha. Static scheduling for synthesis of DSP algorithms on various models. Journal of VLSI Signal Processing, 10:207–223, 1995.

    Article  Google Scholar 

  4. W. Feller. An introduction to probability theory and its applications. John Wiley & Sons, New York, 1968.

    MATH  Google Scholar 

  5. E. M. Girczyc. Loop winding—a data flow approach to functional pipeline. In Proceedings of the International Symposium on Circuits and Systems, pages 382–385, May 1987.

    Google Scholar 

  6. K. Hwang. Advanced Computer Architecture: Parallelism, Scalability, Programmability. McGraw-Hill Series in Computer Science, New York, NY, 1993.

    Google Scholar 

  7. R. A. Kamin, G. B. Adams, and P. K. Dubey. Dynamic list-scheduling with finite resources. In Proceedings of the 1994 International Conference on Computer Design, pages 140–144, Cambridge, MA, October 1994.

    Google Scholar 

  8. I. Karkowski and R. H. J. M. Otten. Retiming synchronous circuitry with imprecise delays. In Proceedings of the 32nd Design Automation Conference, pages 322–326, San Francisco, CA, 1995.

    Google Scholar 

  9. A. A. Khan, C. L. McCreary, and M. S. Jones. A comparison of multiprocessor scheduling heuristics. In Proceedings of the 1994 International Conference on Parallel Processing, volume II, pages 243–250, 1994.

    Article  Google Scholar 

  10. T. Kim, N. Yonezawa, J. W. S. Liu, and C. L. Liu. A scheduling algorithm for conditional resource sharing — a hierachical reduction approach. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 13(4):425–438, April 1994.

    Article  Google Scholar 

  11. D. Ku and G. De Micheli. High-Level synthesis of ASICS under Timing and Synchronization constraints. Kluwer Academic, 1992.

    Google Scholar 

  12. D. Ku and G. De Micheli. Relative scheduling under timing constraints: Algorithm for high-level synthesis. IEEE transactions on CAD/ICAS, pages 697–718, June 1992.

    Google Scholar 

  13. M. Lam. Software pipelining. In Proceedings of the ACM SIGPLAN'88 Conference on Programming Language Design and Implementation, pages 318–328, Atlanta, GA, June 1988.

    Google Scholar 

  14. C. E. Leiserson and J. B. Saxe. Optimizing synchronous systems. Journal of VLSI and Computer Systems, 1(1):41–67, 1983.

    MATH  Google Scholar 

  15. C. E. Leiserson and J. B. Saxe. Retiming synchronous circuitry. Algorithmica, 6:5–35, 1991.

    Article  MATH  MathSciNet  Google Scholar 

  16. W. Li and K. Pingali. A singular loop transformation framework based on non-singular matrices. Technical Report TR 92-1294, Cornell University, Ithaca, NY, July 1992.

    Google Scholar 

  17. B. Lockyear and C. Ebeling. Optimal retiming of multi-phase, level-clocked circuits. In T. Knight and J. Savage, editors, Advanced Research in VLSI and Parallel Systems: Proceedings of the 1992 Brown/MIT Conference., pages 265–280, Cambridge, MA, 1992.

    Google Scholar 

  18. P. L. Meyer. Introductory Probability and Statistical Applications. Addison-Wesley, Reading, MA, 2nd edition, 1979.

    Google Scholar 

  19. N. L. Passos, E. Sha, and S. C. Bass. Loop pipelining for scheduling multi-dimensional systems via rotation. In Proceedings of the 31st Design Automation Conference, pages 485–490, June 1994.

    Google Scholar 

  20. D. A. Patterson and J. L. Hennessy. Computer architecture: A Quantitative approach. Morgan-Kaufman, 1996.

    Google Scholar 

  21. T. J. Ross. Fuzzy Logic with Engineering Applications. MC-Graw Hill, 1995.

    Google Scholar 

  22. S. Tongsima, E.-H. Sha, and N. L. Passos. Communcation-sensitive loop scheduling for DSP applications. IEEE Transactions on Signal Processing, 45(5):1309–1322, May 1997.

    Article  Google Scholar 

  23. M. E. Wolfe. High Performance Compilers for Parallel Computing, chapter 9.Addison-Wesley, Redwood City, CA, 1996.

    MATH  Google Scholar 

  24. M. E. Wolfe and M. S. Lam. A loop transformation theory and an algorithm to maximize parallelism. IEEE Transactions on Parallel and Distributed Systems, 2(4):452–471, October 1991.

    Article  Google Scholar 

  25. L. A. Zadeh. Fuzzy sets as a basis for a theory of possibility. Fuzzy Sets and Systems, 1:3–28, 1978.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dror G. Feitelson Larry Rudolph

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Tongsima, S., Chantrapornchai, C., Sha, E.H.M. (1998). Probabilistic loop scheduling considering communication overhead. In: Feitelson, D.G., Rudolph, L. (eds) Job Scheduling Strategies for Parallel Processing. JSSPP 1998. Lecture Notes in Computer Science, vol 1459. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053986

Download citation

  • DOI: https://doi.org/10.1007/BFb0053986

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64825-3

  • Online ISBN: 978-3-540-68536-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics