Trace scheduling is a global compaction technique for transforming sequential programs into parallel code. When this investigation began, trace scheduling was unimplemented and many serious questions of appropriateness and effectiveness needed to be solved. This paper addresses questions of its applicability to ordinary programming for Very Long Instruction Word machines. We developed practical methods of exploiting this parallelism (e.g. memory anti-aliasing). To justify and better understand the dynamic interaction between trace scheduling and anti-aliasing, we designed a more formal model in which we proved the correctness of trace scheduling and showed that it terminates. This in turn allowed us to analyze our flow information...
We explore the use of compiler optimizations, which optimize the layout of instructions in memory. T...
Trace cache, an instruction fetch technique that reduces taken branch penalties by storing and fetch...
Abstract. Memory traces record the addresses touched by a program during its execution, enabling man...
Microcode compaction is the conversion of sequential microcode into efficient parallel (horizontal) ...
instruction-level parallelism, compilers, VLIW, superscalar, code generation Trace Scheduling-2 is a...
Event tracing of applications under dynamic execution is crucial for performance modeling, optimizat...
High performance computer architectures increasingly use compile-time instruction scheduling to reor...
Along with commercial chip-multiprocessors (CMPs) integrating more and more cores, memory systems ar...
In high-performance processors, increasing the number of instructions fetched and executed in parall...
Abstract. Alias analysis, traditionally performed statically, is unsuited for a dynamic binary trans...
We present a novel automatic parallelization approach that uses traces. Our approach uses a binary r...
To expose sufficient instruction-level parallelism (ILP) to make effective use of wide-issue supersc...
To expose sufficient instruction-level parallelism (ILP) to make effective use of wide-issue supersc...
By compiling ordinary scientific applications programs with a radical technique called trace schedul...
Abstract. Tracing parallel programs to observe their performance introduces in-trusion as the result...
We explore the use of compiler optimizations, which optimize the layout of instructions in memory. T...
Trace cache, an instruction fetch technique that reduces taken branch penalties by storing and fetch...
Abstract. Memory traces record the addresses touched by a program during its execution, enabling man...
Microcode compaction is the conversion of sequential microcode into efficient parallel (horizontal) ...
instruction-level parallelism, compilers, VLIW, superscalar, code generation Trace Scheduling-2 is a...
Event tracing of applications under dynamic execution is crucial for performance modeling, optimizat...
High performance computer architectures increasingly use compile-time instruction scheduling to reor...
Along with commercial chip-multiprocessors (CMPs) integrating more and more cores, memory systems ar...
In high-performance processors, increasing the number of instructions fetched and executed in parall...
Abstract. Alias analysis, traditionally performed statically, is unsuited for a dynamic binary trans...
We present a novel automatic parallelization approach that uses traces. Our approach uses a binary r...
To expose sufficient instruction-level parallelism (ILP) to make effective use of wide-issue supersc...
To expose sufficient instruction-level parallelism (ILP) to make effective use of wide-issue supersc...
By compiling ordinary scientific applications programs with a radical technique called trace schedul...
Abstract. Tracing parallel programs to observe their performance introduces in-trusion as the result...
We explore the use of compiler optimizations, which optimize the layout of instructions in memory. T...
Trace cache, an instruction fetch technique that reduces taken branch penalties by storing and fetch...
Abstract. Memory traces record the addresses touched by a program during its execution, enabling man...