SlideShare a Scribd company logo
1 of 19
High Performance Computing

        Jawwad Shamsi
           Lecture #5
       26th January 2010
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
   – All processors have access to all parts of memory
       • Using load & store
   – 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:
  – 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
  – Processor requests exclusive writes
  – Controller sends message
  – Invalidates
• Read
  – Issues command to the processor
  – Holding Processor
     • Writes back to MM
     • Read permitted
Directory
• Disadvantage
  – Centralized Controller
  – Bottleneck
• Advantage
  – 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
     • 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

More Related Content

What's hot

Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture
Haris456
 
Hardware multithreading
Hardware multithreadingHardware multithreading
Hardware multithreading
Fraboni Ec
 
Parallel architecture-programming
Parallel architecture-programmingParallel architecture-programming
Parallel architecture-programming
Shaveta Banda
 
What is simultaneous multithreading
What is simultaneous multithreadingWhat is simultaneous multithreading
What is simultaneous multithreading
Fraboni Ec
 
Lecture 6.1
Lecture  6.1Lecture  6.1
Lecture 6.1
Mr SMAK
 
Superscalar & superpipeline processor
Superscalar & superpipeline processorSuperscalar & superpipeline processor
Superscalar & superpipeline processor
Muhammad Ishaq
 
Parallel computing
Parallel computingParallel computing
Parallel computing
virend111
 
Lecture 6
Lecture  6Lecture  6
Lecture 6
Mr SMAK
 

What's hot (20)

parallel processing
parallel processingparallel processing
parallel processing
 
Multithreaded processors ppt
Multithreaded processors pptMultithreaded processors ppt
Multithreaded processors ppt
 
Introduction 1
Introduction 1Introduction 1
Introduction 1
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture
 
Hardware multithreading
Hardware multithreadingHardware multithreading
Hardware multithreading
 
Parallel architecture-programming
Parallel architecture-programmingParallel architecture-programming
Parallel architecture-programming
 
Introduction to parallel processing
Introduction to parallel processingIntroduction to parallel processing
Introduction to parallel processing
 
What is simultaneous multithreading
What is simultaneous multithreadingWhat is simultaneous multithreading
What is simultaneous multithreading
 
Cache coherence problem and its solutions
Cache coherence problem and its solutionsCache coherence problem and its solutions
Cache coherence problem and its solutions
 
Introduction to parallel_computing
Introduction to parallel_computingIntroduction to parallel_computing
Introduction to parallel_computing
 
Advanced processor principles
Advanced processor principlesAdvanced processor principles
Advanced processor principles
 
Parallel processing
Parallel processingParallel processing
Parallel processing
 
Lecture 6.1
Lecture  6.1Lecture  6.1
Lecture 6.1
 
Dichotomy of parallel computing platforms
Dichotomy of parallel computing platformsDichotomy of parallel computing platforms
Dichotomy of parallel computing platforms
 
Superscalar & superpipeline processor
Superscalar & superpipeline processorSuperscalar & superpipeline processor
Superscalar & superpipeline processor
 
18 parallel processing
18 parallel processing18 parallel processing
18 parallel processing
 
Scope of parallelism
Scope of parallelismScope of parallelism
Scope of parallelism
 
Parallel computing
Parallel computingParallel computing
Parallel computing
 
Lecture 6
Lecture  6Lecture  6
Lecture 6
 
Shared-Memory Multiprocessors
Shared-Memory MultiprocessorsShared-Memory Multiprocessors
Shared-Memory Multiprocessors
 

Similar to Lecture5

Module2 MultiThreads.ppt
Module2 MultiThreads.pptModule2 MultiThreads.ppt
Module2 MultiThreads.ppt
shreesha16
 
Chapter1 Computer System Overview.ppt
Chapter1 Computer System Overview.pptChapter1 Computer System Overview.ppt
Chapter1 Computer System Overview.ppt
ShikhaManrai1
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
ssuser5c9d4b1
 
chapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).pptchapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).ppt
NANDHINIS109942
 

Similar to Lecture5 (20)

Multiprocessor_YChen.ppt
Multiprocessor_YChen.pptMultiprocessor_YChen.ppt
Multiprocessor_YChen.ppt
 
Week 13-14 Parrallel Processing-new.pptx
Week 13-14 Parrallel Processing-new.pptxWeek 13-14 Parrallel Processing-new.pptx
Week 13-14 Parrallel Processing-new.pptx
 
parallel-processing.ppt
parallel-processing.pptparallel-processing.ppt
parallel-processing.ppt
 
Module2 MultiThreads.ppt
Module2 MultiThreads.pptModule2 MultiThreads.ppt
Module2 MultiThreads.ppt
 
Multiprocessor.pptx
 Multiprocessor.pptx Multiprocessor.pptx
Multiprocessor.pptx
 
Chapter1 Computer System Overview.ppt
Chapter1 Computer System Overview.pptChapter1 Computer System Overview.ppt
Chapter1 Computer System Overview.ppt
 
Chapter1 Computer System Overview Part-1.ppt
Chapter1 Computer System Overview Part-1.pptChapter1 Computer System Overview Part-1.ppt
Chapter1 Computer System Overview Part-1.ppt
 
Lecture-7 Main Memroy.pptx
Lecture-7 Main Memroy.pptxLecture-7 Main Memroy.pptx
Lecture-7 Main Memroy.pptx
 
Memory Management in Operating Systems for all
Memory Management in Operating Systems for allMemory Management in Operating Systems for all
Memory Management in Operating Systems for all
 
Memory Management.pdf
Memory Management.pdfMemory Management.pdf
Memory Management.pdf
 
Operating systems- Main Memory Management
Operating systems- Main Memory ManagementOperating systems- Main Memory Management
Operating systems- Main Memory Management
 
network ram parallel computing
network ram parallel computingnetwork ram parallel computing
network ram parallel computing
 
Ch8 main memory
Ch8   main memoryCh8   main memory
Ch8 main memory
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
parallel processing.ppt
parallel processing.pptparallel processing.ppt
parallel processing.ppt
 
chapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).pptchapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).ppt
 
Memory Management Strategies - II.pdf
Memory Management Strategies - II.pdfMemory Management Strategies - II.pdf
Memory Management Strategies - II.pdf
 
High performance computing
High performance computingHigh performance computing
High performance computing
 
Lecture4
Lecture4Lecture4
Lecture4
 
08 operating system support
08 operating system support08 operating system support
08 operating system support
 

Recently uploaded

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
UK Journal
 

Recently uploaded (20)

WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 

Lecture5

  • 1. High Performance Computing Jawwad Shamsi Lecture #5 26th January 2010
  • 3. Today’s topics • NUMA (Non-Uniform Memory Access) • Cache Coherence
  • 4. 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 – All processors have access to all parts of memory • Using load & store – 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
  • 5. 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
  • 7. 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
  • 8. 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
  • 9. 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?
  • 10. Cache Coherence • In SMP or NUMA, multiple copies of cache – Each copy may have a different value of data item – Maintain Coherency • How?
  • 11. 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.
  • 12. Implementations • Software Solutions: – Compile time decision – Conservative – Inefficient cache utilization • Hardware Solutions: – Runtime decision – More effective
  • 13. Hardware based solution • Directory Protocol • Snoopy Protocol
  • 14. Directory • Centralized Controller – Individual cache controller makes a request • Centralized controller checks and issues command – Updates information
  • 15. Directory • Write – Processor requests exclusive writes – Controller sends message – Invalidates • Read – Issues command to the processor – Holding Processor • Writes back to MM • Read permitted
  • 16. Directory • Disadvantage – Centralized Controller – Bottleneck • Advantage – Useful in large –scale system
  • 17. Snoopy Protocol • Update operation announced • All Cache controllers snoop • Bus architecture – Careful • Increased Bus Traffic
  • 18. Snoopy Protocol • Two approaches – Write Invalidate • One write • Multiple readers • Exclusive: Writer invalidates others entries – Write Update • Multiple writers • All writes are updated
  • 19. Write Invalidate • The MESI Protocol : P4 processor – Data cache: Two status bits, 4 states • Modified • Exclusive • Shared • Invalid • See Table