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

Probabilistic Loop Scheduling for Applications with Uncertain Execution Time

Published: 01 January 2000 Publication History

Abstract

One of the difficulties in high-level synthesis and compiler optimization is obtaining a good schedule without knowing the exact computation time of the tasks involved. The uncertain computation times of these tasks normally occur when conditional instructions are employed and/or inputs of the tasks influence the computation time. The relationship between these tasks can be represented as a data-flow graph where each node models the task associated with a probabilistic computation time. A set of edges represents the dependencies between tasks. In this research, we study scheduling and optimization algorithms taking into account the probabilistic execution times. Two novel algorithms, called probabilistic retiming and probabilistic rotation scheduling, are developed for solving the underlying nonresource and resource constrained scheduling problems, respectively. Experimental results show that probabilistic retiming consistently produces a graph with a smaller longest path computation time for a given confidence level, as compared with the traditional retiming algorithm that assumes a fixed worst-case and average-case computation times. Furthermore, when considering the resource constraints and probabilistic environments, probabilistic rotation scheduling gives a schedule whose length is guaranteed to satisfy a given probability requirement. This schedule is better than schedules produced by other algorithms that consider worst-case and average-case scenarios.

References

[1]
A. Aiken and A. Nicolau, “Development Environment for Horizontal Microcode,” <i>IEEE Trans. Software Eng.,</i> vol. 14, Feb. 1987.]]
[2]
A. Aiken and A. Nicolau, “Optimal Loop Parallelization,” <i>Proc. ACM SIGPLAN Conf. Programming Languages Design and Implementation,</i> pp. 308-317, June 1988.]]
[3]
U. Banerjee, “Unimodular Transformations of Double Loops,” <i>Proc. Workshop Advances in Languages and Compilers for Parallel Processing,</i> pp. 192-219, Aug. 1990.]]
[4]
P.P. Chang, et al., “Impact: An Architectural Framework for Multiple Instruction Issue Processor,” <i>Proc. 18th Int'l Symp. Computer Architecture,</i> pp. 266-275, 1991.]]
[5]
L. Chao A. LaPaugh and E. Sha, “Rotation Scheduling: A Loop Pipelining Algorithm,” <i>Proc. 30th Design Automation Conf.,</i> pp. 566-572, June 1993.]]
[6]
L. Chao and E. Sha, “Static Scheduling for Synthesis of DSP Algorithms on Various Models,” <i>J. VLSI Signal Processing,</i> pp. 207-223, Oct. 1995.]]
[7]
A.E. Eichenberger and E.S. Davidson, “Stage Scheduling: A Technique to Reduce the Register Requirements of a Modulo Schedule,” <i>Proc. 28th Int'l Symp. Microarchitechture,</i> pp. 338-349, Nov. 1995.]]
[8]
A.E. Eichenberger E.S. Davidson and S.G. Abraham, “Minimum Register Requirements for a Modulo Schedule,” <i>Proc. 27th Int'l Symp. Microarchitechture,</i> pp. 75-84, Nov. 1994.]]
[9]
J.A. Fisher, “Trace Scheduling: A Technique for Global Microcode Compaction,” <i>IEEE Trans. Computers,</i> vol. 30, no. 7, pp. 478-490, July 1981.]]
[10]
I. Foster, <i>Designing and Building Parallel Program: Concepts and Tools for Parallel Software Engineering.</i> Addison-Wesley, 1994.]]
[11]
R.A. Kamin G.B. Adams and P.K. Dubey, “Dynamic List-Scheduling with Finite Resources,” <i>Proc. 1994 Int'l Conf. Computer Design,</i> pp. 140-144, Oct. 1994.]]
[12]
I. Karkowski and R.H.J.M. Otten, “Retiming Synchronous Circuitry with Imprecise Delays,” <i>Proc. 32nd Design Automation Conf.,</i> pp. 322-326, 1995.]]
[13]
A.A. Khan C.L. McCreary and M.S. Jones, “A Comparison of Multiprocessor Scheduling Heuristics,” <i>Proc. 1994 Int'l Conf. Parallel Processing,</i> vol. II, pp. 243-250, 1994.]]
[14]
D. Ku and G. De Micheli, <i>High-Level Synthesis of ASICS under Timing and Synchronization Constraints.</i> Kluwer Academic, 1992.]]
[15]
D. Ku and G. De Micheli, “Relative Scheduling under Timing Constraints: Algorithm for High-Level Synthesis,” <i>IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems,</i> pp. 697-718, June 1992.]]
[16]
M. Lam, “Software Pipelining,” <i>Proc. ACM SIGPLAN '88 Conf. Programming Language Design and Implementation,</i> pp. 318-328, June 1988.]]
[17]
D.M. Lavery and W.W. Hwu, “Unrolling-Based Optimizations for Modulo Scheduling,” <i>Proc. 28th Int'l Symp. Microarchitechture,</i> pp. 327-337, Nov. 1995.]]
[18]
C.E. Leiserson and J.B. Saxe, “Retiming Synchronous Circuitry,” <i>Algorithmica,</i> vol. 6, pp. 5-35, 1991.]]
[19]
B.P. Lester, <i>The Art of Parallel Programming.</i> Englewood Cliffs, N.J.: Prentice Hall, 1993.]]
[20]
W. Li and K. Pingali, “A Singular Loop Transformation Framework Based on Non-Singular Matrices,” Technical Report TR 92-1294, Cornell Univ., Ithaca, N.Y., July 1992.]]
[21]
J. Llosa M. Valero and E. Ayguadé, “Heuristics for Register-Constrained Software Pipelining,” <i>Proc. 29th Int'l Symp. Microarchitechture,</i> pp. 250-261, Dec. 1996.]]
[22]
K.K. Parhi and D.G. Messerschmitt, “Static Rate-Optimal Scheduling of Iterative Data-Flow Programs via Optimum Unfolding,” <i>IEEE Trans. Computers,</i> vol. 40, no. 2, pp. 178-195, Feb. 1991.]]
[23]
N.L. Passos E. Sha and S.C. Bass, “Loop Pipelining for Scheduling Multi-Dimensional Systems via Rotation,” <i>Proc. 31st Design Automation Conf.,</i> pp. 485-490, June 1994.]]
[24]
B.R. Rau and J.A. Fisher, “Instruction-Level Parallel Processing,” <i>J. Supercomputing,</i> vol. 7, pp. 9-50, July 1993.]]
[25]
B.R. Rau and C.D. Glaeser, “Some Scheduling Techniques and an Easily Schedulable Horizontal Architecture for High Performance Scientific Computing,” <i>Proc. 14th Ann. Workshop Microprogramming,</i> pp. 183-198, Oct. 1981.]]
[26]
B. Ramakrishna Rau, “Iterative Modulo Scheduling: An Slgorithm for Software Pipelining Loops,” <i>Proc. 27th Ann. Int'l Symp. Microarchitecture,</i> pp. 63-74, Nov. 1994.]]
[27]
M.E. Wolfe, <i>High Performance Compilers for Parallel Computing,</i> chapter 9. Redwood City, Calif.: Addison-Wesley, 1996.]]
[28]
M.E. Wolfe and M.S. Lam, “A Loop Transformation Theory and an Algorithm to Maximize Parallelism,” <i>IEEE Trans. Parallel and Distributed Systems,</i> vol. 2, no. 4, pp. 452-471, Oct. 1991,]]
[29]
L.A. Zadeh, “Fuzzy Sets as a Basis for a Theory of Possibility,” <i>Fuzzy Sets and Systems,</i> vol. 1, pp. 3-28, 1978.]]

Cited By

View all
  • (2018)Energy constrained scheduling of stochastic tasksThe Journal of Supercomputing10.1007/s11227-017-2137-074:1(485-508)Online publication date: 1-Jan-2018
  • (2017)Optimal functional unit assignment and voltage selection for pipelined MPSoC with guaranteed probability on time performanceACM SIGPLAN Notices10.1145/3140582.308103652:5(41-50)Online publication date: 21-Jun-2017
  • (2017)Optimal functional unit assignment and voltage selection for pipelined MPSoC with guaranteed probability on time performanceProceedings of the 18th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3078633.3081036(41-50)Online publication date: 21-Jun-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image IEEE Transactions on Computers
IEEE Transactions on Computers  Volume 49, Issue 1
January 2000
96 pages
ISSN:0018-9340
Issue’s Table of Contents

Publisher

IEEE Computer Society

United States

Publication History

Published: 01 January 2000

Author Tags

  1. Scheduling
  2. loop pipelining
  3. probabilistic approach
  4. retiming
  5. rotation scheduling.

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Energy constrained scheduling of stochastic tasksThe Journal of Supercomputing10.1007/s11227-017-2137-074:1(485-508)Online publication date: 1-Jan-2018
  • (2017)Optimal functional unit assignment and voltage selection for pipelined MPSoC with guaranteed probability on time performanceACM SIGPLAN Notices10.1145/3140582.308103652:5(41-50)Online publication date: 21-Jun-2017
  • (2017)Optimal functional unit assignment and voltage selection for pipelined MPSoC with guaranteed probability on time performanceProceedings of the 18th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3078633.3081036(41-50)Online publication date: 21-Jun-2017
  • (2017)Energy Efficiency Optimization for Communication of Air-Based Information Network with Guaranteed Timing ConstraintsJournal of Signal Processing Systems10.1007/s11265-016-1125-686:2-3(299-312)Online publication date: 1-Mar-2017
  • (2016)Optimal functional-unit assignment and buffer placement for probabilistic pipelinesProceedings of the Eleventh IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis10.1145/2968456.2968467(1-10)Online publication date: 1-Oct-2016
  • (2012)Selecting proper wireless network interfaces for user experience enhancement with guaranteed probabilityJournal of Parallel and Distributed Computing10.1016/j.jpdc.2012.08.00672:12(1565-1575)Online publication date: 1-Dec-2012
  • (2012)Cost Minimization with HPDFG and Data Mining for Heterogeneous DSPJournal of Signal Processing Systems10.1007/s11265-010-0546-x67:3(213-228)Online publication date: 1-Jun-2012
  • (2009)Online energy-saving algorithm for sensor networks in dynamic changing environmentsJournal of Embedded Computing10.5555/1839622.18396263:4(289-298)Online publication date: 1-Dec-2009
  • (2009)Energy minimization for heterogeneous wireless sensor networksJournal of Embedded Computing10.5555/1551877.15518813:2(109-117)Online publication date: 1-Apr-2009
  • (2009)Heterogeneous real-time embedded software optimization considering hardware platformProceedings of the 2009 ACM symposium on Applied Computing10.1145/1529282.1529651(1637-1641)Online publication date: 8-Mar-2009
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media