Skip to main content

Instruction Scheduling with Timing Constraints on a Single RISC Processor with 0/1 Latencies

  • Conference paper
  • First Online:

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

Abstract

In this paper, We propose a faster algorithm for the following instruction scheduling problem: Given a set of UET (Unit Execution Time) instructions with precedence constraints in the form of a DAG (Directed Acyclic Graph), latency constraints where latencies between any two instructions are restricted to be either 0 or 1, timing constraints in the form of individual integer release times and deadlines and a single RISC processor, find a feasible schedule which satisfies all constraints. The time complexity of our algorithm is O(n 2 log n) + min{O(ne), O(n 2.376)}, where n is the number of instructions and e is the number of edges in the precedence graph. Our algorithm is faster than the existing algorithm which runs in O(n 3α(n)) time, where α(n) is the inverse of Ackermann function. In addition, our algorithm can be used to solve the maximum lateness minimization problem in O(n 2log2 n + min{ne, n 2.376}) time.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Leung, Allen, Krishna V. Palem and Amir Pnueli. A fast algorithm for scheduling time-constrained instructions on processors with ILP. Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques. Paris, France, 1998.

    Google Scholar 

  2. Palem, Krishna. V. and Barbara B. Simon. Scheduling time-critical instructions on RISC machines. ACM Transactions on Programming Languages and Systems 15(4), Sept. 1993, 632–658.

    Google Scholar 

  3. Garey, M.R. and D. S. Johnson. Two processor scheduling with start-times and deadlines. SIAM J. Comput. 6, 1977, 416–426.

    Article  MATH  MathSciNet  Google Scholar 

  4. Garey, M.R. and D. S. Johnson. Scheduling tasks with nonuniform deadlines on two processors. J. ACM 23, 1976, 461–467.

    Article  MATH  MathSciNet  Google Scholar 

  5. Bernstein, D. and I. Gertner. Scheduling expressions on a pipelined processor with a maximal delay of one cycle. ACM Transactions on Programming Languages and Systems, 11(1), 1989, 57–66.

    Article  MATH  MathSciNet  Google Scholar 

  6. Bruno, J. Jones and K. So. Deterministic scheduling with pipelined processors. IEEE Transactions on Computers, 29, April 1980, 308–316.

    Google Scholar 

  7. Finta, L. and Z. Liu. Single machine scheduling subject to precedence delays. Discrete Applied Mathematics 70, 1996, 247–266.

    Article  MATH  MathSciNet  Google Scholar 

  8. Hennessy, J. and T. Gross. Postpass code optimization of pipeline constraints. ACM Transactions on Programming Languages and Systems 5(3), 1983.

    Google Scholar 

  9. Warren, H. Instruction scheduling for the IBM RISC system/6000 processors. IBM Journal of Research and Development, 1990, 85–92.

    Google Scholar 

  10. CoffmanJr, E.G. and R. L. Graham. Optimal scheduling for two processors. Acta Informatica 1, 1972, 200–213.

    Article  MathSciNet  Google Scholar 

  11. Gabow H. N. An almost linear-time algorithm for two processor scheduling. J. ACM 29, 1982, 766–780.

    Article  MATH  MathSciNet  Google Scholar 

  12. Gabow H.N and R. E. Tarjan. A linear-time algorithm for a special case of disjoint set union. Journal of Computer and System Sciences 30, 1985, 209–221.

    Article  MATH  MathSciNet  Google Scholar 

  13. Tarjan, R. E. Efficient of good but not linear set union algorithm. J. ACM 22 April 1975, 237–246.

    Google Scholar 

  14. Radin, G. The 801 minicomputer. IBM J. Res. Dev. 27, 1983, 237–246.

    Article  Google Scholar 

  15. Katevenis, M. Reduced instruction set Computer architecture for VLSI. MIT Press, Cambridge, Mass., 1984.

    Google Scholar 

  16. Coppersmith, D. and S. Winograd. Matrix Multiplication via Arithmetic Progressions. J. of Symbolic Computation, 9, 1990, 251–280.

    Article  MATH  MathSciNet  Google Scholar 

  17. Boas P. V. E. Preserving order in a forest in less than logarithmic time. 16th Annual Symposium of Foundation of Computer Science, IEEE Computer Society, Long Beach, CA, 1978, 75–84.

    Google Scholar 

  18. Aho, A. V., J. E. Hopcroft and J. D. Ullman. The design and analysis of computer algorithms. Addison-Wesley, Reading, Mass., 1974.

    MATH  Google Scholar 

  19. Coffman, E.G. Computer and Job-Shop Scheduling Theory. John Wiley and Sons, New York, 1976.

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wu, H., Jaffar, J., Yap, R. (2000). Instruction Scheduling with Timing Constraints on a Single RISC Processor with 0/1 Latencies. In: Dechter, R. (eds) Principles and Practice of Constraint Programming – CP 2000. CP 2000. Lecture Notes in Computer Science, vol 1894. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45349-0_33

Download citation

  • DOI: https://doi.org/10.1007/3-540-45349-0_33

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-45349-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics