lab introduction to loop transformations
play

Lab: Introduction to Loop Transformations Tomofumi Yuki EJCP 2017 - PowerPoint PPT Presentation

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


  1. Lab: Introduction to Loop Transformations Tomofumi Yuki EJCP 2017 June 29, Toulouse

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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

  16. EJCP 2017, June 29, Toulouse 16

  17. 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

  18. 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

  19. 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

  20. 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

  21. 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

  22. 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

  23. 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