Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism Computer...

16
Types of Types of Parallelism Parallelism Chapter 17 Chapter 17 Justin Bellomi Justin Bellomi

Transcript of Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism Computer...

Page 1: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Types of ParallelismTypes of ParallelismChapter 17Chapter 17

Justin BellomiJustin Bellomi

Page 2: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Characterizations of ParallelismCharacterizations of Parallelism

Computer Architects characterize the type Computer Architects characterize the type and amount of parallelism that a design and amount of parallelism that a design has, instead of simply classifying it as has, instead of simply classifying it as Parallel Parallel or or Non-Parallel.Non-Parallel.

Virtually all computer systems have some Virtually all computer systems have some sort of parallelism.sort of parallelism.

FlynnFlynn defined a list of key defined a list of key characterizations using a system of names characterizations using a system of names in 1996.in 1996.

Page 3: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Flynn Characterizations:Flynn Characterizations: Terms used to describe Parallel Terms used to describe Parallel

systemssystems

Microscopic Vs. MacroscopicMicroscopic Vs. MacroscopicSymmetric Vs. AsymmetricSymmetric Vs. AsymmetricFine-grain Vs. Coarse-grainFine-grain Vs. Coarse-grainExplicit Vs. ImplicitExplicit Vs. Implicit

Page 4: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Microscopic Vs. MacroscopicMicroscopic Vs. Macroscopic

““Parallelism is so fundamental that an Parallelism is so fundamental that an architect cannot design a computer architect cannot design a computer without thinking about parallel hardware” without thinking about parallel hardware” ( Comer 280 ).( Comer 280 ).

Microscopic refers to aspects of Microscopic refers to aspects of Parallelism that are not especially visible.Parallelism that are not especially visible.

Macroscopic refers to the use of Macroscopic refers to the use of parallelism as the basic design principal parallelism as the basic design principal around a system.around a system.

Page 5: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

MicroscopicMicroscopic

The term Microscopic is used to describe The term Microscopic is used to describe parallelism that is present in a system, but not parallelism that is present in a system, but not necessarily visible.necessarily visible.

To be more specific, microscopic parallelism To be more specific, microscopic parallelism refers to the use of parallel hardware within a refers to the use of parallel hardware within a specific component.specific component.

““Without parallel hardware, various components Without parallel hardware, various components of a computer system cannot operate at high of a computer system cannot operate at high speed” speed” ( Comer 280 ).( Comer 280 ).

Page 6: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Examples of Microscopic Examples of Microscopic Parallelism:Parallelism:

ALU – Most ALUs perform integer computation ALU – Most ALUs perform integer computation by processing multiple bits at a time. An ALU by processing multiple bits at a time. An ALU can be designed to compute an XOR on a pair can be designed to compute an XOR on a pair of integers in a single operation.of integers in a single operation.

Registers – General Purpose registers in a CPU Registers – General Purpose registers in a CPU heavily use microscopic parallelism. Each bit in heavily use microscopic parallelism. Each bit in a register is implemented by a separate circuit, a register is implemented by a separate circuit, and parallel hardware is used to move data from and parallel hardware is used to move data from the registers to the ALUs.the registers to the ALUs.

Page 7: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Examples of Microscopic Examples of Microscopic Parallelism:Parallelism:

Physical Memory – Physical Memory – fetchfetch and and storestore operations use hardware that is designed operations use hardware that is designed to transfer an entire word on each to transfer an entire word on each operation.operation.

Page 8: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Macroscopic ParallelismMacroscopic Parallelism

The term Macroscopic parallelism is used to The term Macroscopic parallelism is used to characterize the use of parallelism across characterize the use of parallelism across multiple, large-scale components of a multiple, large-scale components of a computer system.computer system.

Page 9: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Examples of Macroscopic Examples of Macroscopic Parallelism:Parallelism:

Multiple, Identical Processors – Advertised ‘dual-Multiple, Identical Processors – Advertised ‘dual-processor’ PCs contain two identical CPU chips. processor’ PCs contain two identical CPU chips. The hardware is designed to allow both chips to The hardware is designed to allow both chips to function at the same time.function at the same time.

Multiple, Dissimilar Processors – A system that Multiple, Dissimilar Processors – A system that uses special-purpose coprocessors. uses special-purpose coprocessors. “For “For example, a computer optimized for high-speed example, a computer optimized for high-speed graphics might have four displays attached, with graphics might have four displays attached, with a special graphics processor running each a special graphics processor running each display”display” ( Comer 282 ). ( Comer 282 ).

Page 10: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Symmetric Vs. AsymmetricSymmetric Vs. Asymmetric

The term symmetric parallelism is used to The term symmetric parallelism is used to characterize a design that uses multiple characterize a design that uses multiple identical elements, such as processors, identical elements, such as processors, that have the ability to operate that have the ability to operate simultaneously.simultaneously.

Asymmetric parallelism would use Asymmetric parallelism would use elements that are not identicalelements that are not identical

Page 11: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Symmetric parallelismSymmetric parallelism

An example of symmetric parallelism is a An example of symmetric parallelism is a dual-processor PC, assuming the two dual-processor PC, assuming the two processor are identical the resulting PC processor are identical the resulting PC would be considered symmetric.would be considered symmetric.

Page 12: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Asymmetric parallelismAsymmetric parallelism

A PC that has a graphics coprocessor and a A PC that has a graphics coprocessor and a math coprocessor is classified as using math coprocessor is classified as using asymmetric parallelism because all of the asymmetric parallelism because all of the processors can work simultaneously, but processors can work simultaneously, but the components are all designed to do a the components are all designed to do a different task.different task.

Page 13: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Fine-grain Vs. Coarse-grain Fine-grain Vs. Coarse-grain ParallelismParallelism

Fine-grain parallelism refers to computers Fine-grain parallelism refers to computers that provide parallelism on the level of that provide parallelism on the level of single instructions and single data single instructions and single data elements.elements.

Coarse-grain parallelism refers to Coarse-grain parallelism refers to computers that deal with whole programs computers that deal with whole programs and large portions of data.and large portions of data.

Page 14: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Explicit Vs. Implicit ParallelismExplicit Vs. Implicit Parallelism

Explicit parallelism requires a programmer Explicit parallelism requires a programmer to assume control of the parallel unit.to assume control of the parallel unit.

Implicit parallelism does not require the Implicit parallelism does not require the programmer to take control.programmer to take control.

An example of explicit parallelism is a An example of explicit parallelism is a hardware lock on a section of data.hardware lock on a section of data.

Page 15: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Questions?Questions?

Microscopic Vs. MacroscopicMicroscopic Vs. MacroscopicSymmetric Vs. AsymmetricSymmetric Vs. AsymmetricFine-grain Vs. Coarse-grainFine-grain Vs. Coarse-grainExplicit Vs. ImplicitExplicit Vs. Implicit

Page 16: Types of Parallelism Chapter 17 Justin Bellomi. Characterizations of Parallelism  Computer Architects characterize the type and amount of parallelism.

Works Cited:Works Cited:

Comer, Douglas E. Comer, Douglas E. Essentials of Computer ArchitectureEssentials of Computer Architecture. Pearson Education, . Pearson Education, Inc. New Jersey: Upper Saddle River, 2005Inc. New Jersey: Upper Saddle River, 2005