50 likes | 61 Views
Software DSM emulates shared memory, implementing an invalidation-based protocol using OS page protection. Learn about tackling false sharing and reducing overhead with pattern recognition techniques.
E N D
Winter 03-04 projects – Distributed Shared Memory (DSM) Superviser: Liran Liss liranl@tx.technion.ac.il Meyer 764, (829)4706
Software DSM • Emulates shared memory across a computing cluster • Software DSMs implement an invalidation based protocol using OS page protection • Execution example… SAN 0x123000 0x123000 0x123000 R RW X R R X X X R X RW R Write
Some observations: • The large page size can introduce “false sharing”. Possible solutions: • Relaxed consistency models • Multiview • Even without false sharing: a lot of page faults produce substantial overhead Use pattern recognition techniques to perform smart prefetching (Project 1) • Application data is transferred from well known virtual memory locations Use state-of-the-art user-level networking hardware to transfer data efficiently without involving the processor (Project 2) SAN 0x123000 0x123000 0x123000 R RW X X R X X R X RW X RW
User-level networking (Infiniband) Application Virtual Memory Pinned Memory • Supported semantics: • Message-passing • Remote DMA (RDMA) • Asynchronous processing model that offloads CPU • Queue pairs (QPs) • Completion queues (CQs) • Specified by HCA Verbs • HW Features: • Channel mutliplexing • Reliable transport • Flow control Send Work Queue Verbs Consumer QP WQE WQE WQE Work Request To the fabric Receive Work Queue WQE WQE WQE Work Completion Completion Queue HCA HW CQE CQE CQE