Lab: Introduction to Loop Transformations Tomofumi Yuki EJCP 2017 June 29, Toulouse
Experimental Validation n Essential to many scientific domain n 1. Build a hypothesis n 2. See if numbers support it n In optimizing compiler research n prove optimality, or n do empirical validation n Getting X % speedup by itself is USELESS n provide why EJCP 2017, June 29, Toulouse 2
Computer Scientific Method n Slides from David Patterson n Talk: How to Have a Bad Career In Research/ Academia n www.cs.berkeley.edu/~pattrsn/talks/ nontech.html n Many nice tips for Ph.D. students and beyond EJCP 2017, June 29, Toulouse 3
Bad Career Move #4: Use the Computer Scientific Method n Obsolete Scientific Method n hypothesis n sequences of experiments n prove/disprove hypothesis n reproducible n Computer Scientific Method n hunch! n an experiment with lots of parameters n forget if it doesn’t support hunch EJCP 2017, June 29, Toulouse 4
Mixed Lab+Lecture n 1. Performance Measurement n 2. Loop Transformations by Hand n 3. How to Punch the Audience n 4. Lunch EJCP 2017, June 29, Toulouse 5
Example 1: Parallel Performance n Setup n parallelized a function of a program n measured exec. time of the function n up to 8 cores EJCP 2017, June 29, Toulouse 6
Example 1: Parallel Performance n What can you say? function A 120 execution time (s) 100 80 60 function A 40 20 0 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 7
Example 1: Parallel Performance n Is it better? function A 10 speedup 8 6 function A 4 2 0 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 8
Example 1: Parallel Performance n How about this? function A 8 speedup 4 function A 2 1 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 9
Key Principle in Plotting Data n Make it a straight line n preferably 45 degree angle n Reason: much easier to make claims n claiming a curve is quadratic n showing it becomes a straight line after sqrt EJCP 2017, June 29, Toulouse 10
Example 1: Parallel Performance n What can still be missing? function A 8 speedup 4 function A 2 1 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 11
Example 1: Parallel Performance n What can be wrong? n How relevant is Function A? 1200 execution time (s) 1000 800 function A 600 rest 400 total 200 0 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 12
Example 1: Parallel Performance n What can be wrong? n How good is the sequential code? 120 execution time (s) 100 80 parallel 60 optimized seq. 40 20 0 1 core 2 cores 4 cores 8 cores EJCP 2017, June 29, Toulouse 13
Don’t Forget the Big Picture n Always show overall performance n + detailed results as necessary n Common examples n exec. time only for fragments n energy consumed by the CPU n dynamic energy only EJCP 2017, June 29, Toulouse 14
Intro to Loop Transformations n Tiling: a very very simplistic case n Follow the instruction at n http://people.irisa.fr/Tomofumi.Yuki/ejcp2017/ n Resume at 11h50 for last few slides EJCP 2017, June 29, Toulouse 15
EJCP 2017, June 29, Toulouse 16
The Punch Line Method n How to Punch your audience n how to attract your audience Punch Line Talk n Make your talk more effective n learned from Michelle Strout Normal Talk n Colorado State University n applicable to any talk EJCP 2017, June 29, Toulouse 17
The Punch Line n The key cool idea in your paper n the key insight n It is not the key contribution! n X % better than Y � n do well on all benchmarks n Examples: n ... because of HW prefetching n ... further improve locality after reaching compute-bound EJCP 2017, June 29, Toulouse 18
Typical Conference Audience n Many things to do n check emails n browse websites n finish their own slides n Attention Level (made up numbers) n ~3 minutes 90% punch here! n ~5 minutes 60% push these numbers up! n 5+ minutes 30% n conclusion 70% EJCP 2017, June 29, Toulouse 19
Typical (Boring) Talk n 1. Introduction n 2. Motivation n 3. Background n 4. Approach n 5. Results n 6. Discussion n 7. Conclusion EJCP 2017, June 29, Toulouse 20
Punch Line Talk n Two Talks in One n 5 minute talk n introduction/motivation shortest path to the punch n key idea the punch n X -5 minute talk n add some background n elaborate on approach n ... EJCP 2017, June 29, Toulouse 21
Pitfalls of Beamer n Beamer != bad slides n but it is a easy path to one n Checklist for good slides n no full sentences n LARGE font size beamer is not the best n few equations tool to encourage these n many figures n !paper structure EJCP 2017, June 29, Toulouse 22
That’s It! n General guides n http://matt.might.net/articles/ n http://www.cs.ucla.edu/~palsberg/azuma.html n How to do bib right n http://web.ece.ucdavis.edu/~jowens/ biberrors.html n Feedback n tomofumi.yuki@inria.fr EJCP 2017, June 29, Toulouse 23
Recommend
More recommend