Parallel Computer Architecture: Essentials for Both Computer Scientists and Engineers Edward F. Gehringer †* Yan.

Slides:



Advertisements
Similar presentations
WATERLOO ELECTRICAL AND COMPUTER ENGINEERING 20s: Computer Hardware 1 WATERLOO ELECTRICAL AND COMPUTER ENGINEERING 20s Computer Hardware Department of.
Advertisements

The University of Adelaide, School of Computer Science
Distributed Systems CS
SE-292 High Performance Computing
June 9, 2007 Animation of Important Concepts in Parallel Computer Architecture Gambhir, Gehringer & Solihin Animation of Important Concepts in Parallel.
Taxanomy of parallel machines. Taxonomy of parallel machines Memory – Shared mem. – Distributed mem. Control – SIMD – MIMD.
Types of Parallel Computers
The Stanford Directory Architecture for Shared Memory (DASH)* Presented by: Michael Bauer ECE 259/CPS 221 Spring Semester 2008 Dr. Lebeck * Based on “The.
Cache Coherent Distributed Shared Memory. Motivations Small processor count –SMP machines –Single shared memory with multiple processors interconnected.
Multiprocessors CSE 4711 Multiprocessors - Flynn’s Taxonomy (1966) Single Instruction stream, Single Data stream (SISD) –Conventional uniprocessor –Although.
CS 284a, 7 October 97Copyright (c) , John Thornley1 CS 284a Lecture Tuesday, 7 October 1997.
1 Lecture 1: Introduction Course organization:  4 lectures on cache coherence and consistency  2 lectures on transactional memory  2 lectures on interconnection.
Lecture 10 Outline Material from Chapter 2 Interconnection networks Processor arrays Multiprocessors Multicomputers Flynn’s taxonomy.
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
1 Lecture 20: Protocols and Synchronization Topics: distributed shared-memory multiprocessors, synchronization (Sections )
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
DDM - A Cache-Only Memory Architecture Erik Hagersten, Anders Landlin and Seif Haridi Presented by Narayanan Sundaram 03/31/2008 1CS258 - Parallel Computer.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
Course Outline Introduction in software and applications. Parallel machines and architectures –Overview of parallel machines –Cluster computers (Myrinet)
Network Topologies Topology – how nodes are connected – where there is a wire between 2 nodes. Routing – the path a message takes to get from one node.
Parallel Computing Basic Concepts Computational Models Synchronous vs. Asynchronous The Flynn Taxonomy Shared versus Distributed Memory Interconnection.
Introduction MSCS 6060 – Parallel and Distributed Systems.
CS668- Lecture 2 - Sept. 30 Today’s topics Parallel Architectures (Chapter 2) Memory Hierarchy Busses and Switched Networks Interconnection Network Topologies.
Parallel Computer Architecture and Interconnect 1b.1.
MIMD Distributed Memory Architectures message-passing multicomputers.
Course Wrap-Up Miodrag Bolic CEG4136. What was covered Interconnection network topologies and performance Shared-memory architectures Message passing.
Chapter 6 Multiprocessor System. Introduction  Each processor in a multiprocessor system can be executing a different instruction at any time.  The.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 January Session 4.
Lecture 13: Multiprocessors Kai Bu
Parallel Programming on the SGI Origin2000 With thanks to Igor Zacharov / Benoit Marchand, SGI Taub Computer Center Technion Moshe Goldberg,
Lecture 3 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science.
YEAR 2006 The University of Auckland | New Zealand PRESENTATION Computer Science 703 Advance Computer Architecture 2006 Semester 1 Preparation for Test.
DISTRIBUTED COMPUTING
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 April 5, 2005 Session 22.
RSIM: An Execution-Driven Simulator for ILP-Based Shared-Memory Multiprocessors and Uniprocessors.
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 March 20, 2008 Session 9.
Outline Why this subject? What is High Performance Computing?
1 Lecture 19: Scalable Protocols & Synch Topics: coherence protocols for distributed shared-memory multiprocessors and synchronization (Sections )
Super computers Parallel Processing
Parallel Processing Presented by: Wanki Ho CS147, Section 1.
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.
LECTURE #1 INTRODUCTON TO PARALLEL COMPUTING. 1.What is parallel computing? 2.Why we need parallel computing? 3.Why parallel computing is more difficult?
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 April 7, 2005 Session 23.
Corse Overview Miodrag Bolic ELG7187 Topics in Computers: Multiprocessor Systems on Chip.
COMP8330/7330/7336 Advanced Parallel and Distributed Computing Tree-Based Networks Cache Coherence Dr. Xiao Qin Auburn University
The University of Adelaide, School of Computer Science
Lecture 13 Parallel Processing. 2 What is Parallel Computing? Traditionally software has been written for serial computation. Parallel computing is the.
Lecture 13: Multiprocessors Kai Bu
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Centralized Multiprocessor.
Computer Network Topology
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
Lecture 18: Coherence and Synchronization
The University of Adelaide, School of Computer Science
Directory-based Protocol
The University of Adelaide, School of Computer Science
Parallel Architectures Based on Parallel Computing, M. J. Quinn
ECE/CS 757: Advanced Computer Architecture II
Interconnect with Cache Coherency Manager
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Lecture 17 Multiprocessors and Thread-Level Parallelism
Lecture 19: Coherence and Synchronization
Lecture 18: Coherence and Synchronization
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Presentation transcript:

Parallel Computer Architecture: Essentials for Both Computer Scientists and Engineers Edward F. Gehringer †* Yan Solihin* † Dept. of Computer Science * Department of Electrical & Computer Engineering North Carolina State University

2/12/ Outline  Why parallel computer architecture?  The students  Course organization  Example animations  Conclusion

Computer architecture courses  Most popular—processor architecture For both CE & CS  Most relevant—parallel architecture Esp. for CS 9/23/2010

Our course and curriculum 9/23/ ECE 521, Computer Design & Technology CSC/ECE 506: Arch. of Parallel Computers ECE 721, Advanced Computer Architecture CSC 706: Adv. Parallel Computer Architecture ECE 743, High Perf. Computer Architecture ECE 463, Adv. Micro- processor Design

The textbook 9/23/2010

2/12/ Outline  Why parallel computer architecture?  The students  Course organization  Example animations  Conclusion

The students  Majority are masters, but …  Both masters programs are large  Core course for CE students  Core course for CS students 9/23/2010

2/12/ Outline  Why parallel computer architecture?  The students  Course organization  Example animations  Conclusion

Syllabus 1. Concurrency 2. Bus-based multiprocessors 3. Memory consistency 4. Distributed multiprocessors 5. Interconnection networks 9/23/ classes 6 classes 2 classes 4 classes 3 classes

Concurrency  Taxonomy of parallel processors Nodes Interconnect  Models of parallel computation Shared memory Message-passing Data parallel  Parallelization constructs DOALLDOACROSSDOPIPE Function parallelism  Data-parallel programming SCANREDUCE  Parallelizing linked data structures 9/23/2010

Bus-Based Multiprocessors  The need for synchronization  Invalidation coherence protocols  Update coherence protocols  Performance aspects 9/23/2010

Memory Consistency  Contrast with cache coherence  Sequential consistency  Improving performance Prefetching Speculation  Relaxed consistency models Processor consistency Weak ordering Release consistency 9/23/2010

Distributed multiprocessors  Scalable multiprocessors  Coherence without a shared bus  Directory organization  Directory-based coherence protocols Full bit vector SCI (Scalable Coherent Interface)  Case study: Origin /23/2010

Interconnection networks  Topologies Ring Mesh Hypercube Fat tree  Routing E-cube Turn model Adaptive 9/23/2010

2/12/ Outline  Why parallel computer architecture?  The students  Course organization  Example animations  Conclusion

2/12/ Outline  Why parallel computer architecture?  The students  Course organization  Example animations  Conclusion

Conclusion  Important concept: Parallel programming Parallel architecture affect each other  Need to know this to … Write efficient programs Design an efficient architecture  This course covers “nuts and bolts”  We’d love to share … 9/23/2010