Results 1  10
of
102,196
Learning to Schedule StraightLine Code
, 1997
"... Execution speed of programs on modern computer architectures is sensitive, by a factor of two or more, to the order in which instructions are presented to the processor. To realize potential execution efficiency, it is now customary for an optimizing compiler to employ a heuristic algorithm for inst ..."
Abstract

Cited by 28 (4 self)
 Add to MetaCart
straightline code, also known as a basic block of instructions. Our empirical results show that just a few features are adequate for quite good performance at this task for a real modern processor, and that any of several supervised learning methods perform nearly optimally with respect to the features
Optimization of Straight–Line Code Revisited
, 2005
"... In this report we study the e#ect of an optimizing algorithm for straightline code which first constructs a directed acyclic graph representing the given program and then generates code from it. We show that this algorithm produces optimal code with respect to the classical transformations such as ..."
Abstract
 Add to MetaCart
In this report we study the e#ect of an optimizing algorithm for straightline code which first constructs a directed acyclic graph representing the given program and then generates code from it. We show that this algorithm produces optimal code with respect to the classical transformations
Optimization of Straight–Line Code Revisited
"... We study the effect of an optimizing algorithm for straight–line code which first constructs a directed acyclic graph representing the given program and then generates code from it. We show that this algorithm produces optimal code with respect to the classical transformations known as Constant Fold ..."
Abstract
 Add to MetaCart
We study the effect of an optimizing algorithm for straight–line code which first constructs a directed acyclic graph representing the given program and then generates code from it. We show that this algorithm produces optimal code with respect to the classical transformations known as Constant
Wordlength Optimization Beyond Straight Line Code
"... The silicon area benefits that result from wordlength optimization have been widely reported by the FPGA community. However, to date, most approaches are restricted to straight line code, or code that can be converted into straight line code using techniques such as loopunrolling. In this paper, w ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
The silicon area benefits that result from wordlength optimization have been widely reported by the FPGA community. However, to date, most approaches are restricted to straight line code, or code that can be converted into straight line code using techniques such as loopunrolling. In this paper
Scheduling Vector Straight Line Code on Vector Processors
 GRAHAM (ED.): CODE GENERATION  CONCEPTS, TOOLS, TECHNIQUES. SPRINGER WORKSHOPS IN COMPUTING SERIES (WICS
, 1992
"... We present an algorithm to schedule basic blocks of vector threeaddressinstructions. This algorithm is suited for a special class of vector processors containing a buffer (register file) which may be partitioned arbitrarily into vector registers by the user. The algorithm computes the best ratio of ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We present an algorithm to schedule basic blocks of vector threeaddressinstructions. This algorithm is suited for a special class of vector processors containing a buffer (register file) which may be partitioned arbitrarily into vector registers by the user. The algorithm computes the best ratio of vector register spilling to strip mining, taking the vector length and the buffer size into consideration, as well as several machine parameters of the target architecture. We apply the algorithm to groups of vector instructions within a basic block that are quasiscalar, i.e. all vectors occurring in the group must have one fixed length L.
Efficient Parallel Evaluation of Straightline Code and Arithmetic Circuits
 SIAM J. Comput
, 1988
"... A new parallel algorithm is given to evaluate a straight line program. The algorithm evaluates a program over a commutative semiring R of degree d and size n in time O(log n(log nd)) using M(n) processors, where M(n) is the number of processors required for multiplying n \Theta n matrices over the ..."
Abstract

Cited by 32 (5 self)
 Add to MetaCart
A new parallel algorithm is given to evaluate a straight line program. The algorithm evaluates a program over a commutative semiring R of degree d and size n in time O(log n(log nd)) using M(n) processors, where M(n) is the number of processors required for multiplying n \Theta n matrices over
Scheduling StraightLine Code Using Reinforcement Learning and Rollouts
 IN PROCEEDINGS OF NEURAL INFORMATION PROCESSING SYMPOSIUM
, 1999
"... The execution order of a block of computer instructions on a pipelined machine can make a difference in its running time by a factor of two or more. In order to achieve the best possible speed, compilers use heuristic schedulers appropriate to each specific architecture implementation. However, th ..."
Abstract

Cited by 21 (2 self)
 Add to MetaCart
The execution order of a block of computer instructions on a pipelined machine can make a difference in its running time by a factor of two or more. In order to achieve the best possible speed, compilers use heuristic schedulers appropriate to each specific architecture implementation. However, these heuristic schedulers are timeconsuming and expensive to build. We present empirical results using both rollouts and reinforcement learning to construct heuristics for scheduling basic blocks. In simulation, the rollout scheduler outperformed a commercial scheduler, and the reinforcement learning scheduler performed almost as well as the commercial scheduler.
A MatrixMatrix Multiplication Approach to the Automatic Differentiation and Parallelization of StraightLine Codes
"... A Straightline code, which consists of assignment, addition, and multiplication statements, is an abstraction of a serial computer program to compute a function with n inputs. Given a serial straightline code with N statements, we derive an algorithm that automatically evaluates not only the funct ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
A Straightline code, which consists of assignment, addition, and multiplication statements, is an abstraction of a serial computer program to compute a function with n inputs. Given a serial straightline code with N statements, we derive an algorithm that automatically evaluates not only
Genetic Learning of Computer Programs Represented by Straight Line Code
"... Abstract. To successfully apply evolutionary algorithms to the solution of increasingly complex problems we must develop effective techniques for evolving solutions in the form of interacting coadapted subcomponents. In this paper we present an architecture which involves cooperative coevolution of ..."
Abstract
 Add to MetaCart
of two subcomponents: a genetic program and an evolution strategy. As main difference with work previously done, our genetic program evolves straight line programs representing functional expressions, instead of tree structures. The evolution strategy searches for good values for the numerical terminal
Article written by Report on: Efficient Parallel Evaluation of Straightline Code and Arithmetic Circuits
"... Most of the fast algorithms now known seem to fall into a few general classes. The most common are ones based on repetition or iteration, classic examples being Euclid's algorithm for GCD, Newton's method for Find Root and the Gaussian elimination method for Linear Solve. Starting in the 1 ..."
Abstract
 Add to MetaCart
Most of the fast algorithms now known seem to fall into a few general classes. The most common are ones based on repetition or iteration, classic examples being Euclid's algorithm for GCD, Newton's method for Find Root and the Gaussian elimination method for Linear Solve. Starting in the 1950s it began to be realized that fast algorithms could be based on nested or
Results 1  10
of
102,196