Serialization Sets: A Dynamic Dependence-Based Parallel Execution Model

dc.contributor.authorAllen, Matthew D.en_US
dc.contributor.authorSridharan, Srinathen_US
dc.contributor.authorSohi, Gurindar S.en_US
dc.date.accessioned2012-03-15T17:23:45Z
dc.date.available2012-03-15T17:23:45Z
dc.date.created2008en_US
dc.date.issued2008en_US
dc.description.abstractThis paper proposes a new parallel execution model where programmers augment a sequential program with pieces of code called serializers that dynamically map computational operations into serialization sets of dependent operations. The runtime system executes operations in the same serialization set in program order, and may parallelize the execution of operations in different sets. For many types of applications, writing and debugging such programs is significantly easier than using existing parallel programming techniques, and results in deterministic parallel execution. We describe the API and design of Prometheus, a C++ library that implements the serialization set abstraction through compile-time template instantiation and a runtime support library. We evaluate a set of parallel programs running on the x86_64 and SPARC-V9 ISAs and study their performance on multi-core, symmetric multiprocessor, and ccNUMA parallel machines. We find that parallel execution of programs written with serialization sets achieves performance comparable to traditional parallel execution models.en_US
dc.format.mimetypeapplication/pdfen_US
dc.identifier.citationTR1644en_US
dc.identifier.urihttp://digital.library.wisc.edu/1793/60652
dc.publisherUniversity of Wisconsin-Madison Department of Computer Sciencesen_US
dc.titleSerialization Sets: A Dynamic Dependence-Based Parallel Execution Modelen_US
dc.typeTechnical Reporten_US

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
TR1644.pdf
Size:
207.12 KB
Format:
Adobe Portable Document Format