Title :
Gossamer: A Lightweight Approach to Using Multicore Machines
Author :
Roback, Joseph A. ; Andrews, Gregory R.
Author_Institution :
Dept. of Comput. Sci., Univ. of Arizona, Tucson, AZ, USA
Abstract :
The key to performance improvements in the multi-core era is for software to utilize the available concurrency. This paper 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 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 that uses our threading library, and (3) a run-time system that provides efficient threads and synchronization. Gossamer supports iterative and recursive parallelism, pipelined computations, domain decomposition, and MapReduce computations.
Keywords :
concurrency control; multiprocessing systems; parallel programming; Gossamer; MapReduce computations; concurrency control; domain decomposition; high-level annotations; iterative parallelism; lightweight programming framework; multicore machines; parallel programming; pipelined computations; recursive parallelism; run-time system; sequential program; source-to-source translator; Arrays; Concurrent computing; Instruction sets; Jacobian matrices; Parallel processing; Programming; Synchronization; C; annotations; gossamer; languages; parallel; programming;
Conference_Titel :
Parallel Processing (ICPP), 2010 39th International Conference on
Conference_Location :
San Diego, CA
Print_ISBN :
978-1-4244-7913-9
Electronic_ISBN :
0190-3918
DOI :
10.1109/ICPP.2010.12