Scheduling arithmetic and load operations in parallel with no spilling
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Optimal scheduling of arithmetic operations in parallel with memory access (preliminary version)
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Generation of Optimal Code for Arithmetic Expressions
Journal of the ACM (JACM)
Optimal Code Generation for Expression Trees
Journal of the ACM (JACM)
Code Generation for a One-Register Machine
Journal of the ACM (JACM)
Code Generation for Expressions with Common Subexpressions
Journal of the ACM (JACM)
Communications of the ACM - Special issue on computer architecture
Computer Architecture and Parallel Processing
Computer Architecture and Parallel Processing
Instruction scheduling beyond basic blocks
IBM Journal of Research and Development
Instruction Scheduling Across Control Flow
Scientific Programming
Heuristic chaining in directed acyclic graphs
Computer Languages
Hi-index | 14.98 |
Chaining is the ability to pipeline two or more vector instructions on Cray-1 like machines. The authors show how to optimally use this feature to compute (vector) expression trees in the context of automatic code generation. They present a linear time scheduling algorithm for finding an optimal order of evaluation for a machine with a bounded number of registers.