[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to main content

Fine-grain scheduling under resource constraints

  • Starting Small: Fine-Grain Parallelism
  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1994)

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

  • 165 Accesses

Abstract

Many present-day microprocessors have fine grain parallelism, be it in the form of a pipeline, of multiple functional units, or replicated processors. The efficient use of such architectures depends on the capability of the compiler to schedule the execution of the object code in such a way that most of the available hardware is in use while complying with data dependences. In the case of one simple loop, the schedule may be expressed as an affine form in the loop counter. The coefficient of the loop counter in the schedule is the initiation interval, and gives the mean rate at which loop bodies may be executed. The dependence constraints may be converted to linear inequalities in the coefficients of a closed form schedule, and then solved by classical linear programming algorithms. The resource constraints, however, translate to non-linear constraints. These constraints become linear if the initiation interval is known. This leads to a fast searching algorithm, in which the initiation interval is increased until a feasible solution is found.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Vincent H. Van Dongen, Guang R. Gao, and Qi Ning. A polynomial time method for optimal software pipelining. In Luc Bougé, Michel Cosnard, Yves Robert, and Denis Trystram, editors, Parallel Processing: CONPAR 92-VAPP V, pages 613–624, Springer, LNCS 634, June 1992.

    Google Scholar 

  2. Paul Feautrier. Asymptotically efficent algorithms for parallel architectures. In M. Cosnard and C. Girault, editors, Decentralized System, pages 273–284, IFIP WG 10.3, North-Holland, December 1989.

    Google Scholar 

  3. Paul Feautrier. Dataflow analysis of scalar and array references. Int. J. of Parallel Programming, 20(1):23–53, February 1991.

    Google Scholar 

  4. Paul Feautrier. Some efficient solutions to the affine scheduling problem, I, one dimensional time. Int. J. of Parallel Programming, 21(5):313–348, October 1992.

    Google Scholar 

  5. Paul Feautrier. Some efficient solutions to the affine scheduling problem, II, multidimensional time. Int. J. of Parallel Programming, 21(6):389–420, December 1992.

    Google Scholar 

  6. J.A. Fisher. The VLIW machine: a multiprocessor for compiling scientific code. Computer, 45–53, July 1984.

    Google Scholar 

  7. Franco Gasperoni and Uwe Schwiegelshohn. Scheduling loops on parallel processors: a simple algorithm with close to optimum performance. In Luc Bougé, Michel Cosnard, Yves Robert, and Denis Trystram, editors, Parallel Processing: CONPAR 92-VAPP V, pages 625–636, Springer, LNCS 634, June 1992.

    Google Scholar 

  8. Monica Lam. Software pipelining: an effective scheduling technique for VLIW machines. In Proc. of the SIGPLAN '88 Conf. on Programming Language Design and Implementation, pages 318–328, Atlanta, June 1988.

    Google Scholar 

  9. Christophe Mauras, Patrice Quinton, Sanjay Rajopadhye, and Yannick Saouter. Scheduling Affine Parameterized Recurrences by means of Variable Dependent Timing Functions. Technical Report 1204, INRIA, April 1990.

    Google Scholar 

  10. Patrice Quinton. The systematic design of systolic arrays. In F. Fogelman, Y. Robert, and M. Tschuente, editors, Automata networks in Computer Science, pages 229–260, Manchester University Press, December 1987.

    Google Scholar 

  11. B. Ramakrishna Rau and Joseph A. Fisher. Instruction-level parallel processing: history, overview and perspective. The Journal of Supercomputing, 7:9–50, 1993.

    Google Scholar 

  12. B. R. Rau and C. D. Glaeser. Some scheduling techniques and an easily schedulable horizontal architecture for high-performance scientific computing. In IEEE/ACM 14th Annual Microprogramming Workshop, October 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Keshav Pingali Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Feautrier, P. (1995). Fine-grain scheduling under resource constraints. In: Pingali, K., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1994. Lecture Notes in Computer Science, vol 892. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0025867

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58868-9

  • Online ISBN: 978-3-540-49134-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics