automatic tradeoffs accuracy and energy
play

AUTOMATIC TRADEOFFS: ACCURACY AND ENERGY Stephanie Forrest - PowerPoint PPT Presentation

AUTOMATIC TRADEOFFS: ACCURACY AND ENERGY Stephanie Forrest Westley Weimer Jonathan Dorn Jeremy Lacomis 1/13/17 1 Tradeoffs So6ware development involves


  1. AUTOMATIC ¡TRADEOFFS: ¡ ACCURACY ¡AND ¡ENERGY ¡ Stephanie ¡Forrest ¡ Westley ¡Weimer ¡ Jonathan ¡Dorn ¡ Jeremy ¡Lacomis ¡ 1/13/17 ¡ 1 ¡

  2. Tradeoffs ¡ • So6ware ¡development ¡involves ¡ tradeoffs . ¡ • “Good, ¡fast, ¡or ¡cheap. ¡Pick ¡any ¡two.” ¡ • Time ¡vs. ¡memory. ¡ • Maintainability ¡vs. ¡efficiency. ¡ • … ¡ 2 ¡

  3. 3 ¡

  4. Data ¡Center ¡Energy ¡Use ¡ 100 Percentages of 2.0% 80 (billion kWh/year) US electricity Electricity Use Infrastructure use in a given 1.5% Communications year 60 Storage 40 High-end servers 0.8% Mid-range servers 20 Volume servers 0 2000 2005 2010 Reproduced from J. Koomey. Growth in data center electricity use 2005 to 2010 . Analytics Press, Oakland, CA, 2011. 4 ¡

  5. Genetic ¡Optimization ¡Algorithm ¡ blackscholes • Local ¡changes ¡to ¡ bodytrack ferret assembly ¡code. ¡ fluidanimate freqmine swaptions • Exploit ¡mutaKonal ¡ vips robustness ¡to ¡reduce ¡ x264 average energy. ¡ 0 25 50 75 100 Energy Reduction (%) 5 ¡

  6. Motivating ¡Example ¡ .L23: ¡ ¡ ¡… ¡ ¡ ¡cmpl ¡ ¡%r13d, ¡40(%rsp) ¡ ¡ ¡ ¡movq ¡ ¡16(%rsp), ¡%r9 ¡ ¡ ¡movsd ¡%xmm0, ¡(%r9) ¡ ¡ ¡je ¡ ¡ ¡ ¡.L9 ¡ ¡ ¡… ¡ ¡ ¡call ¡ ¡_Z12CumNormalInvd ¡ ¡ 6 ¡

  7. Motivating ¡Example ¡ Top of one unrolling of inner loop .L23: ¡ ¡ ¡… ¡ Loop condition check ¡ ¡cmpl ¡ ¡%r13d, ¡40(%rsp) ¡ ¡ ¡ ¡movq ¡ ¡16(%rsp), ¡%r9 ¡ ¡ ¡movsd ¡%xmm0, ¡(%r9) ¡ Jumps out of loop ¡ ¡je ¡ ¡ ¡ ¡.L9 ¡ ¡ ¡… ¡ ¡ ¡call ¡ ¡_Z12CumNormalInvd ¡ ¡ 7 ¡

  8. Motivating ¡Example ¡ .L23: ¡ ¡ ¡… ¡ ¡ ¡cmpl ¡ ¡%r13d, ¡40(%rsp) ¡ Resets condition flags ¡ ¡xorl ¡ ¡%eax, ¡%eax ¡ ¡ ¡movq ¡ ¡16(%rsp), ¡%r9 ¡ ¡ ¡movsd ¡%xmm0, ¡(%r9) ¡ Always exits loop! ¡ ¡je ¡ ¡ ¡ ¡.L9 ¡ ¡ ¡… ¡ ¡ ¡call ¡ ¡_Z12CumNormalInvd ¡ ¡ 8 ¡

  9. Motivating ¡Example ¡ .L23: ¡ ¡ ¡… ¡ • No ¡change ¡ in ¡ ¡ ¡cmpl ¡ ¡%r13d, ¡40(%rsp) ¡ observed ¡behavior. ¡ ¡ ¡xorl ¡ ¡%eax, ¡%eax ¡ ¡ ¡movq ¡ ¡16(%rsp), ¡%r9 ¡ • Skipped ¡iteraKons ¡ ¡ ¡movsd ¡%xmm0, ¡(%r9) ¡ increase ¡precision. ¡ ¡ ¡je ¡ ¡ ¡ ¡.L9 ¡ • Fixed ¡number ¡of ¡digits ¡ ¡ ¡… ¡ in ¡output. ¡ ¡ ¡call ¡ ¡_Z12CumNormalInvd ¡ ¡ 9 ¡

  10. Research ¡Questions ¡ 1. Does ¡mulK-­‑objecKve ¡search ¡find ¡larger ¡ energy ¡reducKons ¡with ¡human-­‑acceptable ¡ levels ¡of ¡error? ¡ 2. How ¡does ¡mulK-­‑objecKve ¡search ¡compare ¡to ¡ a ¡less ¡general ¡technique ¡like ¡loop ¡ perforaKon? ¡ 10 ¡

  11. Algorithm ¡Overview ¡ E VALUATE F ITNESS I NPUT Eject Report M UTATE O UTPUT 11 ¡

  12. Multi-­‑Objective ¡Fitness ¡Function ¡ • Energy ¡Performance ¡ • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡ 12 ¡

  13. Multi-­‑Objective ¡Fitness ¡Function ¡ • Energy ¡Performance ¡ • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡ 13 ¡

  14. Multi-­‑Objective ¡Fitness ¡Function ¡ • Energy ¡Performance ¡ • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡ • Physical ¡energy ¡measurements. ¡ 14 ¡

  15. Physical ¡Energy ¡Measurement ¡ • Consumer-­‑grade ¡meters ¡ are ¡designed ¡for ¡long-­‑ running ¡(months) ¡ measurements. ¡ • High-­‑end ¡meters ¡cost ¡ $1000s ¡per ¡node. ¡ 15 ¡

  16. Fast ¡Physical ¡Energy ¡Measurement ¡ 16 ¡

  17. Fast ¡Physical ¡Energy ¡Measurement ¡ • Internal: ¡1200 ¡Hz. ¡ • External: ¡10-­‑20 ¡Hz. ¡ • Serial ¡bus ¡is ¡bo\leneck. ¡ 17 ¡

  18. Multi-­‑Objective ¡Fitness ¡Function ¡ • Energy ¡Performance ¡ • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡ • Physical ¡energy ¡measurements. ¡ • Correctness ¡Metrics ¡ • Domain-­‑specific: ¡SSIM, ¡L 2 ¡RGB, ¡Kendall’s ¡Tau. ¡ • General-­‑purpose: ¡Hamming ¡Distance, ¡RMSE. ¡ 18 ¡

  19. Selected ¡PARSEC ¡Benchmarks ¡ Benchmark ¡ Assembly ¡ Test ¡(sec) ¡ Error ¡Metric ¡ Lines ¡ blackscholes ¡ 12,437 ¡ 2.7 ¡ RMSE ¡ bodytrack ¡ 198,462 ¡ 3.3 ¡ RMSE ¡ ferret ¡ 80,811 ¡ 6.4 ¡ Kendall’s ¡Tau ¡ fluidanimate ¡ 7,511 ¡ 2.7 ¡ Hamming ¡Distance ¡ freqmine ¡ 26,281 ¡ 7.4 ¡ RMSE ¡ swapKons ¡ 55,753 ¡ 3.2 ¡ RMSE ¡ vips ¡ 822,655 ¡ 18.1 ¡ L 2 ¡Lab ¡Colorspace ¡ x264 ¡ 205,801 ¡ 5.7 ¡ L 2 ¡Lab ¡Colorspace ¡ 19 ¡

  20. Experiments ¡ 1. NSGA-­‑II ¡mulK-­‑objecKve ¡search. ¡ • 512 ¡variants ¡in ¡populaKon. ¡ • 32 ¡generaKons. ¡ • Sample ¡fitness ¡5x ¡during ¡search. ¡ 2. Re-­‑evaluate ¡variants ¡on ¡Pareto ¡fronKer. ¡ • At ¡least ¡25x ¡and ¡relaKve ¡standard ¡error ¡< ¡0.01. ¡ 3. Manually ¡idenKfy ¡human-­‑acceptable ¡point. ¡ 20 ¡

  21. Results ¡ blackscholes bodytrack ferret 600 2 400 Error Error Error 5 1 200 0 0 0 0% 50% 100% 0% 50% 100% 0% 50% 100% % Energy Improvement % Energy Improvement % Energy Improvement Our Technique Loop Perforation Human Acceptable 21 ¡

  22. Results ¡ fluidanimate freqmine swaptions × 10 7 3 1 . 0 15 2 10 Error Error Error 0 . 5 1 5 0 0 . 0 0 0% 50% 100% 0% 50% 100% 0% 50% 100% % Energy Improvement % Energy Improvement % Energy Improvement Our Technique Loop Perforation Human Acceptable 22 ¡

  23. Results ¡ vips x264 150000 800000 600000 100000 Error Error 400000 50000 200000 0 0 0% 50% 100% 0% 50% 100% % Energy Improvement % Energy Improvement Our Technique Loop Perforation Human Acceptable 23 ¡

  24. x264 ¡Result ¡ 24 ¡

  25. x264 ¡Result ¡ 50% ¡energy ¡reducKon ¡ 25 ¡

  26. vips ¡Result ¡ 6% ¡energy ¡reducKon ¡ 26 ¡

  27. Extensions ¡and ¡Future ¡Work ¡ • Scale ¡up ¡to ¡larger ¡benchmarks. ¡ • Be\er ¡evaluaKon ¡of ¡“human-­‑acceptability.” ¡ • InvesKgate ¡effect ¡of ¡error ¡metric. ¡ • Do ¡domain-­‑specific ¡metrics ¡provide ¡be\er ¡tradeoffs ¡ than ¡general-­‑purpose ¡ones? ¡ • InvesKgate ¡freqmine’s ¡poor ¡performance. ¡ • Is ¡energy ¡ ¡ ¡ ¡runKme? ¡ ∝ 27 ¡

  28. Summary ¡ • We ¡use ¡mulK-­‑objecKve ¡search ¡to ¡explore ¡the ¡ tradeoff ¡between ¡energy ¡performance ¡and ¡ error. ¡ • Our ¡technique ¡produces ¡tradeoffs ¡at ¡least ¡as ¡ good ¡as ¡loop ¡perforaKon. ¡ 28 ¡

Recommend


More recommend