DISTRIBUTED COMPUTING

Slides:



Advertisements
Similar presentations
Multiple Processor Systems
Advertisements

The University of Adelaide, School of Computer Science
SE-292 High Performance Computing
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
Relaxed Consistency Models. Outline Lazy Release Consistency TreadMarks DSM system.
Presented by Evan Yang. Overview of Munin  Distributed shared memory (DSM) system  Unique features Multiple consistency protocols Release consistency.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
Distributed Shared Memory
Consistency Models Based on Tanenbaum/van Steen’s “Distributed Systems”, Ch. 6, section 6.2.
Cache Coherent Distributed Shared Memory. Motivations Small processor count –SMP machines –Single shared memory with multiple processors interconnected.
1 Lecture 12: Hardware/Software Trade-Offs Topics: COMA, Software Virtual Memory.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
Computer Science Lecture 14, page 1 CS677: Distributed OS Consistency and Replication Today: –Introduction –Consistency models Data-centric consistency.
Memory consistency models Presented by: Gabriel Tanase.
1 Multiprocessors. 2 Idea: create powerful computers by connecting many smaller ones good news: works for timesharing (better than supercomputer) bad.
Distributed Resource Management: Distributed Shared Memory
Memory Consistency Models
CSS434 DSM1 CSS434 Distributed Shared Memory Textbook Ch18 Professor: Munehiro Fukuda.
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed Shared Memory.
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
DISTRIBUTED COMPUTING
Lecture 4: Parallel Programming Models. Parallel Programming Models Parallel Programming Models: Data parallelism / Task parallelism Explicit parallelism.
Distributed Shared Memory Systems and Programming
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster and powerful computers –shared memory model ( access nsec) –message passing.
Distributed Shared Memory: A Survey of Issues and Algorithms B,. Nitzberg and V. Lo University of Oregon.
Distributed Shared Memory (DSM)
Lazy Release Consistency for Software Distributed Shared Memory Pete Keleher Alan L. Cox Willy Z.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Chapter 6 Multiprocessor System. Introduction  Each processor in a multiprocessor system can be executing a different instruction at any time.  The.
TECHNIQUES FOR REDUCING CONSISTENCY- RELATED COMMUNICATION IN DISTRIBUTED SHARED-MEMORY SYSTEMS J. B. Carter University of Utah J. K. Bennett and W. Zwaenepoel.
Memory Consistency Models Alistair Rendell See “Shared Memory Consistency Models: A Tutorial”, S.V. Adve and K. Gharachorloo Chapter 8 pp of Wilkinson.
1 Lecture 12: Hardware/Software Trade-Offs Topics: COMA, Software Virtual Memory.
Ch 10 Shared memory via message passing Problems –Explicit user action needed –Address spaces are distinct –Small Granularity of Transfer Distributed Shared.
Distributed Shared Memory Based on Reference paper: Distributed Shared Memory, Concepts and Systems.
Cache Coherence Protocols 1 Cache Coherence Protocols in Shared Memory Multiprocessors Mehmet Şenvar.
Distributed Shared Memory Presentation by Deepthi Reddy.
Page 1 Distributed Shared Memory Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Introduction to Software Distributed Shared Memory Systems Chang-Yi Lin 2004 / 02 / 26.
1 Chapter 9 Distributed Shared Memory. 2 Making the main memory of a cluster of computers look as though it is a single memory with a single address space.
Lazy Release Consistency for Software Distributed Shared Memory Pete Keleher Alan L. Cox Willy Z. By Nooruddin Shaik.
DISTRIBUTED COMPUTING
Distributed shared memory u motivation and the main idea u consistency models F strict and sequential F causal F PRAM and processor F weak and release.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Primitive Concepts of Distributed Systems Chapter 1.
CMSC 611: Advanced Computer Architecture Shared Memory Most slides adapted from David Patterson. Some from Mohomed Younis.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
The University of Adelaide, School of Computer Science
Software Coherence Management on Non-Coherent-Cache Multicores
Distributed Shared Memory
CS5102 High Performance Computer Systems Thread-Level Parallelism
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
Lecture 18: Coherence and Synchronization
Multiprocessor Cache Coherency
Ivy Eva Wu.
The University of Adelaide, School of Computer Science
Advanced Operating Systems
The University of Adelaide, School of Computer Science
Distributed Shared Memory
Outline Midterm results summary Distributed file systems – continued
Distributed Shared Memory
CSS490 Distributed Shared Memory
Exercises for Chapter 16: Distributed Shared Memory
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Distributed Resource Management: Distributed Shared Memory
Lecture 17 Multiprocessors and Thread-Level Parallelism
Lecture 19: Coherence and Synchronization
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Presentation transcript:

DISTRIBUTED COMPUTING Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai Seema Shah, Principal, Vidyalankar Institute of Technology, Mumbai University

Chapter - 7 Distributed Shared Memory

Topics Introduction Basic concepts of DSM Hardware DSM Design issues in DSM Issues in implementing DSM systems Heterogeneous and other DSM systems Case Study

Introduction

IPC paradigms Message passing Shared memory Multi computer systems are easier to build but harder to program while multiprocessor systems are complex to build but easier to program Distributed Shared Memory systems (DSM) are both easy to program and easy to build

Basic Concepts Of DSM

DSM A DSM system provides a logical abstraction of shared memory which is built using a set of interconnected nodes having physically distributed memories.

DSM architecture-1 DSM: Ease of programming and portability Scalable with very high computing power

DSM architecture-2 Cluster based architecture

Comparison of IPC paradigms

Types of DSMs Hardware level DSM Software level DSM Hybrid level DSM

Advantages of DSM Simple abstraction Improved portability of distributed application programs Provides better performance in some applications Large memory space at no extra cost Better than message passing systems

Hardware DSM

Hardware architectures On chip memory Bus based multiprocessor Ring based multiprocessor Switched multiprocessor

On chip memory

Bus based multiprocessor Use bus arbitration mechanism

Consistency protocols

Cache consistency protocol Properties: Consistency is achieved since all caches do us snooping Protocol is built into MMU The algorithm is performed in one memory cycle

Memnet DSM architecture Shred memory : Private areas Shared areas

Memnet: Node memory

Comparison The major difference between bus based and ring based multiprocessors is that the former are tightly coupled while the latter are loosely coupled. Ring based multiprocessors are almost hardware implementation of DSM.

Switched multiprocessor Multiple clusters interconnected by a bus offer better scalability Example : Dash system

Design Issues In DSM

DSM design issues Granularity of sharing Structure of data Consistency models Coherence protocols

Granularity False sharing Thrashing

DSM structure Organization of data items in the shared memory

Consistency models Refers to how recent the shared memory updates are visible to all the other processes running on different machines

Strict consistency Strongest form of consistency

Sequential consistency All processors in the system observe the same ordering of reads and writes which are issued in sequence by the individual processors

Causal consistency Weakening of sequential consistency for better concurrency Causally related operation is the one which has influenced the other operation

PRAM consistency Pipelined Random Access Memory consistency Write operations performed by a single process are seen by all other processes in the order in which they were performed just as if these write operations were performed by a single process in a pipeline. Write operations performed by different processes may be seen by different processes in different orders.

Processor consistency Adheres to the PRAM consistency Constraint on memory coherence Order in which the memory operations are seen by two processors need not be identical, but the order of writes issued by each processor must be preserved

Weak consistency Use a special variable called the synchronization variable

Properties of the weak consistency model Access to synchronization variables is sequentially consistent Only when all previous writes are completed everywhere, access to synchronizations variable is allowed Until all previous accesses to synchronization variables are performed, no read write data access operations will be allowed.

Release consistency Synchronization variables: acquire and release Use barrier mechanism

Eager Release Consistency

Lazy Release Consistency

Entry consistency Use acquire and release at the start and end of each critical section, respectively. Each ordinary shared variable is associated with some synchronization variable such as a lock or barrier. Entry consistency (EC) is similar to LRC but more relaxed; shared data is explicitly associated with synchronization primitives and is made consistent when such an operation is performed

Scope consistency A scope is a limited view of memory with respect to which memory references are performed

Comparison of consistency models-1 Most common: sequential consistency model

Comparison of Consistency models-2 Based on efficiency and programmability

Coherence protocols Specifies how the rules set by the memory consistency model are to be implemented

Coherence algorithms Maintain consistency among replicas

Multiple Reader/ Multiple Writer algorithm Uses twin and diff creation technique

Write Protocols for consistency Write Update (WU) Write Invalidate (WI) protocols

Issues In Implementing DSM Systems

Issues Thrashing Responsibility of DMS management Replication v/s migration Replacement strategy

Thrashing False sharing Techniques to reduce thrashing: Application controlled lock Pin the block to a node for specific time Customize algorithm to shared data usage pattern

Responsibility for DSM management Algorithms for data location and consistency management: Centralized manager algorithm Broadcast algorithm Fixed Distributed manager algorithm Dynamic distributed manager algorithm

Centralized Manager algorithm

Broadcast algorithm Replicates

Fixed Distributed manager algorithm

Dynamic distributed manager algorithm

Replication versus migration strategies Replication strategy: No replication Replication Migration strategy No migration Migration Non Replicated and Non Migrating Block- NRNMB Non Replicated, Migrating Block- NRMB Replicated, Migrating Block- RMB Replicated Non Migrating Block-RNMB

Replacement strategy

Heterogeneous And Other DSM Systems

Issues in building Heterogeneous DSM systems Data compatibility and conversion DSM as a collection of source language objects Block size selection Largest page size Smallest page size Intermediate page size

Approaches to DSM design Based on data caching management DSM is managed by: Operating system MMU Hardware Language runtime system

Case Study

Case studies Munin Linda Teamster JUMP

Munin

Linda-1

Linda-2

Linda-3

Teamster-1

Teamster-2

JUMP-1

JUMP-2 Migrating Home Protocol

Summary Introduction Basic concepts of DSM Hardware DSM Design issues in DSM Issues in implementing DSM systems Heterogeneous and other DSM systems Case Study