Paralleelarvutid Parallel Computer Architectures

Slides:



Advertisements
Similar presentations
© DEEDS – OS Course WS11/12 Lecture 10 - Multiprocessing Support 1 Administrative Issues  Exam date candidates  CW 7 * Feb 14th (Tue): * Feb 16th.
Advertisements

SE-292 High Performance Computing
Today’s topics Single processors and the Memory Hierarchy
1 Parallel Scientific Computing: Algorithms and Tools Lecture #3 APMA 2821A, Spring 2008 Instructors: George Em Karniadakis Leopold Grinberg.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Taxanomy of parallel machines. Taxonomy of parallel machines Memory – Shared mem. – Distributed mem. Control – SIMD – MIMD.
CSCI-455/522 Introduction to High Performance Computing Lecture 2.
Multiprocessors CSE 4711 Multiprocessors - Flynn’s Taxonomy (1966) Single Instruction stream, Single Data stream (SISD) –Conventional uniprocessor –Although.
2. Multiprocessors Main Structures 2.1 Shared Memory x Distributed Memory Shared-Memory (Global-Memory) Multiprocessor:  All processors can access all.

Multiprocessors CSE 471 Aut 011 Multiprocessors - Flynn’s Taxonomy (1966) Single Instruction stream, Single Data stream (SISD) –Conventional uniprocessor.
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 Processing Group Members: PJ Kulick Jon Robb Brian Tobin.
1 Pertemuan 25 Parallel Processing 1 Matakuliah: H0344/Organisasi dan Arsitektur Komputer Tahun: 2005 Versi: 1/1.
Parallel Computer Architectures
4. Multiprocessors Main Structures 4.1 Shared Memory x Distributed Memory Shared-Memory (Global-Memory) Multiprocessor:  All processors can access all.
Introduction to Parallel Processing Ch. 12, Pg
Course Outline Introduction in software and applications. Parallel machines and architectures –Overview of parallel machines –Cluster computers (Myrinet)
Parallel Computing Basic Concepts Computational Models Synchronous vs. Asynchronous The Flynn Taxonomy Shared versus Distributed Memory Interconnection.
CS668- Lecture 2 - Sept. 30 Today’s topics Parallel Architectures (Chapter 2) Memory Hierarchy Busses and Switched Networks Interconnection Network Topologies.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Chapter 2 Parallel Architectures. Outline Interconnection networks Interconnection networks Processor arrays Processor arrays Multiprocessors Multiprocessors.
CHAPTER 12 INTRODUCTION TO PARALLEL PROCESSING CS 147 Guy Wong page
Course Wrap-Up Miodrag Bolic CEG4136. What was covered Interconnection network topologies and performance Shared-memory architectures Message passing.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
شبکه های میان ارتباطی 1 به نام خدا دکتر محمد کاظم اکبری مرتضی سرگلزایی جوان
Multiprocessing. Going Multi-core Helps Energy Efficiency William Holt, HOT Chips 2005 Adapted from UC Berkeley "The Beauty and Joy of Computing"
Multiple Processor Systems Chapter Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
Lecture 3 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Orange Coast College Business Division Computer Science Department CS 116- Computer Architecture Multiprocessors.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 8 Multiple Processor Systems Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Outline Why this subject? What is High Performance Computing?
Lecture 3: Computer Architectures
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 February Session 9.
Parallel Processing Presented by: Wanki Ho CS147, Section 1.
Multiprocessor So far, we have spoken at length microprocessors. We will now study the multiprocessor, how they work, what are the specific problems that.
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 May 2, 2006 Session 29.
Multiprocessor  Use large number of processor design for workstation or PC market  Has an efficient medium for communication among the processor memory.
1 Lecture 17: Multiprocessors Topics: multiprocessor intro and taxonomy, symmetric shared-memory multiprocessors (Sections )
Lecture 13 Parallel Processing. 2 What is Parallel Computing? Traditionally software has been written for serial computation. Parallel computing is the.
Flynn’s Taxonomy Many attempts have been made to come up with a way to categorize computer architectures. Flynn’s Taxonomy has been the most enduring of.
Overview Parallel Processing Pipelining
Parallel Architecture
CHAPTER SEVEN PARALLEL PROCESSING © Prepared By: Razif Razali.
Multiprocessor Systems
buses, crossing switch, multistage network.
Course Outline Introduction in algorithms and applications
CS 147 – Parallel Processing
Flynn’s Classification Of Computer Architectures
Overview Parallel Processing Pipelining
Protsessori ja mälu osa andmetöötluses
Parallel and Multiprocessor Architectures – Shared Memory
Parallel Architectures Based on Parallel Computing, M. J. Quinn
Different Architectures
Chapter 17 Parallel Processing
Symmetric Multiprocessing (SMP)
Outline Interconnection networks Processor arrays Multiprocessors
Multiprocessors - Flynn’s taxonomy (1966)
Multiple Processor Systems
buses, crossing switch, multistage network.
AN INTRODUCTION ON PARALLEL PROCESSING
Advanced Computer and Parallel Processing
Multiple Processor and Distributed Systems
Chapter 4 Multiprocessors
Advanced Computer and Parallel Processing
Lecture 24: Virtual Memory, Multiprocessors
Lecture 23: Virtual Memory, Multiprocessors
CSL718 : Multiprocessors 13th April, 2006 Introduction
Presentation transcript:

Paralleelarvutid Parallel Computer Architectures Pp Pp Ps Ps Pp Pp Lõpp Pp Pp T . f 1-f n CPU-d aktiivsed Järjestik osa Paralleliseeritav osa Üks CPU aktiivne f 1-f Kiirus fT (1-f)T/n CPU-de arv 11/12/2018 T. Evartson

P1 P1 P1 P1 Sünkroniseerimine P2 P2 P2 P2 P3 Sünkroniseerimine P3 P3 P3 P1 Tööde puhver P2 P3 P1 P2 P3 P4 P5 P6 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

SISD - Single Instruction Single Data-stream Käsu taseme paralleelsus Instruction-Level Parallelism Konveier. Pipeline S1 Käsu laadimine S2 Käsu deko- deerimine S3 Operandide laadimine S4 Käsu täitmine S5 Resultadi salvesta- mine S1 1 2 3 4 5 S2 1 2 3 4 5 S3 1 2 3 4 S4 1 2 3 S5 1 2 Aeg 11/12/2018 T. Evartson

Superscalar Architestures Käsu laadimine S2 Käsu deko- deerimine S3 Operandide laadimine S4 Käsu täitmine S5 Resultadi salvesta- mine S2 Käsu deko- deerimine S3 Operandide laadimine S4 Käsu täitmine S5 Resultadi salvesta- mine S4 ALU S4 ALU S1 Käsu laadimine S2 Käsu deko- deerimine S3 Operandide laadimine S4 Ujupunkt tehted S5 Resultadi salvesta- mine S4 ALU S4 ALU 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

SIMD - Single Instruction Multiple Data-stream Protsessori tasandi parlleelsus Processor-Level Parallelism Maatriksprotsessor Array Processor Juhtautomaat Control Unit Mälu Mälu Mälu Mälu Protsessor Protsessor Protsessor Protsessor Mälu Mälu Mälu Mälu Protsessor Protsessor Protsessor Protsessor Mälu Mälu Mälu Mälu Protsessor Protsessor Protsessor Protsessor Mälu Mälu Mälu Mälu Protsessor Protsessor Protsessor Protsessor Vektorprotsessor Vector Processor Sisendvektorid ALU Vektor ALU ALU ALU 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

MISD – Multi Instruction Single Data Mälu CU 1 CU 2 CU n ... Data Instructions Data Protsessor 1 Protsessor 1 Protsessor 1 ... 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

MIMD- Multiple Instruction Multiple Data-stream Multiprotsessor- Multiarvuti Multiprotsessor Multiprocessor CPU CPU Mälu CPU CPU CPU CPU CPU CPU Multiarvuti Multicomputer Mälu Mälu CPU CPU Message- passing interconnection network Mälu CPU CPU Mälu Mälu CPU CPU Mälu CPU CPU Mälu Mälu 11/12/2018 T. Evartson

11/12/2018 T. Evartson

Degree (fanout) - antud sõlme tulevate ühenduste arv Diameter - kaugus kahe teineteisest kõige kaugemal asuva sõlme vahel Bisection bandwith - sõlmede pooleks jagamisel kahe kõge halvemini ühendatud poole vaheline läbilaskevõime (bandwith) Dimensionality - kahte sõlme ühendavate teede valikute arv Loosley coupled - riistvara koosneb suurtest sõltumatutest CPU-dest (coarse-grained). Tightly coupled - tavaliselt väiksemad tihedalt seotud CPU-d (fine-grained). CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU 11/12/2018 T. Evartson

Static interconnection networks Bus topology Ring topology Star topology Binary tree P000 P00 P001 P0 P010 P01 P011 Hypercube topology N=3 N=1 N=2 11/12/2018 T. Evartson

Dynamic interconnection networks Crossbar network Pr1 Pr2 Pr3 Pr4 s11 s12 s13 s14 Pv1 s21 s22 s23 s24 Pv2 s31 s32 s33 s34 Pv3 s41 s42 s43 s44 Pv4 11/12/2018 T. Evartson

11/12/2018 T. Evartson

Switching CPU1 CPU2 Routing deadlock CPU1 CPU3 CPU4 CPU2 11/12/2018 T. Evartson

Multistage networks P1 P2 P3 P4 s11 s12 s13 s14 M1 s21 s22 s23 s24 M2 Multistage Switching Network X X A A B Y B Y Omega switching network Mälud CPU-d 000 1A 2A 3A 000 001 001 010 010 1B 2B 3B 011 011 100 100 1C 2C 3C 101 101 110 110 1D 2D 3D 111 111 11/12/2018 T. Evartson

Multiprotsessorid Multiprocessors Ühe siiniga multiprotsessor CPU CPU CPU CPU CPU Mälu Lokaalsete mäludega multiprotsessor Lokaalne mälu Lokaalne mälu Lokaalne mälu Lokaalne mälu Lokaalne mälu CPU CPU CPU CPU CPU Mälu 11/12/2018 T. Evartson

11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

UMA SMP - Uniform Memory Access Symmetric Multiprocessor Ilma Cacheta CPU1 CPU2 Mälu BUS Cache-ga CPU1 CPU2 Mälu cache cache BUS Cache ja privaat mäluga Privaat mälu Privaat mälu CPU1 CPU2 Mälu cache cache BUS 11/12/2018 T. Evartson

Cache coherence Cache coherence - eri protsessorite juurde kuuluvate cache-te info sidumine. Cache coherence protocol - reeglid eri protsessorite cache-te koostöö juhtimiseks Write through protocol Lugemine: cache-s olemas - kasutab inot puudub cache-s - laeb mälust cache-sse Kirjutamine: cach-e olemas - kirjutab cache-sse ja mällu puudub cache-s - kirjutab otse mällu Invalid Shared Exclusive Modified Cache entry states MESI cache coherency protocol CPU1 CPU2 CPU3 Mälu CPU1 loeb blokki a a Exclusive BUS CPU 2 loeb blokist a CPU1 CPU2 CPU3 Mälu a a Shared Shared BUS CPU1 CPU2 CPU3 Mälu CPU 2 kirjutab blokki a a Modified BUS 11/12/2018 T. Evartson

Probleemid: 1. Mälu. 2. Paraleliseeritavus. 3. Energia tarve. 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

NC-NUMA - No Caching NonUniform Memory Access Multiprocessors CPU Mälu CPU Mälu Lokaalne siin Lokaalne siin MMU MMU Süsteemi siin NC-NUMA Mälu 1 Mälu 2 Mälu 3 Mälu 4 CPU1 CPU2 CPU3 CPU4 BUS 11/12/2018 T. Evartson

Klassifikatsioon (Flynn´s taxonomy) Arvutid SISD SIMD MIMD MISD Vektor protsessor Vector Processor Konveier protsessorid Pipeline Processors Konveier Pipeline Maatriks protsessor Array Processor Mitme ALU-ga Superscalar Architecture Multi- protsessor Multiprocessors Multiarvuti Multicomputers UMA Uniform Memory Acess COMA Cashe Only Memory Acess NUMA NonUniform Memory Acess MPP Massively Parallel Processors NOW Network of Worksations Bus Switched CC-NUMA NC-NUMA Võrk Grid Hüperkuup Hypercube Shared memory Message passing 11/12/2018 T. Evartson

Interconnection Network CC-NUMA - Cache Coherent NonUniform Memory Access Multiprocesors CC-NUMA Mälu 1 Mälu 2 Mälu 3 Mälu 4 CPU1 CPU2 CPU3 CPU4 cache cache cache cache BUS CPU CPU Mälu Mälu Cache Cache Lokaalne siin Lokaalne siin Directory Directory MMU MMU Interconnection Network 11/12/2018 T. Evartson

Message-Passing Multicomputers MPPs - Massively Parallel Processors CPU CPU Mälu CPU CPU Mälu . . . . . . Disk I/O Disk I/O Communucation Processor Communucation Processor High-prformance interconnection network NOW - Network of Workstations COW - Cluster of Workstations Computer Computer Computer Packet Packet 11/12/2018 T. Evartson