1992 · 84 citations · 12 references
ComputingComputer ScienceComputer SystemsCompilersComputer ArchitectureOperating SystemsHeterogeneous System ArchitectureMultiprocessor SystemsParallel ArchitecturesParallel Computer ArchitectureParallel Computing SystemsParallel Runtime SystemsFeedback MechanismsHeterogeneous Computing SystemsHeterogeneous Runtime SystemsOperating System ArchitectureParallel ProcessingParallel SchedulingParallel Task ExecutionRuntime Systems For Parallelism
This paper describes an integrated architecture, compiler, runtime, and operating system solution to exploiting heterogeneous parallelism. The architecture is a pipelined multi-threaded multiprocessor, enabling the execution of very fine (multiple operations within an instruction) to very coarse (multiple jobs) parallel activities. The compiler and runtime focus on managing parallelism within a job, while the operating system focuses on managing parallelism across jobs. By considering the entire system in the design, we were able to smoothly interface its four components. While each component is primarily responsible for managing its own level of parallel activity, feedback mechanisms between components enable resource allocation and usage to be dynamically updated. This dynamic adaptation to changing requirements and available resources fosters both high utilization of the machine and the efficient expression and execution of parallelism.
12
Robert Alverson, David Callahan, Daniel Cummings et al. · 2014 · 649 citations
R. S. Nikhil, Gregory M. Papadopoulos, Arvind Arvind · 1992 · 262 citations