High Performance Computing

Slides:



Advertisements
Similar presentations
L.N. Bhuyan Adapted from Patterson’s slides
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.
The University of Adelaide, School of Computer Science
Cache Optimization Summary
Computer Organization and Architecture
Multiple Processor Systems
UMA Bus-Based SMP Architectures
Cache Coherent Distributed Shared Memory. Motivations Small processor count –SMP machines –Single shared memory with multiple processors interconnected.
Distributed Operating Systems CS551 Colorado State University at Lockheed-Martin Lecture 4 -- Spring 2001.
1 Multiprocessors. 2 Idea: create powerful computers by connecting many smaller ones good news: works for timesharing (better than supercomputer) bad.
CS252/Patterson Lec /23/01 CS213 Parallel Processing Architecture Lecture 7: Multiprocessor Cache Coherency Problem.
BusMultis.1 Review: Where are We Now? Processor Control Datapath Memory Input Output Input Output Memory Processor Control Datapath  Multiprocessor –
Chapter 17 Parallel Processing.
1 Lecture 23: Multiprocessors Today’s topics:  RAID  Multiprocessor taxonomy  Snooping-based cache coherence protocol.
1 CSE SUNY New Paltz Chapter Nine Multiprocessors.
Chapter 18 Parallel Processing (Multiprocessing).
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
1 Shared-memory Architectures Adapted from a lecture by Ian Watson, University of Machester.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
Advanced Architectures
Parallel Processing – Page 1 of 63CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Symmetric Multiprocessors & Clusters Reading:
Shared Address Space Computing: Hardware Issues Alistair Rendell See Chapter 2 of Lin and Synder, Chapter 2 of Grama, Gupta, Karypis and Kumar, and also.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
PARALLEL PROCESSOR- TAXONOMY. CH18 Parallel Processing {Multi-processor, Multi-computer} Multiple Processor Organizations Symmetric Multiprocessors Cache.
Ronny Krashinsky Erik Machnicki Software Cache Coherent Shared Memory under Split-C.
+ Clusters Alternative to SMP as an approach to providing high performance and high availability Particularly attractive for server applications Defined.
August 13, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 11: Multiprocessors: Uniform Memory Access * Jeremy R. Johnson Monday,
The University of Adelaide, School of Computer Science
Multiprocessor  Use large number of processor design for workstation or PC market  Has an efficient medium for communication among the processor memory.
CMSC 611: Advanced Computer Architecture Shared Memory Most slides adapted from David Patterson. Some from Mohomed Younis.
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
The University of Adelaide, School of Computer Science
Group Members Hamza Zahid (131391) Fahad Nadeem khan Abdual Hannan AIR UNIVERSITY MULTAN CAMPUS.
Computer Organization and Architecture
Computer Engineering 2nd Semester
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
Lecture 18: Coherence and Synchronization
12.4 Memory Organization in Multiprocessor Systems
Multiprocessor Cache Coherency
William Stallings Computer Organization and Architecture 7th Edition
The University of Adelaide, School of Computer Science
CMSC 611: Advanced Computer Architecture
Example Cache Coherence Problem
The University of Adelaide, School of Computer Science
Parallel and Multiprocessor Architectures – Shared Memory
Chip-Multiprocessor.
Multiprocessors - Flynn’s taxonomy (1966)
Introduction to Multiprocessors
Lecture 25: Multiprocessors
William Stallings Computer Organization and Architecture 7th Edition
Lecture 25: Multiprocessors
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Lecture 24: Virtual Memory, Multiprocessors
William Stallings Computer Organization and Architecture 8th Edition
Lecture 23: Virtual Memory, Multiprocessors
Database System Architectures
Coherent caches Adapted from a lecture by Ian Watson, University of Machester.
Lecture 17 Multiprocessors and Thread-Level Parallelism
CPE 631 Lecture 20: Multiprocessors
Lecture 19: Coherence and Synchronization
CSL718 : Multiprocessors 13th April, 2006 Introduction
Lecture 18: Coherence and Synchronization
The University of Adelaide, School of Computer Science
Lecture 10: Directory-Based Examples II
Lecture 17 Multiprocessors and Thread-Level Parallelism
Presentation transcript:

High Performance Computing

Recap SMP Clustering

Today’s topics NUMA (Non-Uniform Memory Access) Cache Coherence

Nonuniform Memory Access (NUMA) UMA: Uniform memory access All processors have access to all parts of memory Using load & store Access time to all regions of memory is the same Access time to memory for different processors same As used by SMP Nonuniform memory access Access time of processor differs depending on region of memory Different processors access different regions of memory at different speeds Cache coherent NUMA Cache coherence is maintained among the caches of the various processors Significantly different from SMP and clusters

Motivation SMP has practical limit to number of processors Bus traffic limits to between 16 and 64 processors In clusters each node has own memory Apps do not see large global memory Coherence maintained by software not hardware NUMA retains SMP flavour while giving large scale multiprocessing e.g. Silicon Graphics Origin NUMA 1024 MIPS R10000 processors Objective is to maintain transparent system wide memory while permitting multiprocessor nodes, each with own bus or internal interconnection system

CC-NUMA Organization

CC-NUMA Operation Each processor has own L1 and L2 cache Each node has own main memory Nodes connected by some networking facility Each processor sees single addressable memory space Memory request order: L1 cache (local to processor) L2 cache (local to processor) Main memory (local to node) Remote memory Delivered to requesting (local to processor) cache Automatic and transparent

Cache Coherence Node 1 directory keeps note that node 2 has copy of data If data modified in cache, this is broadcast to other nodes Local directories monitor and purge local cache if necessary Local directory monitors changes to local data in remote caches and marks memory invalid until writeback Local directory forces writeback if memory location requested by another processor

NUMA Pros & Cons Effective performance at higher levels of parallelism than SMP No major software changes Performance can breakdown if too much access to remote memory Can be avoided by: L1 & L2 cache design reducing all memory access Need good temporal locality of software Good spatial locality of software Virtual memory management moving pages to nodes that are using them most Not transparent Page allocation, process allocation and load balancing changes needed Availability?

Cache Coherence In SMP or NUMA, multiple copies of cache Each copy may have a different value of data item Maintain Coherency How?

Cache Coherence: Two Approaches Write back: Update Main memory once cache is flushed. Write through: Write is updated to cache as well as to the main memory.

Implementations Software Solutions: Hardware Solutions: Compile time decision Conservative Inefficient cache utilization Hardware Solutions: Runtime decision More effective

Hardware based solution Directory Protocol Snoopy Protocol

Directory Centralized Controller Individual cache controller makes a request Centralized controller checks and issues command Updates information

Directory Write Read Processor requests exclusive writes Controller sends message Invalidates Read Issues command to the processor Holding Processor Writes back to MM Read permitted

Directory Disadvantage Advantage Centralized Controller Bottleneck Useful in large –scale system

Snoopy Protocol Update operation announced All Cache controllers snoop Bus architecture Careful Increased Bus Traffic

Snoopy Protocol Two approaches Write Invalidate Write Update One write Multiple readers Exclusive: Writer invalidates others entries Write Update Multiple writers All writes are updated

Write Invalidate The MESI Protocol : P4 processor Data cache: Two status bits, 4 states Modified Exclusive Shared Invalid See Table