MIMD Shared Memory Multiprocessors. MIMD -- Shared Memory u Each processor has a full CPU u Each processors runs its own code –can be the same program.

Slides:



Advertisements
Similar presentations
Multiple Processor Systems
Advertisements

1 Uniform memory access (UMA) Each processor has uniform access time to memory - also known as symmetric multiprocessors (SMPs) (example: SUN ES1000) Non-uniform.
© DEEDS – OS Course WS11/12 Lecture 10 - Multiprocessing Support 1 Administrative Issues  Exam date candidates  CW 7 * Feb 14th (Tue): * Feb 16th.
Distributed Systems CS
SE-292 High Performance Computing
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
Chapter 8-1 : Multiple Processor Systems Multiple Processor Systems Multiple Processor Systems Multiprocessor Hardware Multiprocessor Hardware UMA Multiprocessors.
Multiple Processor Systems
Cache Coherent Distributed Shared Memory. Motivations Small processor count –SMP machines –Single shared memory with multiple processors interconnected.
CSCI 8150 Advanced Computer Architecture Hwang, Chapter 1 Parallel Computer Models 1.2 Multiprocessors and Multicomputers.
1 Introduction to MIMD Architectures Sima, Fountain and Kacsuk Chapter 15 CSE462.
Multiple Processor Systems Chapter Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
Multiprocessors ELEC 6200: Computer Architecture and Design Instructor : Agrawal Name: Nam.
1 Multiprocessors. 2 Idea: create powerful computers by connecting many smaller ones good news: works for timesharing (better than supercomputer) bad.
1  1998 Morgan Kaufmann Publishers Chapter 9 Multiprocessors.
NUMA Mult. CSE 471 Aut 011 Interconnection Networks for Multiprocessors Buses have limitations for scalability: –Physical (number of devices that can be.
Multiprocessors Andreas Klappenecker CPSC321 Computer Architecture.

An Introduction to Parallel Computing Dr. David Cronk Innovative Computing Lab University of Tennessee Distribution A: Approved for public release; distribution.
Multiple Processor Systems 8.1 Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
1 Lecture 23: Multiprocessors Today’s topics:  RAID  Multiprocessor taxonomy  Snooping-based cache coherence protocol.
1 CSE SUNY New Paltz Chapter Nine Multiprocessors.
Parallel Computer Architectures
Introduction to Parallel Processing Ch. 12, Pg
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
Computer System Architectures Computer System Software
Course Outline Introduction in software and applications. Parallel machines and architectures –Overview of parallel machines –Cluster computers (Myrinet)
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster and powerful computers –shared memory model ( access nsec) –message passing.
August 15, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 12: Multiprocessors: Non-Uniform Memory Access * Jeremy R. Johnson.
CHAPTER 12 INTRODUCTION TO PARALLEL PROCESSING CS 147 Guy Wong page
Chapter 6 Multiprocessor System. Introduction  Each processor in a multiprocessor system can be executing a different instruction at any time.  The.
Switches and indirect networks Computer Architecture AMANO, Hideharu Textbook pp. 92~13 0.
شبکه های میان ارتباطی 1 به نام خدا دکتر محمد کاظم اکبری مرتضی سرگلزایی جوان
Multiple Processor Systems Chapter Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster computers –shared memory model ( access nsec) –message passing multiprocessor.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 8 Multiple Processor Systems Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Anshul Kumar, CSE IITD Other Architectures & Examples Multithreaded architectures Dataflow architectures Multiprocessor examples 1 st May, 2006.
Cotter-cs431 Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved Chapter 8 Multiple Processor Systems.
+ Clusters Alternative to SMP as an approach to providing high performance and high availability Particularly attractive for server applications Defined.
Outline Why this subject? What is High Performance Computing?
Multiprocessor So far, we have spoken at length microprocessors. We will now study the multiprocessor, how they work, what are the specific problems that.
August 13, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 11: Multiprocessors: Uniform Memory Access * Jeremy R. Johnson Monday,
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 8 Multiple Processor Systems Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Spring EE 437 Lillevik 437s06-l22 University of Portland School of Engineering Advanced Computer Architecture Lecture 22 Distributed computer Interconnection.
Multiprocessor  Use large number of processor design for workstation or PC market  Has an efficient medium for communication among the processor memory.
Background Computer System Architectures Computer System Software.
CMSC 611: Advanced Computer Architecture Shared Memory Most slides adapted from David Patterson. Some from Mohomed Younis.
The University of Adelaide, School of Computer Science
1 Computer Architecture & Assembly Language Spring 2001 Dr. Richard Spillman Lecture 26 – Alternative Architectures.
Multiprocessor System Distributed System
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Multiprocessor Systems
Introduction to parallel programming
Dynamic connection system
The University of Adelaide, School of Computer Science
CS 147 – Parallel Processing
Overview Parallel Processing Pipelining
CMSC 611: Advanced Computer Architecture
Parallel and Multiprocessor Architectures – Shared Memory
Multiple Processor Systems
Multiple Processor Systems
AN INTRODUCTION ON PARALLEL PROCESSING
Multiple Processor and Distributed Systems
High Performance Computing
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
The University of Adelaide, School of Computer Science
Fetch And Add – switching network
Presentation transcript:

MIMD Shared Memory Multiprocessors

MIMD -- Shared Memory u Each processor has a full CPU u Each processors runs its own code –can be the same program as other processors or different u All processors access the same memory –Same address space for all processors –UMA Uniform Memory Access »all memory accessible in same time for every processor –NUMA Non-Uniform Memory Access »memory is localized »each processor can access some memory faster than other

MIMD - SM - UMA PROCESSORSPROCESSORS MEMORYMEMORY MODULESMODULES CONNECTIONCONNECTION

Options for Connection -- UMA u Bus –Sequential, can be used for one message at a time u Switching Network –Can send many messages at once »depends on connection scheme –Crossbar »Maximal connections »expensive –Omega (also called Butterfly, Banyan) »several permutations of proc-mem possible

Bus u Needs smart local cache schemes to reduce bus traffic u Works for low number of processors u Depending on technology processors overloads bus, performance degrades u Common on 4, 8 processor SMP servers

Bus Cache Processors Bus Memory

Crossbar switch u Every permutation of processor to memory can work u Expensive N*M switches where where N = number of processors, M = Number of memory modules

Processors MemoryMemory Switches Crossbar switch

Omega Network u Every Processor Connects to Every Memory u Many, but not all, permutations possible u An Extra stage adds redundancy and more permutations u Number of switches = (N/2) log N »For N processors, N memory modules u Number of stages = log N (determines latency)

Omega Network ProcessorsProcessors MemoryMemory

Destination = 101

Omega Network -- A Permutation Destination = 101

Omega Network with combining u Smart Switches –combine two requests with same destination –make memory accesses equivalent to serial sequence –split return values appropriately u Time trade-off u Used in NYU Ultra-computer –also in IBM RP3 experimental machine u Example: Fetch and Increment

Omega Network Destination = 101

Options for Connection -- NUMA u Each Processor has a segment of memory closer than others –Could be several different levels of access u All Processors still use same address space u Omega network with wrap around –BBN Butterfly u Hierarchy of Rings (or other switches) –Kendall Square Research KSR-1 –SGI Origin series

Hierarchical Rings Directory Nodes Compute Node To higher level ring

Issues for MIMD Shared Memory u Memory Access –Can reads be simultaneous? –How to control multiple writes? u Synchronization mechanism needed –semaphores –monitors u Local caches need to be coordinated –cache coherency protocols