The End of Denial Architecture and The Rise of Throughput Computing

33
The End of Denial Architecture and The Rise of Throughput Computing Bill Dally Chief Scientist & Sr. VP of Research, NVIDIA Bell Professor of Engineering, Stanford University May 21, 2009 University of Maryland CUDA Center of Excellence

description

The End of Denial Architecture and The Rise of Throughput Computing. Bill Dally Chief Scientist & Sr. VP of Research, NVIDIA Bell Professor of Engineering, Stanford University May 21, 2009 University of Maryland CUDA Center of Excellence. Performance = Parallelism Efficiency = Locality - PowerPoint PPT Presentation

Transcript of The End of Denial Architecture and The Rise of Throughput Computing

Page 1: The End of Denial Architecture and The Rise of Throughput Computing

The End of Denial Architectureand The Rise of Throughput Computing

Bill DallyChief Scientist & Sr. VP of Research, NVIDIA

Bell Professor of Engineering, Stanford UniversityMay 21, 2009

University of MarylandCUDA Center of Excellence

Page 2: The End of Denial Architecture and The Rise of Throughput Computing

Outline

Performance = ParallelismEfficiency = LocalitySingle-thread processors are in denial about these two factsWe are entering the era of Throughput ComputingStream Processors

Parallel arithmetic unitsExposed storage hierarchy

Stream ProgrammingBulk operations

GPU Computing

Page 3: The End of Denial Architecture and The Rise of Throughput Computing

Moore’s Law

In 1965 Gordon Moore predicted the number of transistors on an integrated circuit would double every year.

Later revised to 18 monthsAlso predicted L3 power scaling for constant functionNo prediction of processor performanceAdvanceds in architecture turn device scaling into performance scaling

Moore, Electronics 38(8) April 19, 1965

Page 4: The End of Denial Architecture and The Rise of Throughput Computing

The Computer Value Chain

Moore’s law gives us more transistorsArchitects turn these transistors into more performanceApplications turn this performance into value for the user

Page 5: The End of Denial Architecture and The Rise of Throughput Computing

Discontinuity 1The End of ILP Scaling

1e+0

1e+1

1e+2

1e+3

1e+4

1e+5

1e+6

1e+7

1980 1990 2000 2010 2020

Perf (ps/Inst)

52%/year

19%/year

ps/gate 19%Gates/clock

9%Clocks/inst

18%

Dally et al. The Last Classical Computer, ISAT Study, 2001

Page 6: The End of Denial Architecture and The Rise of Throughput Computing

Future potential of novel architecture is large (1000 vs 30)

1e-4

1e-31e-2

1e-1

1e+01e+1

1e+21e+3

1e+4

1e+51e+6

1e+7

1980 1990 2000 2010 2020

Perf (ps/Inst)Linear (ps/Inst)

52%/year

74%/year

19%/year30:1

1,000:1

30,000:1

Dally et al. The Last Classical Computer, ISAT Study, 2001

Page 7: The End of Denial Architecture and The Rise of Throughput Computing

Single-Thread Processor Performance vs Calendar Year

1

10

100

1000

10000

1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006

Performance (vs. VAX-

25%/year

52%/year

20%/year

Source: Hennessy & Patterson, CAAQA, 4th Edition

Page 8: The End of Denial Architecture and The Rise of Throughput Computing

Technology Constraints

Page 9: The End of Denial Architecture and The Rise of Throughput Computing

CMOS Chip is our Canvas

20mm

Page 10: The End of Denial Architecture and The Rise of Throughput Computing

4,000 64b FPUs fit on a chip

20mm64b FPU0.1mm2

50pJ/op1.5GHz

Page 11: The End of Denial Architecture and The Rise of Throughput Computing

200,000 16b MACs fit on a chip

20mm64b FPU0.1mm2

50pJ/op1.5GHz

.

16b MAC0.002mm2

1pJ/op1.5GHz

Page 12: The End of Denial Architecture and The Rise of Throughput Computing

Moving a word across die = 124MACs, 10FMAsMoving a word off chip = 250 MACs, 20FMAs

20mm64b FPU0.1mm2

50pJ/op1.5GHz .

16b MAC0.002mm2

1pJ/op1.5GHz

64b 1mm Channel

25pJ/word10

mm

250

pJ, 4

cycle

s16b 1mm Channel6pJ/word

10m

m 6

2pJ,

4cy

cles

64b Off-Chip Channel1nJ/word

16b Off-Chip Channel

250pJ/word

64b Floating Point 16b Fixed Point

Page 13: The End of Denial Architecture and The Rise of Throughput Computing

Discontinuity 2The End of L3 Power Scaling

Gordon Moore, ISSCC 2003

Page 14: The End of Denial Architecture and The Rise of Throughput Computing

Performance = Parallelism

Efficiency = Locality

Page 15: The End of Denial Architecture and The Rise of Throughput Computing

The End of Denial Architecture

Single thread processors are in denial about parallelism and localityThey provide two illusions:

Serial executionDenies parallelismTries to exploit parallelism with ILP – limited scalability

Flat memoryDenies localityTries to provide illusion with caches – very inefficient when working set doesn’t fit in the cache

Page 16: The End of Denial Architecture and The Rise of Throughput Computing

We are entering the era of Throughput Computing

Page 17: The End of Denial Architecture and The Rise of Throughput Computing

Throughput computing is what matters now

Latency optimized processors (most CPUs) are improving very slowly

Little value is being delivered from the evolution of these processors

Throughput optimized processors (like GPUs) are still improving at >70% per year

This drives new throughput applications that convert this performance to value

Going forward throughput processors matter, not latency processors

Page 18: The End of Denial Architecture and The Rise of Throughput Computing

Applications

Page 19: The End of Denial Architecture and The Rise of Throughput Computing

Scientific Applications

Large data setsLots of parallelism

Increasingly irregular (AMR)Irregular and dynamic data structuresRequires efficient gather/scatter

Increasingly complex modelsLots of locality

Global solution sometimes bandwidth limited

Less locality in these phases

Page 20: The End of Denial Architecture and The Rise of Throughput Computing

Embedded Applications

Codecs, modems, image processing, etc…Lots of data (pixels, samples, etc…)

Lots of parallelismIncreasingly complex

Lots of parallelismLots of data dependent control

High arithmetic intensity Lots of locality

Page 21: The End of Denial Architecture and The Rise of Throughput Computing

Performance = Parallelism

Efficiency = Locality

Fortunately, most applications have lots of both.

Amdahl’s law doesn’t apply to most future applications.

Page 22: The End of Denial Architecture and The Rise of Throughput Computing

Stream Processor Architecture

Page 23: The End of Denial Architecture and The Rise of Throughput Computing

Optimize use of scarce bandwidth

Provide rich, exposed storage hierarchy

R

RM

A

R

A

R

A

Switch

R

A

R

A

R

A

Switch

R

A

R

A

R

A

Switch

RM RM

Switch

CM

LM

Switch

Global Memory

Page 24: The End of Denial Architecture and The Rise of Throughput Computing

Optimize use of scarce bandwidth

Provide rich, exposed storage hierarchyExplicitly manage data movement on this hierarchy

Reduces demand, increases utilization

ComputeFlux

States

ComputeNumerical

Flux

ElementFaces

GatheredElements

NumericalFlux

GatherCell

ComputeCell

Interior

AdvanceCell

Elements(Current)

Elements(New)

Read-Only Table Lookup Data(Master Element)

FaceGeometry

CellOrientations

CellGeometry

Page 25: The End of Denial Architecture and The Rise of Throughput Computing

Predictability enables efficient static scheduling

0

10

20

30

40

50

60

70

80

90

100

110

120

0

10

20

30

40

50

60

70

80

90

100

110

120

20

30

40

50

60

70

80

90

100

110

120

20

30

40

50

60

70

80

90

100

110

120

ComputeCellInt kernel from StreamFem3DOver 95% of peak with simple hardwareDepends on explicit communication to make delays predictable

One iteration SW Pipeline

Page 26: The End of Denial Architecture and The Rise of Throughput Computing

Summary so far

Arithmetic is cheap, bandwidth is expensivePerformance = parallelismEfficiency = LocalityAnd most applications have lots of both

Optimize use of scarce bandwidthRich, exposed storage hierarchyExplicit, bulk transfersReduces demand, increases utilizationEnables more arithmetic and predictable execution

Page 27: The End of Denial Architecture and The Rise of Throughput Computing

A CUDA-Enabled GPU is The Ultimate Throughput Computer

240 scalar processors30SMs x 8 each

> 1TFLOPS peakExposed, hierarchical memory10-200x performance & efficiencyof a latency-optimized processor

GeForce GTX 280 / Tesla T10

Page 28: The End of Denial Architecture and The Rise of Throughput Computing

GPU Throughput Computer

Communication Fabric

Mem

ory & I/O

Fixe

d Fu

nctio

n A

ccel

erat

ion

GeForce GTX 280 / Tesla T10

Page 29: The End of Denial Architecture and The Rise of Throughput Computing

CUDA as a Stream Language

Explicit control of the memory hierarchy with shared memory

__shared__ float a[SIZE] ;Also enables communication between threads of a CTATransfer data up and down the hierarchyOperate on data with kernelsBut does allow access to arbitrary data within a kernel

Page 30: The End of Denial Architecture and The Rise of Throughput Computing

Examples

146X

Interactive visualization of

volumetric white matter

connectivity

36X

Ionic placement for molecular

dynamics simulation on GPU

19X

Transcoding HD video stream to

H.264

17X

Fluid mechanics in Matlab using .mex file CUDA function

100X

Astrophysics N-body simulation

149X

Financial simulation of

LIBOR model with swaptions

47X

GLAME@lab: an M-script API for GPU

linear algebra

20X

Ultrasound medical imaging

for cancer diagnostics

24X

Highly optimized object oriented

molecular dynamics

30X

Cmatch exact string matching to

find similar proteins and gene

sequences

Page 31: The End of Denial Architecture and The Rise of Throughput Computing

Conclusion

Page 32: The End of Denial Architecture and The Rise of Throughput Computing

The Road Ahead

20x improvement in GPU performance by 2015<2x improvement in CPU performance by 2015

Most of the value delivered to end user comes from the GPU, the throughput computer

But not all things scale at the same rateMemory bandwidth scales by <5xEnergy per bit-mm on chip nearly constantEnergy per op only improves by 5xEach of these presents an interesting challenge

Page 33: The End of Denial Architecture and The Rise of Throughput Computing

Conclusion – Parallelism and Locality for efficient computation

Denial architecture is at an endWe are entering an era of Throughput Computing

Heterogeneous computersValue comes from Throughput Applications running on Throughput Processors (like a GPU)

Performance = parallelism, Efficiency = localityApplications have lots of both

Stream processingMany ALUs exploit parallelismRich, exposed storage hierarchy enables localitySimple control and synchronization reduces overhead

Stream programming - explicit movement, bulk operationsEnables strategic optimizationExposes parallelism and locality

Result: performance and efficiencyTOPs on a chip20-30x efficiency of conventional processors.Performance portability

GPUs are the ultimate stream processors