Amdahl’s Law in the Multicore Era

52
University of Wisconsin-Madison © 2008 Multifacet Project Amdahl’s Law in the Multicore Era Mark D. Hill and Michael R. Marty University of Wisconsin—Madison October 2008 @ U. Wisconsin ME964 (Negrut) IBM’s Dr. Thomas Puzak: Everyone knows Amdahl’s Law But quickly forgets it!

description

Amdahl’s Law in the Multicore Era. Mark D. Hill and Michael R. Marty University of Wisconsin—Madison October 2008 @ U. Wisconsin ME964 (Negrut). IBM’s Dr. Thomas Puzak: Everyone knows Amdahl’s Law But quickly forgets it!. Executive Summary. Develop A Corollary to Amdahl’s Law - PowerPoint PPT Presentation

Transcript of Amdahl’s Law in the Multicore Era

Page 1: Amdahl’s Law in the Multicore Era

University of Wisconsin-Madison© 2008 Multifacet Project

Amdahl’s Law in the Multicore Era

Mark D. Hill and Michael R. Marty

University of Wisconsin—Madison

October 2008 @ U. Wisconsin ME964 (Negrut)

IBM’s Dr. Thomas Puzak:

Everyone knows Amdahl’s Law

But quickly forgets it!

Page 2: Amdahl’s Law in the Multicore Era

4 04/21/23 Wisconsin Multifacet Project

Executive Summary

• Develop A Corollary to Amdahl’s Law– Simple Model of Multicore Hardware – Complements Amdahl’s software model– Fixed chip resources for cores– Core performance improves sub-linearly with resources

• Research Implications(1) Need Dramatic Increases in Parallelism (No Surprise)

• 99% parallel limits 256 cores to speedup 72• New Moore’s Law: Double Parallelism Every Two Years?

(2) Many larger chips need increased core performance(3) HW/SW for asymmetric designs (one/few cores enhanced)(4) HW/SW for dynamic designs (serial parallel)

Page 3: Amdahl’s Law in the Multicore Era

5 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 4: Amdahl’s Law in the Multicore Era

Technology & Moore’s Law

Transistor1947

Integrated Circuit 1958 (a.k.a. Chip)

Moore’s Law 1964:

# Transistors per Chip doubles every two years (or 18 months)

Page 5: Amdahl’s Law in the Multicore Era

Architects & Another Moore’s Law

Microprocessor 1971

50M transistors ~2000

Popular Moore’s Law:

Processor (core) performance doubles every two years

Page 6: Amdahl’s Law in the Multicore Era

Multicore Chip (a.k.a. Chip Multiprocesors)

Why Multicore?• Power simpler structures• Memory Concurrent accesses

to tolerate off-chip latency• Wires intra-core wires shorter• Complexity divide & conquer

But More cores; NOT faster cores

Will effective chip performance

keep doubling every two years?Eight 4-way cores 2006

Page 7: Amdahl’s Law in the Multicore Era

9 04/21/23 Wisconsin Multifacet Project

Virtuous Cycle, circa 1950 – 2005 (per Larus)

World-Wide Software Market (per IDC):

$212b (2005) $310b (2010)

Increasedprocessor

performance

Larger, morefeature-fullsoftware

Largerdevelopment

teams

Higher-levellanguages &abstractions

Slowerprograms

Page 8: Amdahl’s Law in the Multicore Era

Increasedprocessor

performance

Larger, morefeature-fullsoftware

Largerdevelopment

teams

Higher-levellanguages &abstractions

Slowerprograms

10 04/21/23 Wisconsin Multifacet Project

Virtuous Cycle, 2005 – ???

World-Wide Software Market $212b (2005) ?

XGAME OVER — NEXT LEVEL?

Thread Level Parallelism & Multicore Chips

Page 9: Amdahl’s Law in the Multicore Era

How has Architecture Research Prepared?

11 04/21/23 Wisconsin Multifacet Project

Per

cen

t M

ult

ipro

cess

or

Pap

ers

in I

SC

A

Source: Hill & Rajwar, The Rise & Fall of Multiprocessor Papers in ISCA, http://www.cs.wisc.edu/~markhill/mp2001.html (3/2001)

Lead up to

Multicore

WhatNext?SMP Bulge

Page 10: Amdahl’s Law in the Multicore Era

How has Architecture Research Prepared?

12 04/21/23 Wisconsin Multifacet Project

Per

cen

t M

ult

ipro

cess

or

Pap

ers

in I

SC

AReacted?

Will Architecture Research Overreact?

Source: Hill, 2/2008

Multicore Ramp

Page 11: Amdahl’s Law in the Multicore Era

16 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 12: Amdahl’s Law in the Multicore Era

17 04/21/23 Wisconsin Multifacet Project

Recall Amdahl’s Law

• Begins with Simple Software Assumption (Limit Arg.)– Fraction F of execution time perfectly parallelizable– No Overhead for

– Scheduling– Communication– Synchronization, etc.

– Fraction 1 – F Completely Serial

• Time on 1 core = (1 – F) / 1 + F / 1 = 1

• Time on N cores = (1 – F) / 1 + F / N

Page 13: Amdahl’s Law in the Multicore Era

18 04/21/23 Wisconsin Multifacet Project

Recall Amdahl’s Law [1967]

• For mainframes, Amdahl expected 1 - F = 35%– For a 4-processor speedup = 2– For infinite-processor speedup < 3– Therefore, stay with mainframes with one/few processors

• Amdahl’s Law applied to Minicomputer to PC Eras• What about the Multicore Era?

Amdahl’s Speedup =1

+1 - F

1

F

N

Page 14: Amdahl’s Law in the Multicore Era

19 04/21/23 Wisconsin Multifacet Project

Designing Multicore Chips Hard

• Designers must confront single-core design options– Instruction fetch, wakeup, select– Execution unit configuation & operand bypass– Load/queue(s) & data cache– Checkpoint, log, runahead, commit.

• As well as additional design degrees of freedom– How many cores? How big each?– Shared caches: levels? How many banks?– Memory interface: How many banks?– On-chip interconnect: bus, switched, ordered?

Page 15: Amdahl’s Law in the Multicore Era

20 04/21/23 Wisconsin Multifacet Project

Want Simple Multicore Hardware Model

To Complement Amdahl’s Simple Software Model

(1) Chip Hardware Roughly Partitioned into– Multiple Cores (with L1 caches)– The Rest (L2/L3 cache banks, interconnect, pads, etc.)– Changing Core Size/Number does NOT change The Rest

(2) Resources for Multiple Cores Bounded– Bound of N resources per chip for cores– Due to area, power, cost ($$$), or multiple factors– Bound = Power? (but our pictures use Area)

Page 16: Amdahl’s Law in the Multicore Era

21 04/21/23 Wisconsin Multifacet Project

Want Simple Multicore Hardware Model, cont.

(3) Micro-architects can improve single-core performance using more of the bounded resource

• A Simple Base Core– Consumes 1 Base Core Equivalent (BCE) resources– Provides performance normalized to 1

• An Enhanced Core (in same process generation)– Consumes R BCEs– Performance as a function Perf(R)

• What does function Perf(R) look like?

Page 17: Amdahl’s Law in the Multicore Era

22 04/21/23 Wisconsin Multifacet Project

More on Enhanced Cores

• (Performance Perf(R) consuming R BCEs resources)

• If Perf(R) > R Always enhance core• Cost-effectively speedups both sequential & parallel

• Therefore, Equations Assume Perf(R) < R

• Graphs Assume Perf(R) = Square Root of R– 2x performance for 4 BCEs, 3x for 9 BCEs, etc.– Why? Models diminishing returns with “no coefficients”– Alpha EV4/5/6 [Kumar 11/2005] & Intel’s Pollack’s Law

• How to speedup enhanced core?– <Insert favorite or TBD micro-architectural ideas here>

Page 18: Amdahl’s Law in the Multicore Era

23 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 19: Amdahl’s Law in the Multicore Era

24 04/21/23 Wisconsin Multifacet Project

How Many (Symmetric) Cores per Chip?

• Each Chip Bounded to N BCEs (for all cores)• Each Core consumes R BCEs• Assume Symmetric Multicore = All Cores Identical• Therefore, N/R Cores per Chip — (N/R)*R = N• For an N = 16 BCE Chip:

Sixteen 1-BCE cores Four 4-BCE cores One 16-BCE core

Page 20: Amdahl’s Law in the Multicore Era

25 04/21/23 Wisconsin Multifacet Project

Performance of Symmetric Multicore Chips

• Serial Fraction 1-F uses 1 core at rate Perf(R) • Serial time = (1 – F) / Perf(R)

• Parallel Fraction uses N/R cores at rate Perf(R) each• Parallel time = F / (Perf(R) * (N/R)) = F*R / Perf(R)*N

• Therefore, w.r.t. one base core:

• Implications?

Symmetric Speedup =1

+1 - F

Perf(R)

F * R

Perf(R)*N

Enhanced Cores speed Serial & Parallel

Page 21: Amdahl’s Law in the Multicore Era

26 04/21/23 Wisconsin Multifacet Project

Symmetric Multicore Chip, N = 16 BCEs

F=0.5, Opt. Speedup S = 4 = 1/(0.5/4 + 0.5*16/(4*16))

Need to increase parallelism to make multicore optimal!

(16 cores) (8 cores) (2 cores) (1 core)

F=0.5R=16,Cores=1,Speedup=4

(4 cores)

Page 22: Amdahl’s Law in the Multicore Era

27 04/21/23 Wisconsin Multifacet Project

Symmetric Multicore Chip, N = 16 BCEs

At F=0.9, Multicore optimal, but speedup limited

Need to obtain even more parallelism!

F=0.5R=16,Cores=1,Speedup=4

F=0.9, R=2, Cores=8, Speedup=6.7

Page 23: Amdahl’s Law in the Multicore Era

28 04/21/23 Wisconsin Multifacet Project

Symmetric Multicore Chip, N = 16 BCEs

F matters: Amdahl’s Law applies to multicore chips

MANY Researchers should target parallelism F first

F1, R=1, Cores=16, Speedup16

Page 24: Amdahl’s Law in the Multicore Era

29 04/21/23 Wisconsin Multifacet Project

Need a Third “Moore’s Law?”

• Technologist’s Moore’s Law– Double Transistors per Chip every 2 years

– Slows or stops: TBD

• Microarchitect’s Moore’s Law– Double Performance per Core every 2 years

– Slowed or stopped: Early 2000s

• Multicore’s Moore’s Law– Double Cores per Chip every 2 years

– & Double Parallelism per Workload every 2 years

– & Aided by Architectural Support for Parallelism

– = Double Performance per Chip every 2 years

– Starting now

• Software as Producer, not Consumer, of Performance Gains!

Page 25: Amdahl’s Law in the Multicore Era

30 04/21/23 Wisconsin Multifacet Project

Symmetric Multicore Chip, N = 16 BCEs

As Moore’s Law enables N to go from 16 to 256 BCEs,

More cores? Enhance cores? Or both?

Recall F=0.9, R=2, Cores=8, Speedup=6.7

Page 26: Amdahl’s Law in the Multicore Era

31 04/21/23 Wisconsin Multifacet Project

Symmetric Multicore Chip, N = 256 BCEs

As Moore’s Law increases N, often need enhanced core designs

Some arch. researchers should target single-core performance

F=0.9R=28 (vs. 2)Cores=9 (vs. 8)Speedup=26.7 (vs. 6.7)ENHANCE CORES!

F1R=1 (vs. 1)Cores=256 (vs. 16)Speedup=204 (vs. 16) MORE CORES!

F=0.99R=3 (vs. 1)

Cores=85 (vs. 16)Speedup=80 (vs. 13.9)

MORE CORES& ENHANCE CORES!

Page 27: Amdahl’s Law in the Multicore Era

Software for Large Symmetric Multicore Chips

• F matters: Amdahl’s Law applies to multicore chips

• N = 256– F=0.9 Speedup = 27 @ R = 28– F=0.99 Speedup = 80 @ R = 3– F=0.999 Speedup = 204 @ R = 1

• N = 1024– F=0.9 Speedup = 53 @ R = 114– F=0.99 Speedup = 161 @ R = 10– F=0.999 Speedup = 506 @ R = 1

• Researchers must target parallelism F first

Page 28: Amdahl’s Law in the Multicore Era

Aside: Cost-Effective Parallel Computing

• Isn’t Speedup(C) < C Inefficient? (C = #cores)

• Much of a Computer’s Cost OUTSIDE Processor [Wood & Hill, IEEE Computer 2/1995]

• Let Costup(C) = Cost(C)/Cost(1)

• Parallel Computing Cost-Effective:• Speedup(C) > Costup(C)• 1995 SGI PowerChallenge w/ 500MB:• Costup(32) = 8.6

Multicores haveeven lower Costups!!!

Cores

Page 29: Amdahl’s Law in the Multicore Era

35 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 30: Amdahl’s Law in the Multicore Era

36 04/21/23 Wisconsin Multifacet Project

Asymmetric (Heterogeneous) Multicore Chips

• Symmetric Multicore Required All Cores Equal• Why Not Enhance Some (But Not All) Cores?

• For Amdahl’s Simple Software Assumptions– One Enhanced Core– Others are Base Cores

• How?– <fill in favorite micro-architecture techniques here>– Model ignores design cost of asymmetric design

• How does this effect our hardware model?

Page 31: Amdahl’s Law in the Multicore Era

37 04/21/23 Wisconsin Multifacet Project

How Many Cores per Asymmetric Chip?

• Each Chip Bounded to N BCEs (for all cores)• One R-BCE Core leaves N-R BCEs• Use N-R BCEs for N-R Base Cores• Therefore, 1 + N - R Cores per Chip• For an N = 16 BCE Chip:

Symmetric: Four 4-BCE cores Asymmetric: One 4-BCE core& Twelve 1-BCE base cores

Page 32: Amdahl’s Law in the Multicore Era

38 04/21/23 Wisconsin Multifacet Project

Performance of Asymmetric Multicore Chips

• Serial Fraction 1-F same, so time = (1 – F) / Perf(R)

• Parallel Fraction F– One core at rate Perf(R)– N-R cores at rate 1– Parallel time = F / (Perf(R) + N - R)

• Therefore, w.r.t. one base core:

Asymmetric Speedup =1

+1 - F

Perf(R)

F

Perf(R) + N - R

Page 33: Amdahl’s Law in the Multicore Era

39 04/21/23 Wisconsin Multifacet Project

Asymmetric Multicore Chip, N = 256 BCEs

Number of Cores = 1 (Enhanced) + 256 – R (Base)

How do Asymmetric & Symmetric speedups compare?

(256 cores) (1+252 cores) (1+192 cores) (1 core)(1+240 cores)

Page 34: Amdahl’s Law in the Multicore Era

40 04/21/23 Wisconsin Multifacet Project

Recall Symmetric Multicore Chip, N = 256 BCEs

Recall F=0.9, R=28, Cores=9, Speedup=26.7

Page 35: Amdahl’s Law in the Multicore Era

41 04/21/23 Wisconsin Multifacet Project

Asymmetric Multicore Chip, N = 256 BCEs

Asymmetric offers greater speedups potential than Symmetric

In Paper: As Moore’s Law increases N, Asymmetric gets better

Some arch. researchers should target asymmetric multicores

F=0.9R=118 (vs. 28)Cores= 139 (vs. 9)Speedup=65.6 (vs. 26.7)

F=0.99R=41 (vs. 3)Cores=216 (vs. 85)Speedup=166 (vs. 80)

Page 36: Amdahl’s Law in the Multicore Era

Asymmetric Multicore: 3 Software Issues

1. Schedule computation (e.g., when to use bigger core)

2. Manage locality (e.g., sending code or data can sap gains)

3. Synchronize (e.g., asymmetric cores reaching a barrier)

At What Level?– Application Programmer

– Library Author

– Compiler

– Runtime System

– Operating System

– Hypervisor (Virtual Machine Monitor)

– Hardware

More Info (?)

More Leverage (?)

Page 37: Amdahl’s Law in the Multicore Era

43 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 38: Amdahl’s Law in the Multicore Era

44 04/21/23 Wisconsin Multifacet Project

Dynamic Multicore Chips, Take 1

• Why NOT Have Your Cake and Eat It Too?

• N Base Cores for Best Parallel Performance• Harness R Cores Together for Serial Performance

• How? DYNAMICALLY Harness Cores Together– <insert favorite or TBD techniques here>

parallel mode

sequential mode

Page 39: Amdahl’s Law in the Multicore Era

45 04/21/23 Wisconsin Multifacet Project

Dynamic Multicore Chips, Take 2

• Let POWER provide the limit of N BCEs• While Area is Unconstrained (to first order)

• Result: N base cores for parallel; large core for serial– [Chakraborty, Wells, & Sohi, Wisconsin CS-TR-2007-1607]– When Simultaneous Active Fraction (SAF) < ½

parallel mode

sequential mode

How to model these two chips?

Page 40: Amdahl’s Law in the Multicore Era

46 04/21/23 Wisconsin Multifacet Project

Performance of Dynamic Multicore Chips

• N Base Cores with R BCEs used Serially

• Serial Fraction 1-F uses R BCEs at rate Perf(R)• Serial time = (1 – F) / Perf(R)

• Parallel Fraction F uses N base cores at rate 1 each• Parallel time = F / N

• Therefore, w.r.t. one base core:

Dynamic Speedup =1

+1 - F

Perf(R)

F

N

Page 41: Amdahl’s Law in the Multicore Era

47 04/21/23 Wisconsin Multifacet Project

Recall Asymmetric Multicore Chip, N = 256 BCEs

What happens with a dynamic chip?

Recall F=0.99R=41Cores=216Speedup=166

Page 42: Amdahl’s Law in the Multicore Era

48 04/21/23 Wisconsin Multifacet Project

Dynamic Multicore Chip, N = 256 BCEs

Dynamic offers greater speedup potential than Asymmetric

Arch. researchers should target dynamically harnessing cores

F=0.99R=256 (vs. 41)Cores=256 (vs. 216)Speedup=223 (vs. 166)

Page 43: Amdahl’s Law in the Multicore Era

Asymmetric Multicore: 3 Software Issues

1. Schedule computation (e.g., when to use bigger core)

2. Manage locality (e.g., sending code or data can sap gains)

3. Synchronize (e.g., asymmetric cores reaching a barrier)

At What Level?– Application Programmer

– Library Author

– Compiler

– Runtime System

– Operating System

– Hypervisor (Virtual Machine Monitor)

– Hardware

More Info (?)

More Leverage (?)

Dynamic

Dynamic Challenges > Asymmetric Ones

Dynamic chips due to power likely

Page 44: Amdahl’s Law in the Multicore Era

50 04/21/23 Wisconsin Multifacet Project

Outline

• Multicore Motivation & Research Paper Trends

• Recall Amdahl’s Law

• A Model of Multicore Hardware

• Symmetric Multicore Chips

• Asymmetric Multicore Chips

• Dynamic Multicore Chips

• Caveats & Wrap Up

Page 45: Amdahl’s Law in the Multicore Era

51 04/21/23 Wisconsin Multifacet Project

Three Multicore Amdahl’s Law

Symmetric Speedup =1

+1 - F

Perf(R)

F * R

Perf(R)*N

Asymmetric Speedup =1

+1 - F

Perf(R)

F

Perf(R) + N - R

Dynamic Speedup =1

+1 - F

Perf(R)

F

N

N/R Enhanced

Cores

Parallel Section

N Base Cores

1 Enhanced & N-R Base

Cores

Sequential Section

1 Enhanced Core

Page 46: Amdahl’s Law in the Multicore Era

52 04/21/23 Wisconsin Multifacet Project

Software Model Charges 1 of 2

• Serial fraction not totally serial• Can extend software model to tree algorithms, etc.

• Parallel fraction not totally parallel• Can extend for varying or bounded parallelism

• Serial/Parallel fraction may change• Can extend for Weak Scaling [Gustafson, CACM’88]• Run larger, more parallel problem in constant time• But prudent architectures support Strong Scaling

Page 47: Amdahl’s Law in the Multicore Era

53 04/21/23 Wisconsin Multifacet Project

Software Model Charges 2 of 2

• Synchronization, communication, scheduling effects?• Can extend for overheads and imbalance

• Software challenges for asymmetric multicore worse• Can extend for asymmetric scheduling, etc.

• Software challenges for dynamic multicore greater• Can extend to model overheads to facilitate

• Future software will be totally parallel (see “my work”)• I’m skeptical; not even true for MapReduce

Page 48: Amdahl’s Law in the Multicore Era

54 04/21/23 Wisconsin Multifacet Project

Hardware Model Charges 1 of 2

• Naïve to consider total resources for cores fixed• Can extend hardware model to how core changes

effect The Rest

• Naïve to bound Cores by one resource (esp. area)• Can extend for Pareto optimal mix of area,

dynamic/static power, complexity, reliability, …

• Naïve to ignore challenges due to off-chip bandwidthlimits & benefits of last-level caching

• Can extend for modeling these

Page 49: Amdahl’s Law in the Multicore Era

55 04/21/23 Wisconsin Multifacet Project

Hardware Model Charges 2 of 2

• Naïve to use performance = square root of resources• Can extend as equations can use any function

• We architects can’t scale Perf(R) for very large R• True, not yet.

• We architects can’t dynamically harness very large R• True, not yet

• So what should computer scientists do about it?

Page 50: Amdahl’s Law in the Multicore Era

57 04/21/23 Wisconsin Multifacet Project

Three-Part Charge

Architects: Build more-effective multicore hardware • Don’t lament that we can’t do, but do it!• Play with & trash our models [IEEE Computer, July 2008]

– www.cs.wisc.edu/multifacet/amdahl

Computer Scientists: Implement “3rd Moore’s Law”• Double Parallelism Every Two Years• Consider Symmetric, Asymmetric, & Dynamic Chips

Finally, We must all work together• Keep (cost-) performance gains progressing• Parallel Programming & Parallel Computers

Page 51: Amdahl’s Law in the Multicore Era

Dynamic Multicore Chip, N = 1024 BCEs

58 04/21/23 Wisconsin Multifacet Project

F1R1024Cores1024Speedup 1024!

NOT Possible Today

NOT Possible EVER Unless We Dream & Act

Page 52: Amdahl’s Law in the Multicore Era

59 04/21/23 Wisconsin Multifacet Project

Executive Summary

• Develop A Corollary to Amdahl’s Law– Simple Model of Multicore Hardware – Complements Amdahl’s software model– Fixed chip resources for cores– Core performance improves sub-linearly with resources

• Research Implications(1) Need Dramatic Increases in Parallelism (No Surprise)

• 99% parallel limits 256 cores to speedup 72• New Moore’s Law: Double Parallelism Every Two Years?

(2) Many larger chips need increased core performance(3) HW/SW for asymmetric designs (one/few cores enhanced)(4) HW/SW for dynamic designs (serial parallel)