• DocumentCode
    2133094
  • Title

    DAG-consistent distributed shared memory

  • Author

    Blumofe, Robert D. ; Frigo, Matteo ; Joerg, Christopher E. ; Leiserson, Charles E. ; Randall, Keith H.

  • Author_Institution
    Lab. for Comput. Sci., MIT, Cambridge, MA, USA
  • fYear
    1996
  • fDate
    15-19 Apr 1996
  • Firstpage
    132
  • Lastpage
    141
  • Abstract
    Introduces DAG (directed acyclic graph) consistency, a relaxed consistency model for distributed shared memory which is suitable for multithreaded programming. We have implemented DAG consistency in software for the Cilk multithreaded runtime system running on a CM5 Connection Machine. Our implementation includes a DAG-consistent distributed cactus stack for storage allocation. We provide empirical evidence of the flexibility and efficiency of DAG consistency for applications that include blocked matrix multiplication, Strassen´s (1969) matrix multiplication algorithm and a Barnes-Hut code. Although Cilk schedules the executions of these programs dynamically, their performances are competitive with statically scheduled implementations in the literature. We also prove that the number FP of page faults incurred by a user program running an P processors can be related to the number F1 of page faults running serially by the formula FP⩽F1+2Cs, where C is the cache size and s is the number of thread migrations executed by Cilk´s scheduler
  • Keywords
    directed graphs; distributed memory systems; matrix multiplication; paged storage; parallel programming; processor scheduling; shared memory systems; software performance evaluation; storage allocation; Barnes-Hut code; CM5 Connection Machine; Cilk multithreaded runtime system; DAG consistency; blocked matrix multiplication; cache size; directed acyclic graph; distributed cactus stack; distributed shared memory; dynamic scheduling; efficiency; flexibility; multithreaded programming; page faults; program perfomance; relaxed consistency model; statically scheduled implementations; storage allocation; thread migrations; user program; Application software; Assembly; Computer science; Concurrent computing; Dynamic programming; Dynamic scheduling; Laboratories; Load management; Processor scheduling; Runtime; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Symposium, 1996., Proceedings of IPPS '96, The 10th International
  • Conference_Location
    Honolulu, HI
  • Print_ISBN
    0-8186-7255-2
  • Type

    conf

  • DOI
    10.1109/IPPS.1996.508049
  • Filename
    508049