1 Lecture 2: Performance Today’s topics:

Published  . 0 views
↓ Download
1 Lecture 2: Performance Today’s topics:
1 / 1
1 Lecture 2: Performance Today’s topics: - slide 1 of 23 1 Lecture 2: Performance Today’s topics: - slide 2 of 23 1 Lecture 2: Performance Today’s topics: - slide 3 of 23 1 Lecture 2: Performance Today’s topics: - slide 4 of 23 1 Lecture 2: Performance Today’s topics: - slide 5 of 23 1 Lecture 2: Performance Today’s topics: - slide 6 of 23 1 Lecture 2: Performance Today’s topics: - slide 7 of 23 1 Lecture 2: Performance Today’s topics: - slide 8 of 23 1 Lecture 2: Performance Today’s topics: - slide 9 of 23 1 Lecture 2: Performance Today’s topics: - slide 10 of 23 1 Lecture 2: Performance Today’s topics: - slide 11 of 23 1 Lecture 2: Performance Today’s topics: - slide 12 of 23 1 Lecture 2: Performance Today’s topics: - slide 13 of 23 1 Lecture 2: Performance Today’s topics: - slide 14 of 23 1 Lecture 2: Performance Today’s topics: - slide 15 of 23 1 Lecture 2: Performance Today’s topics: - slide 16 of 23 1 Lecture 2: Performance Today’s topics: - slide 17 of 23 1 Lecture 2: Performance Today’s topics: - slide 18 of 23 1 Lecture 2: Performance Today’s topics: - slide 19 of 23 1 Lecture 2: Performance Today’s topics: - slide 20 of 23 1 Lecture 2: Performance Today’s topics: - slide 21 of 23 1 Lecture 2: Performance Today’s topics: - slide 22 of 23 1 Lecture 2: Performance Today’s topics: - slide 23 of 23
Description: 1 Lecture 2: Performance Todays topics: Technology wrap-up Performance trends and equations Reminders: YouTube videos, Canvas, Piazza, class webpage: https:www.cs.utah.edurajeevcs3810 2 Microprocessor Performance Source: karlrupp.net

Related Topics

Download Presentation

"1 Lecture 2: Performance Today’s topics:" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentation Transcript

slide1. 1 Lecture 2: Performance Today’s topics:

Technology wrap-up
Performance trends and equations

Reminders: YouTube videos, Canvas, Piazza, class webpage:
https://www.cs.utah.edu/~rajeev/cs3810/<br>
slide2. 2 Microprocessor Performance Source: karlrupp.net<br>
slide3. 3 Power Consumption Trends Dyn power a activity x capacitance x voltage2 x frequency

Voltage and frequency are somewhat constant now,
while capacitance per transistor is decreasing and number
of transistors (activity) is increasing

Leakage power is also rising (function of #trans and voltage) Source: H&P Textbook<br>
slide4. 4 Important Trends Running out of ideas to improve single thread performance

Power wall makes it harder to add complex features

Power wall makes it harder to increase frequency

Technology scaling likely to end soon

Idea wall, power wall, physics wall

Additional performance provided by: more cores, occasional
spikes in frequency, accelerators<br>
slide5. 5 Microprocessor Performance Source: Wikipedia, 2025<br>
slide6. 6 Summary Three roadblocks: power, ideas, technology scaling

Fixed power budget because of cooling constraints; implies that
frequency can’t be increased; discourages complex ideas

End of voltage (Dennard) scaling in early 2010s; the end of
Moore’s Law also imminent

Has led to dark silicon and dim silicon (occasional turbo)

The rise of accelerators<br>
slide7. 7 Important Trends Historical contributions to performance:
Better processes (faster devices) ~20%
Better circuits/pipelines ~15%
Better organization/architecture ~15%

In the future, bullet-2 will help little and bullet-1 will eventually
disappear!

Pentium P-Pro P-II P-III P-4 Itanium Montecito
Year 1993 95 97 99 2000 2002 2005
Transistors 3.1M 5.5M 7.5M 9.5M 42M 300M 1720M
Clock Speed 60M 200M 300M 500M 1500M 800M 1800M At this point, adding transistors
to a core yields little benefit Moore’s Law in action<br>
slide8. 8 What Does This Mean to a Programmer? Today, one can expect only a 20% annual improvement;
the improvement is even lower if the program is not
multi-threaded

A program needs many threads

The threads need efficient synchronization and
communication

Data placement in the memory hierarchy is important

Accelerators should be used when possible<br>
slide9. 9 Challenges for Hardware Designers Find efficient ways to

improve single-thread performance and energy

improve data sharing

boost programmer productivity

manage the memory system

build accelerators for important kernels

provide security<br>
slide10. 10 Computer Components Input/output devices

Secondary storage: non-volatile, slower, cheaper (HDD/SSD)

Primary storage: volatile, faster, costlier (RAM)

CPU/processor (datapath and control)<br>
slide11. 11 The HW/SW Interface Compiler lw $15, 0($2)
add $16, $15, $14
add $17, $15, $13
lw $18, 0($12)
lw $19, 0($17)
add $20, $18, $19
sw $20, 0($16) a[i] = b[i] + c; Hardware Systems software
(OS, compiler) Application software Assembler 000000101100000
110100000100010
…<br>
slide12. 12 Wafers and Dies Source: H&P Textbook Cost a mfg steps Cost a area1.x Cost a 1 / mfg volume<br>
slide13. 13 Manufacturing Process Silicon wafers undergo many processing steps so that different
parts of the wafer behave as insulators, conductors, and
transistors (switches)

Multiple metal layers on the silicon enable connections
between transistors

The wafer is chopped into many dies – the size of the die
determines yield and cost

An informative video that does a deeper dive on the
manufacturing process: https://www.youtube.com/watch?v=dX9CGRZwD-w<br>
slide14. 14 Processor Technology Trends Shrinking of transistor sizes: 250nm (1997) 
130nm (2002)  70nm (2008)  35nm (2014) 
2019 transition to 10nm, now transitioning to 1.8nm

Transistor density increases by 35% per year and die size
increases by 10-20% per year… functionality improvements!

Transistor speed improves linearly with size (complex
equation involving voltages, resistances, capacitances)

Wire delays do not scale down at the same rate as
transistor delays<br>
slide15. 15 Memory and I/O Technology Trends DRAM density increases by 40-60% per year, latency has
reduced by 33% in 10 years (the memory wall!), bandwidth
improves twice as fast as latency decreases

Disk density improves by 100% every year, latency
improvement similar to DRAM

Networks: primary focus on bandwidth; 10Mb  100Mb
in 10 years; 100Mb  1Gb in 5 years<br>
slide16. 16 Performance Metrics Possible measures:
response time – time elapsed between start and end
of a program
throughput – amount of work done in a fixed time

The two measures are usually linked
A faster processor will improve both
More processors will likely only improve throughput
Some policies will improve throughput and worsen
response time (or vice versa)

What influences performance?<br>
slide17. 17 Throughput vs Response Time 10 MB Cache Memory<br>
slide18. 18 Execution Time Consider a system X executing a fixed workload W

PerformanceX = 1 / Execution timeX

Execution time = response time = wall clock time
- Note that this includes time to execute the workload
as well as time spent by the operating system
co-ordinating various events

The UNIX “time” command breaks up the wall clock time
as user and system time<br>
slide19. 19 Speedup / Improvement / Reduction Examples Salaries:

Performance:

Meds pricing:<br>
slide20. 20 Speedup and Improvement System X executes a program in 10 seconds, system Y
executes the same program in 15 seconds

System X is 1.5 times faster than system Y

The speedup of system X over system Y is 1.5 (the ratio)
= perf X / perf Y = exectime Y / exectime X

The performance improvement of X over Y is
1.5 -1 = 0.5 = 50% = (perf X – perf Y) / perf Y = speedup - 1

The execution time reduction for system X, compared to
Y is (15-10) / 15 = 33%
The execution time increase for Y, compared to X is
(15-10) / 10 = 50%<br>
slide21. 21 A Primer on Clocks and Cycles<br>
slide22. 22 Performance Equation - I CPU execution time = CPU clock cycles x Clock cycle time
Clock cycle time = 1 / Clock speed

If a processor has a frequency of 3 GHz, the clock ticks
3 billion times in a second – as we’ll soon see, with each
clock tick, one or more/less instructions may complete

If a program runs for 10 seconds on a 3 GHz processor,
how many clock cycles did it run for?

If a program runs for 2 billion clock cycles on a 1.5 GHz
processor, what is the execution time in seconds?<br>
slide23. 23 Performance Equation - II CPU clock cycles = number of instrs x avg clock cycles
per instruction (CPI)

Substituting in previous equation,

Execution time = clock cycle time x number of instrs x avg CPI

If a 2 GHz processor graduates an instruction every third cycle,
how many instructions are there in a program that runs for
10 seconds?<br>