DocumentCode
2976741
Title
Exploring Deterministic Shared Memory Programming Model
Author
Yu Zhang ; Wei Hu
Author_Institution
Sch. of Comput. Sci. & Technol., Univ. of Sci. & Technol. of China, Hefei, China
fYear
2012
fDate
14-16 Dec. 2012
Firstpage
144
Lastpage
149
Abstract
Deterministic parallelism promises many benifits for parallel programming. Exist deterministic runtimes, however, either require modifying programs to use a restricted set of synchronization primitives, or limit scalability by relying on a centralized, deterministic thread scheduler. We addressed these challenges with single producer multi-consumer (SPMC) virtual memory as a possible foundation for scalable deterministic parallelism. The SPMC foundation avoids the introduction of read/write and write/write data races, and permits peer-topeer “dialog” short-circuiting the process/thread hierarchy. In this paper, we explore high level runtime-DetSM-atop the SPMC foundation to support deterministic shared memory parallel programming. We introduce a generalized shared memory unit or SMU abstraction to represent memory deterministically shared among threads, and a specific DetArray abstraction to allow concurrent threads updating disjoint continuous elements in an array, with certain programmability and efficiency tradeoffs. Preliminary results suggest that DetSM atop the SPMC maybe realistic and useful, achieving better run-time than Dthreads for dedup, and better performance than the original Determinator for quick sort and merge sort.
Keywords
multi-threading; peer-to-peer computing; processor scheduling; shared memory systems; virtual storage; DetArray abstraction; DetSM; SMU abstraction; SPMC foundation; SPMC virtual memory; centralized deterministic thread scheduler; deterministic runtimes; deterministic shared memory programming model; disjoint continuous elements; generalized shared memory unit; high level runtime; parallel programming; peer-to-peer dialog short-circuiting; process-thread hierarchy; program modification; programmability; read-write data races; scalable deterministic parallelism; single producer multiconsumer virtual memory; write-write data races; Arrays; Instruction sets; Message systems; Parallel processing; Programming; Runtime; Synchronization; deterministic parallelism; ownership transfer; shared memory;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Computing, Applications and Technologies (PDCAT), 2012 13th International Conference on
Conference_Location
Beijing
Print_ISBN
978-0-7695-4879-1
Type
conf
DOI
10.1109/PDCAT.2012.74
Filename
6589254
Link To Document