1994 · 11 citations · 12 references
ComputingComputer EngineeringComputer ScienceCompilersComputer ArchitectureProgramming LanguagesCode GenerationCompiler ConstructionCpu SchedulingInstruction SchedulingSpeculative ExecutionSynchronization PrimitivesCode OptimizationDynamic Code GenerationRuntime Code Generation
: Multithreaded architectures hold many promises: the exploitation of intra-thread locality and the latency tolerance of multithreaded synchronization can result in a more efficient processor utilization and higher scalability. The challenge for a code generation scheme is to make effective use of the underlying hardware by generating large threads with a large degree of internal locality without limiting the program level parallelism. Top-down code generation, where threads are created directly from the compiler's intermediate form, is effective at creating a relatively large thread. However, having only a limited view of the code at any one time limits the thread size. These top-down generated threads can therefore be optimized by global, bottom-up optimization techniques. In this paper, we present such bottom-up optimizations and evaluate their effectiveness in terms of overall performance and specific thread characteristics such as size, length, instruction level parallelism, numbe...
12
Robert Alverson, David Callahan, Daniel Cummings et al. · 2014 · 649 citations
Gregory M. Papadopoulos, David Culler · 1998 · 284 citations
R. S. Nikhil, Gregory M. Papadopoulos, Arvind Arvind · 1992 · 262 citations