Title
Celling SHIM: compiling deterministic concurrency to a heterogeneous multicore
Abstract
Parallel architectures are the way of the future, but are notoriously difficult to program. In addition to the low-level constructs they often present (e.g., locks, DMA, and non-sequential memory models), most parallel programming environments admit data races: the environment may make nondeterministic scheduling choices that can change the function of the program. We believe the solution is model-based design, where the programmer is presented with a constrained higher-level language that prevents certain unwanted behavior. In this paper, we describe a compiler for the SHIM scheduling-independent concurrent language that generates code for the Cell Broadband heterogeneous multicore processor. The complexity of the code our compiler generates relative to the source illustrates how difficult it is to manually write code for the Cell. We demonstrate the efficacy of our compiler on two examples. While the SHIM language is (by design) not ideal for every algorithm, it works well for certain applications and simplifies the parallel programming process, especially on the Cell architecture.
Year
DOI
Venue
2009
10.1145/1529282.1529649
SAC
Keywords
Field
DocType
certain unwanted behavior,certain application,cell broadband heterogeneous multicore,higher-level language,celling shim,parallel programming environment,shim scheduling-independent concurrent language,parallel programming process,parallel architecture,cell architecture,deterministic concurrency,shim language,computer science,compiler,concurrency,model based design,shim,multicore processors,memory model
Architecture,Programmer,Programming language,Nondeterministic algorithm,Concurrency,Computer science,Scheduling (computing),Parallel computing,Compiler,Multi-core processor,Shim (computing)
Conference
Citations 
PageRank 
References 
7
0.47
20
Authors
2
Name
Order
Citations
PageRank
Nalini Vasudevan1503.88
Stephen A. Edwards21443109.65