Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Implementation of User-level Distributed Shared Memory

Similar presentations


Presentation on theme: "An Implementation of User-level Distributed Shared Memory"— Presentation transcript:

1 An Implementation of User-level Distributed Shared Memory
Wei Zhang & Shu Liu

2 DSM: Shared Memory + Distributed Memory
2019/7/31 Final Report

3 Problems & Solutions Problems Solutions Granularity
Use 4-Kbyte Page as the unit of sharing Data location/Mapping Centralized server Communication MPI (Message Passing Interface) 2019/7/31 Final Report

4 Cont. Problems Solutions Memory Coherence in parallelism
a: each page has one dynamic owner b: multi readers (make copies) c: single writer (only owner can write the page) d: lock & barrier (synchronize page operation) 2019/7/31 Final Report

5 Design Overview 2019/7/31 Final Report

6 For a read 2019/7/31 Final Report

7 For a write 2019/7/31 Final Report

8 Implementation Data structures: Important system calls
Page Table in each node Pageinfo in server Important system calls mmap() mprotect() SIGSEGV signal: handle page fault pthread: receive page fault request and send data At first, all the shared memory is allocated in server 2019/7/31 Final Report

9 Cont. MPI: create a cluster and be responsible for communication
#include ”dsm.h”: a simple yet powerful API Name Function dsm_startup() initialization dsm_malloc (int size) allocate shared memory for the process dsm_barrier () global synchronization dsm_clock() count elapsed time dsm_lock() page synchronization dsm_exit() clean up and shut DSM down 2019/7/31 Final Report 9

10 Cont. Include dsm header file Start dsm system Allocate shared memory
Synchronize Free shared memory Exit 2019/7/31 Final Report

11 Evaluation Assumptions: Benchmarks:
server congestion is not the bottleneck network is reliable Benchmarks: Jacobi: partial differential equations: Ax=b MM: parallel matrix multiply: C=AB Scan: multi-iteration scan program Focus: multi-iteration write program 2019/7/31 Final Report

12 Cont. Speedup 2019/7/31 Final Report

13 Cont. Page Fault 2019/7/31 Progress Report Final Report 13

14 Conclusion & Future work
Achieved what we claimed Improvement: Blocking Communication-> Non-blocking Communication Other Memory Consistency Model (MRMW) Decrease network communication

15 Thank you! 2019/7/31 Final Report 15


Download ppt "An Implementation of User-level Distributed Shared Memory"

Similar presentations


Ads by Google