Title
Scheduling irregular parallel computations on hierarchical caches
Abstract
For nested-parallel computations with low depth (span, critical path length) analyzing the work, depth, and sequential cache complexity suffices to attain reasonably strong bounds on the parallel runtime and cache complexity on machine models with either shared or private caches. These bounds, however, do not extend to general hierarchical caches, due to limitations in (i) the cache-oblivious (CO) model used to analyze cache complexity and (ii) the schedulers used to map computation tasks to processors. This paper presents the parallel cache-oblivious (PCO) model, a relatively simple modification to the CO model that can be used to account for costs on a broad range of cache hierarchies. The first change is to avoid capturing artificial data sharing among parallel threads, and the second is to account for parallelism-memory imbalances within tasks. Despite the more restrictive nature of PCO compared to CO, many algorithms have the same asymptotic cache complexity bounds. The paper then describes a new scheduler for hierarchical caches, which extends recent work on "space-bounded schedulers" to allow for computations with arbitrary work imbalance among parallel subtasks. This scheduler attains provably good cache performance and runtime on parallel machine models with hierarchical caches, for nested-parallel computations analyzed using the PCO model. We show that under reasonable assumptions our scheduler is "work efficient" in the sense that the cost of the cache misses are evenly balanced across the processors---i.e., the runtime can be determined within a constant factor by taking the total cost of the cache misses analyzed for a computation and dividing it by the number of processors. In contrast, to further support our model, we show that no scheduler can achieve such bounds (optimizing for both cache misses and runtime) if work, depth, and sequential cache complexity are the only parameters used to analyze a computation.
Year
DOI
Venue
2011
10.1145/1989493.1989553
SPAA
Keywords
Field
DocType
asymptotic cache complexity bound,good cache performance,general hierarchical cache,sequential cache complexity,sequential cache complexity suffices,private cache,cache complexity,irregular parallel computation,hierarchical cache,nested-parallel computation,cache hierarchy,parallel computer,parallel algorithm,analysis of parallel algorithms,critical path
Cache-oblivious algorithm,Cache invalidation,Cache pollution,Cache,Computer science,Parallel computing,Cache algorithms,Cache coloring,Bus sniffing,Smart Cache,Distributed computing
Conference
Citations 
PageRank 
References 
28
0.92
16
Authors
4
Name
Order
Citations
PageRank
Guy E. Blelloch12927207.30
Jeremy T. Fineman258736.10
Phillip B. Gibbons36863624.14
Harsha Vardhan Simhadri422613.35