Proceedings Article10.1109/ICTAI.2006.92
Optimal Basic Block Instruction Scheduling for Multiple-Issue Processors Using Constraing Programming
Abid M. Malik,J. McInnes,P. van Beek +2 more
- 13 Nov 2006
- pp 279-287
TL;DR: The optimal scheduler is presented, which is a scheduler that finds provably optimal schedules for basic blocks using techniques from constraint programming, and was very robust on the SPEC 2000 integer and floating point benchmarks.
read more
Abstract: Instruction scheduling is one of the most important steps for improving the performance of object code produced by a compiler. A fundamental problem that arises in instruction scheduling is to find a minimum length schedule for a basic block - a straight-line sequence of code with a single entry point and a single exit point - subject to precedence, latency, and resource constraints. Solving the problem exactly is NP-complete, and heuristic approaches are currently used in most compilers. In contrast, we present a scheduler that finds provably optimal schedules for basic blocks using techniques from constraint programming. In developing our optimal scheduler, the key to scaling up to large, real problems was in the development of preprocessing techniques for improving the constraint model. We experimentally evaluated our optimal scheduler on the SPEC 2000 integer and floating point benchmarks. On this benchmark suite, the optimal scheduler was very robust -all but a handful of the hundreds of thousands of basic blocks in our benchmark suite were solved optimally within a reasonable time limit - and scaled to the largest basic blocks, including basic blocks with up to 2600 instructions. This compares favorably to the best previous exact approaches
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Book
Handbook of Constraint Programming
Francesca Rossi,Peter van Beek,Toby Walsh +2 more
- 01 Jan 2006
TL;DR: Researchers from other fields should find in this handbook an effective way to learn about constraint programming and to possibly use some of the constraint programming concepts and techniques in their work, thus providing a means for a fruitful cross-fertilization among different research areas.
On universal restart strategies for backtracking search
Huayue Wu,Peter van Beek +1 more
- 23 Sep 2007
TL;DR: This work considers the commonly occurring scenario where one is to solve an ensemble of instances using a backtracking algorithm and wish to learn a good restart strategy for the ensemble and proposes a simple approach for learning good universal restart strategies.
Bounded memory scheduling of dynamic task graphs
Dragos Sbirlea,Zoran Budimlić,Vivek Sarkar +2 more
- 24 Aug 2014
TL;DR: B bounded memory scheduling (BMS) is proposed for parallel programs expressed as dynamic task graphs, in which an upper bound is imposed on the program's peak memory, and it is shown that BMS gracefully spans the spectrum between fully parallel and serial execution with decreasing memory bounds.
18
•Dissertation
Constraint programming techniques for optimal instruction scheduling
Abid M. Malik
- 01 Jan 2008
TL;DR: This thesis presents a constraint programming approach to the superblock and basic block instruction scheduling problems for both idealized and realistic architectures, and results compare favorably to recent work on optimal integrated code generation, which is based on integer programming.
Learning Heuristics for the Superblock Instruction Scheduling Problem
TL;DR: In this article, a decision tree learning algorithm was used to induce a heuristic from the training data and compared with the best previously proposed, handcrafted heuristics for superblock scheduling on the SPEC 2000 and MediaBench benchmark suites.
References
•Book
Computers and Intractability: A Guide to the Theory of NP-Completeness
Michael Randolph Garey,David S. Johnson +1 more
- 01 Jan 1979
TL;DR: The second edition of a quarterly column as discussed by the authors provides a continuing update to the list of problems (NP-complete and harder) presented by M. R. Garey and myself in our book "Computers and Intractability: A Guide to the Theory of NP-Completeness,” W. H. Freeman & Co., San Francisco, 1979.
•Book
Computer Architecture: A Quantitative Approach
John L. Hennessy,David A. Patterson +1 more
- 01 Dec 1989
TL;DR: This best-selling title, considered for over a decade to be essential reading for every serious student and practitioner of computer design, has been updated throughout to address the most important trends facing computer designers today.
12.6K
•Book
Advanced Compiler Design and Implementation
Steven S. Muchnick
- 01 Jan 1997
TL;DR: Advanced Compiler Design and Implementation by Steven Muchnick Preface to Advanced Topics
2.6K
•Book
Constraint - based scheduling : applying constraint programming to scheduling problems
Philippe Baptiste,Claude Le Pape,Wim Nuijten +2 more
- 01 Jan 2001
TL;DR: This book is to provide an overview of the most widely used Constraint-Based Scheduling techniques and provides a model of the constraints that are the most often encountered in scheduling problems.
576
Related Papers (5)
John L. Hennessy,David A. Patterson +1 more
- 01 Dec 1989
Steven S. Muchnick
- 01 Jan 1997
Chris Lattner,Vikram Adve +1 more
- 20 Mar 2004