multi-core processor technology – maximizing cpu...

22

Upload: others

Post on 04-Jun-2020

23 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance
Page 2: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Multi-Core Processor Technology –Maximizing CPU Performance in a Power-Constrained World

Paul TeichBusiness StrategyCPG Server/Workstation

[email protected]

Page 3: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

The IssuesThe Issues

Silicon designers can choose a variety of methods to increase processor performanceCommercial end-customers are demanding:

More capable systems with more capable processorsThat new systems stay within their existing power/thermal infrastructure

Processor frequency and power consumption seem to be scaling in lockstepHow can the industry-standard PC and Server industries stay on our historic performance curve without burning a hole in our motherboards?

This session is not about process technology…

Page 4: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Session OutlineSession OutlineDefinition – What is a processor?Core DesignSystem ArchitectureManufacturing, Power, and ThermalsMulti-Core Processor ArchitecturePerformance Impacts

Page 5: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

What is a Processor? What is a Processor? A single chip package that fits in a socket≥1 cores (not much point in <1 core…)

Cores can have functional units, cache, etc. associated with them, just as todayCores can be fast or slow, just as today

Shared resourcesMore cacheOther integration – northbridge, memory controllers, high-speed serial links, etc.

One system interface no matter how many coresNumber of signal pins doesn’t scale with number of cores

Page 6: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

A Representative MultiA Representative Multi--Core ProcessorCore Processor

Dual-core AMD Opteron™ processor is 199mm2 in 90nmSingle-core AMD Opteron processor is 193mm2 in 130nm

Page 7: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

MultiMulti--Core Processor ArchitectureCore Processor Architecture

Page 8: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Core DesignCore Design

FrequencyIs only as good as the rest of the core architecture

AGUAGU

Int Decode & Rename

FADD FMISCFMUL44-entry

Load/StoreQueue

36-entry FP scheduler

FP Decode & Rename

ALU

AGU

ALU

MULT

ALU

Res Res Res

L1Icache64KB

L1Dcache64KB

Fetch BranchPrediction

Instruction Control Unit (72 entries)

Fastpath Microcode EngineScan/Align/Decode

µops

AMD Opteron processor core

architecture

Page 9: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Core DesignCore Design

Functional unitsSuperscalar is known territoryDiminishing returns for adding more functional blocksAlternatives like VLIW have been considered and rejected by the marketSingle-threaded architectural performance is pegged

Data pathsIncreasing bandwidth between functional units in a core makes a difference

Such as comprehensive 64-bit design, but then where to?

Page 10: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Core DesignCore Design

PipelineDeeper pipeline buys frequency at expense of increased cache miss penalty and lower instructions per clockShallow pipeline gives better instructions per clock at the expense of frequency scalingMax frequency per core requires deeper pipelinesIndustry converging on middle ground…9 to 11 stages

Successful RISC CPUs are in the same range

CacheCache size buys performance at expense of die size, it’s a direct hit to manufacturing costDeep pipeline cache miss penalties are reduced by larger cachesNot always the best match for shallow pipeline cores, as cache misses penalties are not as steep

Page 11: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

ManufacturingManufacturing

Moore’s Law isn’t dead, more transistors for everyone!

But…it doesn’t really mention scaling transistor powerChemistry and physics at nano-scale

Stretching materials science Voltage doesn’t scale yet Transistor leakage current is increasing

As manufacturing economies and frequency increase, power consumption is increasing disproportionately

There are no process or architectural quick-fixes

Page 12: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Static Current vs. FrequencyStatic Current vs. Frequency

Frequency

Stat

ic C

urre

nt

Embedded Parts

Embedded Parts

Very High Leakageand Power

Very High Leakageand Power

Fast, High PowerFast, High Power

Fast, Low PowerFast, Low Power

1.0 1.5

15

0

Non-linear as processors approach max frequency

Page 13: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Power vs. FrequencyPower vs. Frequency

0.5

1

1.5

2

n-4 n-3 n-2 n-1 nFrequency

Pow

er C

onsu

mpt

ion

In AMD’s process for 200MHz frequency steps, two steps back on frequency cuts power consumption by half…or lets you put twice the transistors on the die for the same power consumption as top frequency…

(Gross relative numbers summarized from a mountain of real data)

Page 14: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Thermal Density DecreasesThermal Density Decreases

Hot spotsTwice as many as in single-coreFarther apart than in single-coreWith freq delta, cooler than in single-core

ΘCA same for single-core at n and dual-core at n-2Larger die spreads heat more evenly in packageUse identical heat sink, slightly better cooling with dual-coreWorks for this processor generation and next, ΘCA changes over major generations

Thermal diode accuracy becomes an issue with dual-core…

Page 15: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

MultiMulti--Core Processor ArchitectureCore Processor Architecture

Why integrate?Most functions are really small compared to the cores and cacheAll integrated logic runs at core frequency regardless of I/O speeds

What to integrate?Northbridge crossbar switch is key to integrating anything elseMemory controller to reduce memory latency and further reduce the need for cacheHigh-speed serial links for system I/O

What not to integrate?Most southbridge functionsGraphics

Page 16: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

AMD Opteron Processor Integrated NorthbridgeAMD Opteron Processor Integrated Northbridge

SystemRequest

Interface(SRI)

AdvancedPriority

InterruptController

(APIC)

64-bit Data

64-bit Command/Address

16-bit Data/Command/Address

CPU 0Data

CPU 1Data

CPU 0Probes

CPU 1Probes

CPU 0Requests

CPU 1Requests

CPU 0Int

CPU 1Int

MemoryController

(MCT)

DRAMController

(DCT)

DRAM DataRAS/CAS/Cntl

HyperTransportLink 1

Crossbar(XBAR)

HyperTransport™Link 0

HyperTransportLink 2

Page 17: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

MultiMulti--Core: Where Processor and System CollideCore: Where Processor and System Collide

Scales performanceDedicated resources for two simultaneous threadsMultiple cores will contend for memory and I/O bandwidth

Northbridge is the bottleneckIntegrating northbridge eliminates most of bottleneck

Cores, cache and northbridge must be balanced for optimal performance

More aggregate performance for: Multi-threaded apps Transactions – many instances of same app Multi-tasking

Thread scheduling handled by OSBIOS notifies Windows of thread execution resources

Page 18: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Early Benchmark EstimatesEarly Benchmark Estimates

Decoder2P/2C – 2 proc. single-core4P/4C – 4 proc. single-core2P/4C – 2 proc. dual-core4P/8C – 4 proc. dual-core

FrequenciesSingle-core = 2.4GHzDual-core = 2.0GHz

Identical system configsMemory, disks, network, etc.Early dual-core validation system used, different motherboards

SPECint_rate2000 Peak Win SP1

100

163

184

308

2P/2C

2P/4C

4P/4C

4P/8C

Plat

form

s

% Comparison to Base 2P/2C

SPEC and the benchmark name SPECint are registered trademarks of the Standard Performance Evaluation Corporation. SPEC scores for AMD Opteron Model 270 and 870 based systems are estimated.

OLTP Workload

100

148

165

244

2P/2C

2P/4C

4P/4C

4P/8C

Plat

form

s

% Comparison to Base 2P/2C

Page 19: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Call To ActionCall To ActionMost application software doesn’t need to do anything to benefit from dual-coreBe aware that, for a processor within a given power envelope:

Fewer cores will clock faster than more coresSingle-threaded performance-sensitive applications

More cores will out-perform fewer cores forMulti-threaded applicationsMulti-tasking response timesTransaction processing

Processor architecture impacts multi-core performance

Process technology is only the anteIntegration enables a balanced high-performance architecture

Page 20: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

Additional ResourcesAdditional ResourcesWinHEC Presentations:

x86 Everywhere, Chris Herring, AMDWeb Resources:

AMD http://www.amd.com/AMD Multi-Core: http://www.amd.com/multicoreAMD Opteron™ Processor Tech Docs: http://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_739_9003,00.htmlAMD Multi-Core White Paper: http://www.amd.com/us-en/assets/content_type/DownloadableAssets/MC_Whitepaper_vFINAL.pdfHyperTransport™ Consortium: http://www.hypertransport.org/

Page 21: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance
Page 22: Multi-Core Processor Technology – Maximizing CPU ...developer.amd.com/wordpress/media/2012/10/WinHEC2005_Mult-co… · Multi-Core Processor Technology – Maximizing CPU Performance

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.