Font Size: a A A

Gossamer: A lightweight approach to using multicore machines

Posted on:2011-07-26Degree:Ph.DType:Dissertation
University:The University of ArizonaCandidate:Roback, Joseph AnthonyFull Text:PDF
GTID:1468390011971525Subject:Computer Science
Abstract/Summary:
The key to performance improvements in the multicore era is for software to utilize the newly available concurrency. Consequently, programmers will have to learn new programming techniques, and software systems will have to be able to manage the parallelism effectively. The challenge is to do so simply, portably, and efficiently.;This dissertation presents a lightweight programming framework called Gossamer that is easy to use, enables the solution of a broad range of parallel programming problems, and produces efficient code. Gossamer supports task and recursive parallelism, iterative parallelism, domain decomposition, pipelined computations, and MapReduce computations. Gossamer contains (1) a set of high-level annotations that one adds to a sequential program to specify concurrency and synchronization, (2) a source-to-source translator that produces an optimized program, and (3) a run-time system that provides efficient threads and synchronization. The annotation-based programming model simplifies writing parallel programs by allowing the programmer to concentrate on the application and not the extensive book-keeping involved with concurrency and synchronization; moreover, the annotations never reference any particulars of the underlying hardware.
Keywords/Search Tags:Gossamer, Concurrency
Related items