Multicore

897 views

Published on

Published in: Technology, Business
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
897
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
102
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • Multicore

    1. 1. Why Multi-core Processors? By Timothy
    2. 2. A Bit of History (Moore’s Law) <ul><li>Transistors shrink by ~0.7 about 1.5 years </li></ul><ul><ul><li>Fit twice as many transistors in the same area for the same power density </li></ul></ul><ul><ul><li>With 1.3x boost in frequency due to lower propagation delay </li></ul></ul><ul><li>Architectural changes gave another 1.3-1.5x boost in performance (Deeper pipelines, executing multiple instructions simultaneously from single thread (ILP), etc.) </li></ul><ul><li>Results in performance doubling every 2 years </li></ul>
    3. 3. Problems With Increasing Performance <ul><li>Combination of “Instruction Level Parallelism (ILP) wall,” “frequency wall,” and “power wall” </li></ul><ul><ul><li>ILP wall: can’t figure out how to keep increasing ILP without unreasonable area and power costs </li></ul></ul><ul><ul><li>Frequency wall: can’t figure out how to increase clock frequency without unreasonable increase in power </li></ul></ul><ul><ul><li>Power wall: Increasing power demand by CPUs, Heat generated by CPU’s increasing and air cooling capped at ~150W </li></ul></ul><ul><li>Moore’s Law is providing area that a single thread can’t economically use </li></ul>
    4. 4. What is Multi-core? <ul><li>Combines multiple processors on a single die </li></ul><ul><li>Note: cores don’t have to be identical (Heterogeneous chips) </li></ul>
    5. 5. Multi-Core Advantages <ul><li>Advantages </li></ul><ul><ul><li>Energy efficiency (performance/watt) </li></ul></ul><ul><ul><li>Cooling costs (performance/$) </li></ul></ul><ul><ul><li>Small simplifications in core complexity yield large reductions in power </li></ul></ul><ul><li>Area not spent on increasing ILP can be spent on more cores </li></ul><ul><li>Can increasingly parallelize programs </li></ul><ul><ul><li>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 </li></ul></ul>
    6. 6. Multi-core Disadvantages <ul><li>Multicore requires parallel programming to fulfill Moore’s Law </li></ul><ul><li>Parallel Programming is usually hard </li></ul><ul><li>Many programs have instructions that depend on data calculated earlier so they can’t fully utilize parallelization </li></ul><ul><ul><ul><li>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 </li></ul></ul></ul>
    7. 7. Heterogeneous Chips <ul><li>Multi-core processor with different cores </li></ul><ul><li>Specialization of some cores is a more effective use of area and power than general-purpose cores </li></ul><ul><ul><li>Certain commonly used applications can benefit substantially with specialized cores e.g. graphics (already use separate GPU to process graphics) </li></ul></ul><ul><li>Modern computers run only so many programs simultaneously, so most users won’t see any speed boosts with 80 general purpose CPUs </li></ul>
    8. 8. Example: Cell BE <ul><li>1 conventional CPU core (PPE) and 8 small vector cores (SPEs) </li></ul>
    9. 9. Problems with Heterogeneous Chips <ul><li>How to chose which mix of cores? </li></ul><ul><ul><ul><li>How to select? How to decide best performance per cost? </li></ul></ul></ul><ul><ul><ul><li>Not many cores to chose from currently </li></ul></ul></ul><ul><li>How to integrate? </li></ul><ul><ul><li>Lots of design issues </li></ul></ul><ul><li>How to program? </li></ul><ul><ul><li>Needs to be portable (program for Intel chip should run for AMD chip etc.) </li></ul></ul>

    ×