• 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