Energy-efficient compu1ng for HPC workloads on Heterogeneous - - PowerPoint PPT Presentation

energy efficient compu1ng for hpc workloads on
SMART_READER_LITE
LIVE PREVIEW

Energy-efficient compu1ng for HPC workloads on Heterogeneous - - PowerPoint PPT Presentation

Energy-efficient compu1ng for HPC workloads on Heterogeneous Chips Akhil Langer , Ehsan Totoni, Uda.a Palekar*, Laxmikant (Sanjay) V. Kale Parallel Programming


slide-1
SLIDE 1

Energy-­‑efficient ¡compu1ng ¡for ¡HPC ¡ workloads ¡on ¡Heterogeneous ¡Chips ¡

¡Akhil ¡Langer, ¡Ehsan ¡Totoni, ¡Uda.a ¡Palekar*, ¡Laxmikant ¡(Sanjay) ¡V. ¡Kale ¡ Parallel ¡Programming ¡Laboratory, ¡Department ¡of ¡Computer ¡Science ¡ *Department ¡of ¡Business ¡AdministraJon ¡ University ¡of ¡Illinois ¡at ¡Urbana-­‑Champaign ¡ h?p://charm.cs.uiuc.edu/research/energy ¡ ¡ PMAM ¡2015 ¡ 6th ¡InternaJonal ¡Workshop ¡on ¡Programming ¡Models ¡and ¡ ¡ ApplicaJons ¡for ¡MulJcores ¡and ¡Manycores ¡ ¡ February ¡7-­‑8, ¡2015 ¡ ¡ ¡

slide-2
SLIDE 2

Outline ¡

q IntroducJon ¡ ¡ q Background ¡ q Problem ¡Statement ¡ q Approach ¡ q Results ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡Heterogeneous ¡Manycore ¡Chips ¡ 2 ¡

slide-3
SLIDE 3

IntroducJon ¡

  • MoJvaJon ¡

– Huge ¡energy ¡consumpJon ¡of ¡data ¡centers ¡ – 20MW ¡power ¡@ ¡$0.15 ¡per ¡KWh, ¡costs ¡$2.2 ¡M ¡per ¡ month ¡ – Energy ¡efficiency ¡idenJfied ¡as ¡a ¡major ¡exascale ¡ challenge ¡by ¡DoE ¡ – Consider ¡charging ¡users ¡in ¡energy ¡units ¡(KWh) ¡ instead ¡(or ¡in ¡addiJon) ¡of ¡SUs ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 3 ¡

slide-4
SLIDE 4

IntroducJon ¡

  • Low ¡voltage ¡operaJon ¡

– For ¡high ¡energy ¡efficiency ¡ – For ¡example, ¡10x ¡increase ¡in ¡energy ¡efficiency ¡near ¡ threshold ¡voltage ¡

  • But ¡

– VariaJon ¡in ¡CMOS ¡manufacturing ¡process ¡

– Low ¡voltage ¡operaJon ¡introduces ¡variability ¡on ¡chip ¡ – Cores ¡have ¡different ¡frequencies ¡and ¡power ¡ consumpJon ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 4 ¡

slide-5
SLIDE 5

Process ¡VariaJon ¡

  • Low ¡voltage ¡operaJon ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 5 ¡

0.8f% f% 0.5f% 0.6f% 0.7f% 0.8f% f% 0.8f% f% 0.7f% 0.6f% 0.9f% 0.5f% 0.8f% 0.5f% f%

slide-6
SLIDE 6

Programming ¡Systems* ¡

  • Problem ¡

– HPC ¡applicaJons ¡are ¡highly ¡synchronized ¡ – Speed ¡determined ¡by ¡speed ¡of ¡slowest ¡processor ¡

  • Solu+on ¡

– Do ¡overdecomposiJon ¡of ¡work ¡(e.g. ¡Charm++) ¡ – Load ¡Balance ¡according ¡to ¡core ¡speeds ¡

  • Result ¡

– OverdecomposiJon ¡raJo ¡of ¡16 ¡=> ¡2-­‑6% ¡load ¡imbalance ¡ – ¡No ¡changes ¡required ¡in ¡applicaJon ¡code ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 6 ¡

*Under ¡Review ¡

slide-7
SLIDE 7

Problem ¡Statement ¡

  • Not ¡opJmal ¡to ¡use ¡all ¡cores ¡on ¡chip ¡for ¡execuJon ¡

– Shared ¡resources ¡cause ¡contenJon ¡ – High ¡energy ¡consumpJon ¡

  • A ¡configuraJon ¡is ¡defined ¡as ¡the ¡cores ¡on ¡which ¡

the ¡applicaJon ¡is ¡run ¡ ¡ Determine ¡op+mal ¡configura+on ¡that ¡minimizes ¡ energy ¡consump+on ¡(with ¡op+onal ¡+ming ¡ constraints) ¡of ¡the ¡chip ¡for ¡a ¡given ¡applica+on ¡ ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 7 ¡

slide-8
SLIDE 8

Performance ¡Modeling* ¡

  • ExhausJve ¡evaluaJon ¡of ¡configuraJons ¡infeasible ¡
  • Model ¡1 ¡

– Sum ¡of ¡individual ¡core ¡performance ¡ – Memory ¡contenJon ¡not ¡modeled ¡

  • Model ¡2 ¡

– Add ¡memory ¡access ¡Jme ¡ – # ¡of ¡acJve ¡cores ¡not ¡accounted ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 8 ¡

*Under ¡Review ¡

S = X

i∈c

si

T = Tcpu X

i∈c

fi + Tmem

slide-9
SLIDE 9

Performance ¡Modeling* ¡

  • Model ¡3 ¡

– One ¡model ¡each ¡for ¡configuraJons ¡with ¡same ¡number ¡

  • f ¡cores ¡

– Performance ¡is ¡linear ¡funcJon ¡of ¡frequency ¡ – Total ¡#cores ¡(n) ¡models ¡

  • k ¡is ¡number ¡of ¡cores ¡in ¡configuraJon ¡c ¡
  • ak, ¡bk ¡are ¡line ¡constants ¡
  • fi ¡is ¡frequency ¡of ¡core ¡i ¡

– Average ¡predicJon ¡error ¡less ¡than ¡1.6% ¡ – Dynamic ¡power ¡consumpJon ¡can ¡be ¡modeled ¡in ¡same ¡ way ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 9 ¡

*Under ¡Review ¡

S = ak( X

i∈c

fi) + bk

slide-10
SLIDE 10

be defined as

N

X

k=1

(nk ∗ (ap

k

X

i

xifi + bp

k +

X

i

sixi) ∗ (at

k

X

i

xifi + bt

k))

Energy ¡OpJmizaJon ¡Approach ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 10 ¡

Select One Value of k

n

X

k=1

nk = 1 Total Number of Cores Equals k

n−1

X

i=0

xi =

n

X

k=1

nkk Variables Range ∀i ∈ [0, n), xi ∈ {0, 1} ∀k ∈ (0, n], nk ∈ {0, 1}

min X

k

Power ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Time ¡ StaJc ¡Power ¡ Dynamic ¡Power ¡

Cubic ¡Objec1ve ¡ Func1on! ¡ ¡

slide-11
SLIDE 11

min (ap

K n−1

X

i=0

xifi + bp

K + n−1

X

i=0

sixi) ∗ (at

K n−1

X

i=0

xifi + bt

K)

(9)

Energy ¡OpJmizaJon ¡Approach ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 11 ¡

Power ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Time ¡ StaJc ¡Power ¡ Dynamic ¡Power ¡

Quadra1c ¡Objec1ve ¡ Func1on! ¡ ¡

) Total Number of Cores Equals K

n−1

X

i=0

xi = K Variables Range ∀i ∈ [0, n), xi ∈ {0, 1}

  • Convert ¡cubic ¡program ¡to ¡n ¡quadraJc ¡programs ¡
  • Each ¡corresponding ¡to ¡all ¡configuraJons ¡with ¡fixed ¡number ¡of ¡cores ¡
  • Select ¡best ¡configuraJon ¡across ¡n ¡quadraJc ¡programs ¡
slide-12
SLIDE 12

Energy ¡OpJmizaJon ¡Approach ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 12 ¡

  • QuadraJc ¡programs ¡hard ¡to ¡solve ¡using ¡non-­‑linear ¡methods ¡
  • Replace ¡quadraJc ¡terms ¡of ¡form ¡x1x2 ¡with ¡binary ¡variables ¡y12 ¡

and ¡add ¡following ¡constraints ¡ y12 ¡≤ ¡x1 ¡ y12 ¡≤ ¡x2 ¡ y12 ¡≥ ¡x1+x2-­‑1 ¡

  • Add ¡Jming ¡constraint ¡

aK

tF ¡+ ¡bK t ¡≤ ¡Ptmin, ¡ ¡

where ¡F ¡is ¡sum ¡of ¡frequencies, ¡ and ¡P ¡is ¡allowed ¡Jme ¡penalty ¡

slide-13
SLIDE 13

Setup ¡

  • Sniper ¡Simulator ¡

– Vdd ¡= ¡0.765V ¡ – 36 ¡cores ¡on ¡chip ¡ – Results ¡across ¡25 ¡chips ¡

  • ApplicaJons ¡

– miniMD ¡

  • Molecular ¡dynamics ¡mini ¡applicaJon ¡ ¡
  • ComputaJonally ¡intensive ¡

– Jacobi ¡ ¡

  • 3D ¡stencil ¡code ¡
  • Memory ¡intensive ¡
  • HeurisJcs ¡

– Min ¡heurisJc ¡ – Max ¡heurisJc ¡

  • Integer ¡Linear ¡Program ¡(ILP) ¡Solver ¡

– Gurobi ¡ – Uses ¡variant ¡of ¡branch-­‑and-­‑bound ¡method ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 13 ¡

slide-14
SLIDE 14

Results ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 14 ¡

slide-15
SLIDE 15

Results ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 15 ¡

(a) With no time constraint (b) Maximum 15% time penalty (c) Maximum 5% time penalty

26% ¡ 18.4% ¡ 13.4% ¡ Energy ¡Savings ¡ ILP ¡Solu+on ¡Time: ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡745 ¡seconds ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡26 ¡seconds ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡9seconds ¡ vs ¡ Exhaus+ve ¡Evalua+on: ¡ ¡74 ¡hours ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

slide-16
SLIDE 16

Conclusions ¡ ¡

  • Negligible ¡overhead ¡

– O(n) ¡samples ¡required ¡ – Performance ¡models ¡developed ¡with ¡negligible ¡

  • verhead ¡
  • ILP ¡solvers ¡to ¡opJmize ¡energy ¡consumpJon ¡with ¡

Jming ¡constraints ¡

– Significant ¡energy ¡savings ¡as ¡compared ¡to ¡sub-­‑opJmal ¡ heurisJcs ¡

  • No ¡extra ¡compute ¡resources ¡required ¡

– Solve ¡ILPs ¡on ¡respecJve ¡chips ¡prior ¡to ¡job ¡execuJon ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 16 ¡

slide-17
SLIDE 17

Future ¡Work ¡

  • Further ¡improvement ¡of ¡performance ¡models ¡
  • Evaluate ¡approach ¡with ¡even ¡larger ¡number ¡of ¡

cores ¡

  • OpJmizaJon ¡methods ¡to ¡further ¡improve ¡

soluJon ¡Jme ¡

  • Apply ¡to ¡other ¡HPC ¡applicaJons ¡

3/2/15 ¡ Energy-­‑efficient ¡operaJon ¡of ¡ Heterogeneous ¡Chips ¡ 17 ¡

slide-18
SLIDE 18

Energy-­‑efficient ¡compu1ng ¡for ¡HPC ¡ workloads ¡on ¡Heterogeneous ¡Chips ¡

¡Akhil ¡Langer, ¡Ehsan ¡Totoni, ¡Uda.a ¡Palekar*, ¡Laxmikant ¡V. ¡Kale ¡ Parallel ¡Programming ¡Laboratory, ¡Department ¡of ¡Computer ¡Science ¡ *Department ¡of ¡Business ¡AdministraJon ¡ University ¡of ¡Illinois ¡at ¡Urbana-­‑Champaign ¡ ¡ PMAM ¡2015 ¡ 6th ¡InternaJonal ¡Workshop ¡on ¡Programming ¡Models ¡and ¡ ¡ ApplicaJons ¡for ¡MulJcores ¡and ¡Manycores ¡ ¡ February ¡7-­‑8, ¡2015 ¡ San ¡Francisco ¡Bay ¡Area, ¡USA ¡ ¡ ¡

QUESTIONS! ¡

h?p://charm.cs.uiuc.edu/research/energy ¡