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

automatic tradeoffs accuracy and energy
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

AUTOMATIC ¡TRADEOFFS: ¡ ACCURACY ¡AND ¡ENERGY ¡

Jonathan ¡Dorn ¡ Jeremy ¡Lacomis ¡ Westley ¡Weimer ¡ Stephanie ¡Forrest ¡

1/13/17 ¡ 1 ¡

slide-2
SLIDE 2

Tradeoffs ¡

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

2 ¡

slide-3
SLIDE 3

3 ¡

slide-4
SLIDE 4

Data ¡Center ¡Energy ¡Use ¡

0.8% 1.5% 2.0% 20 40 60 80 100 2000 2005 2010 Electricity Use (billion kWh/year) Infrastructure Communications Storage High-end servers Mid-range servers Volume servers

4 ¡

Percentages of US electricity use in a given year

Reproduced from J. Koomey. Growth in data center electricity use 2005 to 2010. Analytics Press, Oakland, CA, 2011.

slide-5
SLIDE 5

Genetic ¡Optimization ¡Algorithm ¡

  • Local ¡changes ¡to ¡

assembly ¡code. ¡

  • Exploit ¡mutaKonal ¡

robustness ¡to ¡reduce ¡

  • energy. ¡

25 50 75 100 blackscholes bodytrack ferret fluidanimate freqmine swaptions vips x264 average Energy Reduction (%)

5 ¡

slide-6
SLIDE 6

Motivating ¡Example ¡

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

6 ¡

slide-7
SLIDE 7

Motivating ¡Example ¡

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

Top of one unrolling of inner loop Loop condition check Jumps out of loop

7 ¡

slide-8
SLIDE 8

Motivating ¡Example ¡

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

Resets condition flags Always exits loop!

8 ¡

slide-9
SLIDE 9

Motivating ¡Example ¡

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

  • No ¡change ¡in ¡
  • bserved ¡behavior. ¡
  • Skipped ¡iteraKons ¡

increase ¡precision. ¡

  • Fixed ¡number ¡of ¡digits ¡

in ¡output. ¡

9 ¡

slide-10
SLIDE 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 ¡

slide-11
SLIDE 11

Algorithm ¡Overview ¡

11 ¡

INPUT MUTATE EVALUATE FITNESS OUTPUT

Eject Report

slide-12
SLIDE 12

Multi-­‑Objective ¡Fitness ¡Function ¡

  • Energy ¡Performance ¡
  • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡

12 ¡

slide-13
SLIDE 13

Multi-­‑Objective ¡Fitness ¡Function ¡

  • Energy ¡Performance ¡
  • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡

13 ¡

slide-14
SLIDE 14

Multi-­‑Objective ¡Fitness ¡Function ¡

  • Energy ¡Performance ¡
  • Predict ¡energy ¡in ¡fitness ¡funcKon ¡(linear ¡model). ¡
  • Physical ¡energy ¡measurements. ¡

14 ¡

slide-15
SLIDE 15

Physical ¡Energy ¡Measurement ¡

  • Consumer-­‑grade ¡meters ¡

are ¡designed ¡for ¡long-­‑ running ¡(months) ¡

  • measurements. ¡
  • High-­‑end ¡meters ¡cost ¡

$1000s ¡per ¡node. ¡

15 ¡

slide-16
SLIDE 16

Fast ¡Physical ¡Energy ¡Measurement ¡

16 ¡

slide-17
SLIDE 17

Fast ¡Physical ¡Energy ¡Measurement ¡

  • Internal: ¡1200 ¡Hz. ¡
  • External: ¡10-­‑20 ¡Hz. ¡
  • Serial ¡bus ¡is ¡bo\leneck. ¡

17 ¡

slide-18
SLIDE 18

Multi-­‑Objective ¡Fitness ¡Function ¡

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

18 ¡

slide-19
SLIDE 19

Selected ¡PARSEC ¡Benchmarks ¡

Benchmark ¡ Assembly ¡ Lines ¡ Test ¡(sec) ¡ Error ¡Metric ¡ 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 ¡ L2 ¡Lab ¡Colorspace ¡ x264 ¡ 205,801 ¡ 5.7 ¡ L2 ¡Lab ¡Colorspace ¡

19 ¡

slide-20
SLIDE 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 ¡

slide-21
SLIDE 21

Our Technique Loop Perforation Human Acceptable

Results ¡

21 ¡

0% 50% 100% % Energy Improvement 5 Error

blackscholes

0% 50% 100% % Energy Improvement 1 2 Error

bodytrack

0% 50% 100% % Energy Improvement 200 400 600 Error

ferret

slide-22
SLIDE 22

0% 50% 100% % Energy Improvement 1 2 3 Error ×107

fluidanimate

0% 50% 100% % Energy Improvement 0.0 0.5 1.0 Error

freqmine

0% 50% 100% % Energy Improvement 5 10 15 Error

swaptions

Results ¡

22 ¡

Our Technique Loop Perforation Human Acceptable

slide-23
SLIDE 23

Results ¡

23 ¡

0% 50% 100% % Energy Improvement 200000 400000 600000 800000 Error

vips

0% 50% 100% % Energy Improvement 50000 100000 150000 Error

x264

Our Technique Loop Perforation Human Acceptable

slide-24
SLIDE 24

x264 ¡Result ¡

24 ¡

slide-25
SLIDE 25

x264 ¡Result ¡

25 ¡

50% ¡energy ¡reducKon ¡

slide-26
SLIDE 26

vips ¡Result ¡

26 ¡

6% ¡energy ¡reducKon ¡

slide-27
SLIDE 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 ¡

slide-28
SLIDE 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 ¡