1995 · 12 citations · 10 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureParallel AlgorithmsParallel ComputingConcurrent ProgrammingData ParallelismParallel Algorithm DesignParallel ComputationParallel Programming ModelsTask ParallelismLoop ParallelizationMultithreadingParallel ProgrammingThread ParallelismThread-based Parallelism
Due to the large amount of potential parallelism, resource management is a critical issue in multithreaded architectures. The challenge in code generation is to control the parallelism without reducing the machines ability to exploit it. Controlled parallelism reduces idle time, communication, and delay caused by synchronization. At the same time it increases the potential for exploitation of program *data structure* locality. In this paper we present and evaluate two methods, slicing and chunking, to control program parallelism. We present the compilation strategy and evaluate its effectiveness in terms of performance characteristics such as run time and matching store occupancy. Keywords: multithreadedarchitectures, code generation, quantitative evaluation, control of parallelism. 1 Introduction Multithreading has been proposed as an execution model for massively parallel processors. Its approach is to hide latency by switching among a set of ready threads and thus improve the proc...
10
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