DOC PREVIEW
SJSU CS 147 - Parallel Processing

This preview shows page 1-2-19-20 out of 20 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS 147 – Parallel ProcessingMultiprocessingTypes of multiprocessing - SymmetricSlide 4Multiprocessing classification – michael j. flynnFlynn’s taxonomy – classification of computer architecturesSISD – Single instruction Single DataSIMD – Single instruction multiple dataMISD – Multiple Instruction Single dataMIMD - Multiple instruction multiple dataMapping Data and instruction set to memoryParallel Computer Memory Architecture – Shared memoryMimd Styles – uniform memory access (UMA)Uniform Memory AccessMimd Styles – non-uniform memory access (nUMA)NUMA – Non-Uniform Memory AccessNUMA - Non-Uniform Memory AccessDistributed MemoryHybrid distributed-shared MemoryReferencesSophia SoohooThe use of 2 or more central processing units in a single computer systemThe CPUS share the other components of a computerMemoryDiskSystem busSymmetricMore than one computer processor will share memory capacity and data path protocolOnly one copy or the operating system will be used to initiate all the orders executed by the processors involved in the connectionEach CPU can act independentlyAll CPUs can be equal, or some processors can be reserved for particular usesDrawback: bottleneck caused by bandwidth of the memory bus connecting the various processors, the memory, and the disk arraysProfessor at Stanford UniversityReceived his PhD from Purdue UniversityWorked for 10 years in computer organization and design.Proposed Flynn’s taxonomy in 1966Single InstructionMultiple InstructionSingle dataSISD MISDMultiple dataSIMD MIMDFlynn’s taxonomy distinguishes multi-processor computer architecture according to how they can be classified along the 2 independent dimensions of instruction and data.SISD – single instruction single dataMISD – multiple instruction single dataSIMD – single instruction multiple dataMIMD – multiple instruction multiple data•A serial (non parallel) computer•Single instruction – only one instruction steam is being acted on by any CPU during any one clock cycle•Oldest classification•Modern day uses:•Older mainframes•Minicomputers•Workstations•PCsA type of parallel computerSingle instruction – all CPUs execute the same instruction at any given clock cycleMultiple data – each CPU can operate on a different data elementSynchronous (lockstep) Since only one instruction is processed at a time, not necessary for each CPU to fetch and decode the instructionTypes: Processor arrays and vector pipelinesUses: Computers with GPUsSingle data stream is fed into CPUsEach CPU operates on the data independently through independent instruction streamsAdvantage – redundancy/failsafe; multiple CPUs perform the same tasks on the same data, which reduces the chance of incorrect results if a single CPU failsDisadvantage – expensiveUses: array processorsMost common type of parallel computingMultiple instruction – every processor may be executing a different instruction streamMultiple data – every CPU can work with a different data streamExecution can be synchronous or asynchronousExamples: super computers, multiprocessor SMPModel is divided into 3 main types of memory architectures:Shared MemoryDistributed MemoryDistributed Shared MemorySISD SIMD MISD MIMD GMSV GMMP DMSV DMMP Single data stream Multiple data streams Single instr stream Multiple instr streams Flynn’s categories John so n’ s e xpansion Shared variables Message passing Global me mory Distributed me mory Uniprocessors Rarely used Array or vector processors Multiproc’s or multicomputers Shared-memory multiprocessors Rarely used Distributed shared memory Distrib-memory multicomputersAbility for all processors to access all memory as global address spaceMultiple CPUs can operate independently but share same memory resourcesChanges in memory location affected by a CPU are visible to all other CPUsDivided into 2 main classes:UMANUMAUniform Memory AccessAll CPUs share the physical memory uniformlyAccess time is independent of which CPU makes the request or which memory chip contains the transferred dataEach CPU has a private cacheIdentical processorsCache coherent – if one processor updates a location in shared memory, all other process know about the update.In the UMA memory architecture, all processors access shared memory through a bus (or another type of interconnect)Used in multiprocessorsProvide separate memory for each CPU, avoiding performance hit when several CPUs attempt to address the same memoryProvides a performance benefit over single shared memory by a factor roughly the number of processorsMemory access time depends on the memory location relative to the processorProcessor can access its own local memory faster that non-local memoryAdvantagesGlobal address space provides a user friendly programming to memoryData sharing between tasks is fast and uniform due to proximity of memory to CPUsDisadvantagesLack of scalability between memory and CPUs. Adding more CPUs increases the traffic on shared memory CPU pathProgrammer responsibility for synchronization constructs that insure “correct” access to global memoryExpensive to design and produce shared memory machinesMemory access time varies with the location of the data to be accessed. If data resides in local memory, access is fast. If data resides in remote memory, access is slower. The advantage of the NUMA architecture as a hierarchical shared memory scheme is its potential to improve average case access time through the introduction of fast, local memory.Require a communication network to connect inter-processor memoryCPUs have their own distributed memoryMemory in one CPU does not map to another – each processor sees only its own memoryNo concept of global address spaceWhen processor needs to access data in another CPU, the programmer must define how and when data is communicatedShared memory component is usually cache coherent SMP machineCombination of both shared and distributed memoryDistributed memory component is the networking of multiple SMPsRequired to move data from one SMP to


View Full Document

SJSU CS 147 - Parallel Processing

Documents in this Course
Cache

Cache

24 pages

Memory

Memory

54 pages

Memory

Memory

70 pages

Lecture 1

Lecture 1

53 pages

Cisc

Cisc

18 pages

Quiz 1

Quiz 1

4 pages

LECTURE 2

LECTURE 2

66 pages

RISC

RISC

40 pages

LECTURE 2

LECTURE 2

66 pages

Lecture 2

Lecture 2

67 pages

Lecture1

Lecture1

53 pages

Chapter 5

Chapter 5

14 pages

Memory

Memory

27 pages

Counters

Counters

62 pages

Load more
Download Parallel Processing
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Parallel Processing and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Parallel Processing 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?