multicore

9
Why Multi-core Processors? By Timothy

Upload: tjk2n

Post on 15-Dec-2014

601 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Multicore

Why Multi-core Processors?

By Timothy

Page 2: Multicore

A Bit of History (Moore’s Law)

• Transistors shrink by ~0.7 about 1.5 years– Fit twice as many transistors in the same area for the

same power density– With 1.3x boost in frequency due to lower

propagation delay• Architectural changes gave another 1.3-1.5x

boost in performance (Deeper pipelines, executing multiple instructions simultaneously from single thread (ILP), etc.)

• Results in performance doubling every 2 years

Page 3: Multicore

Problems With Increasing Performance

• Combination of “Instruction Level Parallelism (ILP) wall,” “frequency wall,” and “power wall”– ILP wall: can’t figure out how to keep increasing ILP

without unreasonable area and power costs– Frequency wall: can’t figure out how to increase clock

frequency without unreasonable increase in power– Power wall: Increasing power demand by CPUs, Heat

generated by CPU’s increasing and air cooling capped at ~150W

• Moore’s Law is providing area that a single thread can’t economically use

Page 4: Multicore

What is Multi-core?

• Combines multiple processors on a single die• Note: cores don’t have to be identical

(Heterogeneous chips)

Page 5: Multicore

Multi-Core Advantages• Advantages– Energy efficiency (performance/watt)– Cooling costs (performance/$)– Small simplifications in core complexity yield large

reductions in power• Area not spent on increasing ILP can be spent on

more cores• Can increasingly parallelize programs– CPU intensive processes (e.g. anti-virus scans) less

likely to be starved or processor time since they can be offloaded onto another processor while other processes use a different processor

Page 6: Multicore

Multi-core Disadvantages

• Multicore requires parallel programming to fulfill Moore’s Law

• Parallel Programming is usually hard• Many programs have instructions that depend

on data calculated earlier so they can’t fully utilize parallelization

• Amdahl’s Law (predict the theoretical maximum speedup using multiple processors): 1/((1-P)+P/S) where P is the portion of serial time that has been enhanced with a speedup of S

Page 7: Multicore

Heterogeneous Chips

• Multi-core processor with different cores• Specialization of some cores is a more effective

use of area and power than general-purpose cores– Certain commonly used applications can benefit

substantially with specialized cores e.g. graphics (already use separate GPU to process graphics)

• Modern computers run only so many programs simultaneously, so most users won’t see any speed boosts with 80 general purpose CPUs

Page 8: Multicore

Example: Cell BE

• 1 conventional CPU core (PPE) and 8 small vector cores (SPEs)

Page 9: Multicore

Problems with Heterogeneous Chips

• How to chose which mix of cores?• How to select? How to decide best performance per cost?• Not many cores to chose from currently

• How to integrate?– Lots of design issues

• How to program?– Needs to be portable (program for Intel chip

should run for AMD chip etc.)