Return to search

Gossamer: A Lightweight Approach to Using Multicore Machines

The key to performance improvements in the multicore era is for software toutilize the newly available concurrency. Consequently, programmers will have tolearn new programming techniques, and software systems will have to be able tomanage the parallelism effectively. The challenge is to do so simply, portably,and efficiently.This dissertation presents a lightweight programming framework called Gossamerthat is easy to use, enables the solution of a broad range of parallelprogramming problems, and produces efficient code. Gossamer supports task andrecursive parallelism, iterative parallelism, domain decomposition, pipelinedcomputations, and MapReduce computations. Gossamer contains (1) a set ofhigh-level annotations that one adds to a sequential program to specifyconcurrency and synchronization, (2) a source-to-source translator that producesan optimized program, and (3) a run-time system that provides efficient threadsand synchronization. The annotation-based programming model simplifies writingparallel programs by allowing the programmer to concentrate on the applicationand not the extensive bookkeeping involved with concurrency and synchronization;moreover, the annotations never reference any particulars of the underlyinghardware.

Identiferoai:union.ndltd.org:arizona.edu/oai:arizona.openrepository.com:10150/194468
Date January 2010
CreatorsRoback, Joseph Anthony
ContributorsAndrews, Gregory R., Lowenthal, David K., Debray, Saumya K., Hartman, John H.
PublisherThe University of Arizona.
Source SetsUniversity of Arizona
LanguageEnglish
Detected LanguageEnglish
Typetext, Electronic Dissertation
RightsCopyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author.

Page generated in 0.0032 seconds