An Accurate Instruction-Level Energy Consumption Model ... - CiteSeerX

Report 0 Downloads 19 Views
An Accurate Instruction-Level Energy Consumption Model for Embedded RISC Processors 

Sheayun Lee

Andreas Ermedahl

School of Computer Science and Engineering Seoul National University Seoul 151-742, Korea

Dept. of Information Technology Uppsala University SE-751 05 Uppsala, Sweden

[email protected]

[email protected]

ABSTRACT       "!# $&%'   (!)  *! ,+  -. /0'1! 23"54  6 %-75%'*448*46, 8,  :9; %! *4LS 96  '; : = 96+ ,  ; B%2 V 9pS0, ]:`48+  *!  W_48;5 9LqN2 0 654;K\-8+  /  90E2` 5 *48 U 9D;  A 8 0 S!#"K !  -K\-GU -4 Q8  1!z M*!# 0 (NS-*”'* Uf+ -8 '; >KF0%-A!> 9,  ; t-K-^G3S 9_!#>.

*!T%'6*!0-. S02  1! *4H02 I!I  1! y  M;*B ¨Q©Lª\ª¶'«=·¸µ­¹3±N´N±cµ1®¯ b79IF48-39 -04&%'f! %-I S04;F .  9 *!-0-*4A£ ›Nœ'¤ ÁŸ@Ÿ¤R Ÿ¤ 1›^¢ œLÁ œ'Á £ à  ›N`?*4a "ºO 9F4- *E2_!#+  S 5 9J! ; _!-m; H%'9!#KF U= 961!# ;U 2 ; *B b79š8 '4™! 8 \! 9™ 0KZ!Ä48;1! -*4Y,  ; 8+d-K 19_!1! ; ; M*!# 0 Å 6 9V;  “%';9_!*KF0L > 2 ;  GU8+ ! %-0 L!A-0>%: 2;a!  ;1! /, A!  [` cd"!# I8+ ;  Ä 8 0 mB§Xt[;e8' ;S 9!H 9Sc  A!# 0 Æ:--

8 #K8048I!A%_!5N>!  K\I  1!  M*!# 0 [c J-* '*!"F48>2 0! -@Q4K- T!S, 8, A!# 0 I M*!# 0 Zc1!;+ 
19.  ; 81! -@c*! 8 I" 9f1!# ;5 2 ; *B[C   1! -M*4“N   >!“v`b”|N  , ;H1!,c;ŒI-K\-U 5-0! 7 *!-0-*4HP8-0 =#!# f  21! 4[ ZF4;-0 L 951! ; !#

9.  ;   GFrJ-!!I  19E2a fF4; 9H š  , a cd"!# G"%_!*4šš 9T!*K\1! H  ;F 481!:A%2 I 9U1!# ; stimulus (test programs)

model variable extraction

hypothetical model equation

sequence of instructions

black box (target processor)

regression analysis

fitted model equation

response (measured energy consumption)

statistical results

energy consumption estimation

Measurement

Model Fitting

Model Application

±c¾_«?¬# ½ ?½t ¶ '½F¬#­_´N´U­³=³=¬#¶_­ª  d¶¬?½F¬ ± ?±N·m¾(­_·Æ½· ½F¬#¾_®$ª¶'·*«=²]³=µ*±c¶_·Å²]¶?½8´ +akmŽRX

 2  B"b796  90E268 2 *4SS 9U! ';U 84 , 0 09*4c   9U! %'#K\D!  ! 197 9_!#;  VF4;-lBab79_!#6G¸ 9   19E2I *!t! -V48; K\5 9f; &F48- L 9f4!1! %81! 4J ;  6I-0!   m 9_!m K\`c  A!  I!%'

; 8 -;+R-K\-?;  T   OG:9;T 9>I-0!#  UN D 9 1! ;> 2 ; >>! -. *! 48 [!*K ! -0! %-B5Ž V 90a *! GO 95 + '4I  90E27 .º_ *!2 - 5 *4  97 "  -;e8. /  ; ], A! OG3   f 9F4-9! >%'Q48; K\*4¸G 7I *! [, A! / 9I;;  &   [:. 9 6 9I*4 Na  f 9/05-0!  TN a 9>,   0 V*E2 /+ 4fFK\,  \!# 0 mBZCD-G 9A ; 90E2A *! š8 KF04 9L8+ N A! š!%'85 9LK !  >^!    5 9!I!»¸ 5 9L;; 

 8 S,   0 :V! T! %,1! ;:N  `!IF4;*E2_!# mG8:9 19S:'%-a:9H_!#1! ;  U 9JF4;*E2_!# L%F I8K,  \!  5 9U  I%! 7 O 9U*! 8 *4 ; (! _4“ 9&K!-0S> 9&F4-DK!# 0! %-B§b790H +

*48 VL *! --*4(F4;-:º  (• i#—lG::9 V -.LS!]º *4 F4;-`EF! [ 9_!#5e-0! 6 9I -0! 9Q%';d7[ 9 F4;-=K!# 0! %-6! _4T 9/;;  V%'9_!*KF J 9>1! J +

*BZD V 95º *4ZF48-D – G@! -. ; _!# K\-. Œ/t 9 ! -BtP8  9 2 ; ! -= ! -J&! 2 >! /  F  --04[%2 T,  ;  e;  OG?; S 8 0 V  ! . 9;  J! 4H- 0 ! -=;e8 ; T. B CDD 9!7,  ;  ) !`,1! \ G   \!#14-@ ' 9"8 KF,1!# U' 9"0';-0B aI 9U 9;@9_!_4¸G 97c ;   W |\ %&\ ] Œ3 K\;` 9UK ! 0!#+  L ?;  A 8 0 L!  1Z 4 /W  / 9DF48-'K ! 0! %-0 \ 4;º*4A%2 A 9ad7f,  ; ) !_4/+ B L q7!*4“š 9H%; K!# $ 9! 9S; š   W   '  ! -` S 9F5%';J"%.[ _/!_4[ 9FI%'J  - 0 ! -< s :S 96F  _! -¸ ! -G_4;ºa 96 LK!# .+ !  SN ; T!   W | \ W %&\ ] 1Œ V`  X$a W bc | \ W %,\ ] BŒ Aed  X$a W bgf | \ W (Œ % | 2Œ Z :9  c | &%ih2Œ=4  = 9 a!  U4,1! 7%' 7;5d7a%.+ _!# fF5%'; j 3!_[ 4 hG8! 4 f |  Œ`4   9" 9_!#5 19_!#1! ;  0M;A 9 ] 8+ 8 & '-f,1! n  G¸:. 9]  !14  fF48-¸K!# !%-  \_B ua 6 9_!#"7J9_!*K\>!5-0*!U*E2_!# T, 8, gc U H 8+ 8 ZQ!H -2 o] ; 8 -G=:. 9Q!SF5%';J:oF#:]_!#+ 1!  ; G:^B  B0( G `  X$a W ( G d  Xga W S!_o 4 U  W BXtV *!-0-U 9 _!#1! ;  ZQ¡ PÁŸÁ\¡;žd¤Ÿ1>› p;›NœF  R8ÁŸÁ ¤žd¤Ÿ G6 V 9; “4  0%'  9a 9!1!  ; , 0 ;D= 96;;  H%';9_!*KF0: = 9a1! ;U +

*B! A4 ; *4[%F -*!#D   &!_! -. 8B Žd?3'%- T;;  Z   OG :9 19t'%- t4 1!48A 9F4-@! ; 1! ; 2BTb79; ;c  G3    ; . [ 9J %-TGm 95   š!_! -. 8>6d7H ; 98+ 0E2;"%_! 4HH,1! ,  *! -mF4-_ ;, 0 GT!44. L f4+  KF0 J 9"K ! -@ ¸ 9" 19_!#1! ;  0M;0 5!1!; ; B¦=. ,*G27 042 .c L 9 >_!1!; ; : 9_!#D9!*K\J- -> DI0 .º_ !  ; ! 4L;-0_!# D 9TG2 / 4 ;D 9DFI%' ;-!# 9[%' 7;V 96 ' f!_4H 9>;6 8 *4 ;  0!*4J a%' 9fI 9_!# -!# ;50] 9A! ! -. 8>N 5  9;5_!1!f+  ;  2; Z%'&48; ; 4OBĦ A;e! -G'1! _4]' .º_; 5! 4Z!-0-` 94!1!SK ! -G3%2  ;'*! *48-. š;e8   & 9H !S,  ; Bšb79š7H *!  48; ; / 950! ;6 e!-GO%2 e;   J 9D !U,  ; *! 8 *4S; SK!-0B PF0-0!# - 2G T 9ID8 KF-. t4; ; *4]K ! -;5  XtU! -/02 F48 D!J; 8 *4 5   OGF%`!-6o\= 97 ;-;e8. /_ 9 - ; *4J   I ;2  2 -   .G  % G I$I$I;G /(FB`b79aF4-' 9_!#:%',";e8-!:8:*! 8 *4L;;  K ! -::- ; *4H%_! 4HT!5F4;-¸ ;, 0 I  19E26 *! --*4  9!  0a+l ,U• i#—lBŽ 2  K\;- 2G  J 9 1o5.m!6    O,  ;  9 -045%'" *4> `3:. 9I ' ;3 6!a' .º_ < 9!1!  ;+ M T!1!; ;*GO7f  _!# !HF48-3: 9[ 95 ! f 19_!#+ !  ; M _!#1! ;  :c D4.»¸; ;F:,  ; U! _4H!   9 F4;-¸:. 9V48.»¸; 2U 9!1!  ; M _!#1! ;  :c D4.»¸; ;F ,  ; B3¦ `;e! -G pSŽ•.s;—lG T 9 ; 8 -;+d!  ;1!  9 9+R  ;0 /!  ;2¸9_!14F"!#     Z!_! -. 8G'754; K\4 ` = a  Hh I ,F"s  I|^ $2ŒO!_4 d = a M'!I   , )/|^ $2ŒG;:90 19> *! J%';D= ; *4 c ¦FC)"!D *!_!%-> ;e8-0!0 f   9!   )šj  J 9T $K!# !# Å4S t 9S 9!  L0  9>0,  ;  TN;

19&!448 BDb79J -. a_480 ! J 9_!#D 9

and and and and

r2,r8,r78 r3,r5,r97 r9,r11,r2 r10,r2,r1 . . .

and sub eor add

. . .

r0,r0,r0 r0,r0,r0 r0,r0,r0 r0,r0,r0

. . .

and and and and

. . .

Example of instruction sequence used in model derivation



7­¹3´c½ /­½/¶µ  d¶¬H±@½8¬#½8·¸µ;· µ¬«=ªµ*±c¶_· Žd,   0  ‹ …\… ˆ#‰ ‹‘2… Š2†!

`# "%$ a

'-/PF1!  ,Ž ¦ Ž 10  ––FB ,   ) Fs,2B –hi h ,2B     h  )FB0s\–  h––FB  s s s) FB  –   ––FB0s–\h– h ,h2B  –8s  –FB )h )i h  )FB i hi ) 8s"FB   Fs  \h2B –    8B  – )\i ssB ,2ss –8B  –8s#i |^.  ¯  $8G1 Ė I    Œ

; “   “S8 '   _! -U t 9&F5%'; /% ,:.

9fš 9AN;

19W!44F G
19Ä!448 BÆXÄ. 9$ 9L8+ N A! S!*K!0-0!%-G876 *!S!- A8  1! g  M*! LN -* ;  & 19Z!6 F48I -0! 2*G¸:9; /c *E22 - T;eF+  8 *4“,  ; T! &-! *4(Ä  1! ! 448 ;L:. 9 A! -- 6!0 I48,1!  ;U! _4S!I-0! >F5%';7"ks B b?H4; K\/ 95%_! 5 , 6c >K ! 6,  ; 6!>*! 9[   9L 9 S'-T,1! G7! --= 95,  ; B>b?A-f+ _!# 5 9/;»¸ J @ 9!  6V 95,   0 VN;

19Z! 44F G 7> *!- -0! 4V 9J TK ! 0!# 0 &46 f 96N

9&! 448 ;  [ 9L!1!; ;fK ! -f48; K\*4Qš 9H8 KFI! ! -. F+ D, ;mG! 4S%81! ; *4L.U g 96*! 8 *4H;;  HK ! -B b=!%-Is68 2 
X 

X

X 

`'-5P21! 

1 0 –8B )  \h ,FB  \–\i –FB ) \i ) –8B   ,  hFB , ,Fs –FB i – h sB    ) 8B Fs" , s B –8"s h sB ii2s*– 8B –\hh s Bs"   –8B )  ,  8B i–  ) s B  \i  hFB h – \i 8B   – 'U– I  ,   |^  ¯  $G 1 Å– I \h – \Œ Ž,¦

Žd

  ; *! Ht 9 6!0 V4,1! L : 9A ' F4L_4 *!#   9!" 96 L 8 0 H=c 7! > *!S%'a *48 4H%2 !- 8 >,  ; A- ;  S!_64 # 
P8-0! -. 2G¸75;e8  4[!A;>@ ,6  1! a:. 9&1! 4 4 !#1!DK ! -;= J4; K\` 97 ;2  2 3N48, _!# 0 &';1!_4 5 97Ž (,1! :. *4>05 9%'5 ;1! 4]2 -3 9I 0§,1!  BCD-T    9_!#*G6-o\[ 9[ ;-. Sc  x 9]8 KF0 S! _!-. V, G 4.»¸; ;F`,  ; @9!#K:4.»¸; 2_!#1! ; @K ! -`c ` 9 F4;-'K!# !%-:48;º_*4fL ; K!-B`b790""48  D 9 ;  f! _!-. 3 5 9@_!  =   9J*480! J'1! _4¸G:90 19S 8 *4S : 9_!*K\J -. H0 + .º *!  6H 9  6!0 /4,1!  JH 9aŽ,¦Q! 4LŽdY,1! B b79V ;2  2LK!-A48; K\*4“!#  `  a   I –   )(|^ $2ŒG ! 4 `  a  ) I  ) – ]|^ $2ŒG' '  0K;>=-. 2G_:. 9[ 9 1 K ! -  `–FB  )8;Ds*C iFB 4.2 Program Energy Estimation b?/9*Ä 9D;c-;7 ?7;  A 8 0 AF4-' , A!  a 9"; 5  45%2 5! f,  ; *E2  G 7/-2 *4S! & V   &!_! -. 8M;*B6b795! 8+ ! -. 8M;J1!o\J!Z!I%-. &

;I  1! |^ /!A%_!# & + 1!LŒJ! / /*G3!_4Z;, 0A!# J 9; Z 8 0   " 9f K\;t,   0 t*E2; ft! 19t -2 o[ ; 8 -BHb79 ! ! -. 8M;>º ,6;eF1! ; 6 9fK!-JK ! 0! %-0; %2 ;e! 0 J 9U0,  ;  H*E2  B Sb79;L." ! - -0!#   9U; I   A!"*! 9A -2 1of ; 8 -U J 9UF4;-

 ŽdV4 0KF 5 9JK ! -:3 9J 4 ;  DK ! 0! %-0;a48;º_*4H  ; D "4!1!AK!-G¸7I! *4T 9_!D 950. !-K!-06  9D  , ; a! JoF*:T!5   ^B

IF A B C st. st. st. D ...

1500

A B st. st. st. C ... A A A A B ...

ID EX

Energy Consumption (pJ)

1400

1

3

4

5

6

7

±¾'«?¬#½[O­'²[³3´c½V¶ U³3±c³½8´N±N·?½  µ­´N´ 

1300

1100

Measurement Estimation

1000

1

6

11

16 21 26 Clock Cycles

31

36

±c¾_«?¬#½  >¶¸²]³=­¬ ± ¶'·Ä¹`½Fµ 5½F½8·š½ µ±^²]­µ;½ (­·IJ]½F­  *«m¬½ “½8·?½F¬#¾_® EF! Æ!_4“ 9&K ! -;S > 9] 19_!#1! ; ; M $!1!  ;  8 KF-. S4;  0*4A%F A 9a   ;0 &! ! -. 80B ¦ U 9J;e8'; 2 G!f ! -0J8  1! w"!D ;1!# *4S 9_!# ; 21! `!:1! _48eF 8 ,   0 &*E2 6 9_!#a e;  *4AN –I -2 oL ; 8 -B b79H -. I9*g 9!5 9A  '*4W!  \! 9š8 KF04;f!  !  81! 7; /, A!# 0 mG:9 19I3K\; .º_4>%2 J 9@^! ;3 9_!#  9D 1! 9Lc 7 9U;, 0A!# *4 A -;-  ;I%-0;@ 9_!#7  96*! *4L;  2B`b796 ;2  2U 48; ; _!# Z| 1Œ K ! -SW 9 *! TA–FB  )  8G":9 19$! 5 9_!f  A 9_!   )Ij™ O 9:K ! 0!  H 9U*! 8 *4f; @ *! 8  *4%2  D, A! &*E2! OB:b79J  1!-=  9/!  4S

; AN" 9#  \–5 ;-02 1oA ; 8 -":iFB h \ihI $GF:9-a 9_!# = 9D, A! *4L ADiFB h   f  $8Bb796; D? 907 1! ;;  &0a-0;6 9_! QsfjLB6XZI!-0H *! - -0! *4V 95;  61!#  T! 19T ; 8 -J K\H%2

  , A! *!'] *! ;F8  2  %



b 95 [ 8 0 &A!* T 6%'I';c ; -. [-0*!J  ¨ 7  9 6! Q480,1! ;&! _4( 9[ 93*! 8 2O9_!#148+ "!# *4&] 9fF4-  ,  ; ZA! & *!_!  8+ 1! ;0;DT48; KF0 I 9a 9!1!  ; M _!#1! ;  B

1200

900

2

Energy consumed in clock-cycle 4 depends on stalled C and B instructions

| , Œ

:9U!*K\;1! "K ! -"`–8B –\h iFs G2:9 9I*! = 9_!3 9";  `  97; /, A!  I%2 >8F4-F*E2_!# 57! I!*K\;1!  h2B i6j  99!#K/8 ' *4&! ; 90E26NJ48; K8 H!&!  ;1! /8+ ;  &   VF4-3!#6 9/,  ; [-0;K\-^B>b795 + '4L!8 \! 19A 5%;! ';/! %-/! -A%8/ \;f!  81! L; 9F4]c I, A!  T 9L;; 

 8 5!3 9:048DK ! ;d  m +

 G a."4827   '*4&; 9F4& S4; K\I! [;  [ 8+ 8 fF48-c 7 9DCUv6 p ,b7>pSŽ3 2 ; " ;  G2 JK\+ .c L 96K ! -04.d S= 9J!8 \! 19mB@b79J *! >, _4F A9*:: 9_! ! [!  1!# I; TF4-= ! &%'I48; K\*4Tc  ”,  ; 8+ -K\- 19_!#1! ; ; M*!# Q 7 cd"!# G=0 S 9/  190E25 + '4Z] 9>_!';*BAb79f -. Jc   /;e8'; 2 68+ 4 *!# H 9! ; tF4-" *!“!  81! -. š, A! L 9 ; š   š a!& K\W,   0 $EF ;Bšb79 ,1! ,  *!-@ - J9*™ 9_!6  5 9!   )Sj  !_4;*G8u/B +D ,! o2 9! OG_p]B $BŽd:mG! 4 XY/B .@B8Ž  _ D   -;U8 0M*!# : S, 8,  '#Á œ  < R¤ŸÁ ž^›cœF  à  žd¤ I N;¢  Ÿ #?0¢ %:U0¢ %P Wc 7! >B "? Ÿ,Á œÁ\¡;ž^›l¢œ/¢ œA@#  Ý1žd¤ 5 G__! >s s 8G¸pT!

19t"s   ,2B

 

•.s— 5BpS921!8Gv/Bp]B D7G'! 4Tp]B $B_ŽR:mBŽ ,  ;  -0;K\-O'#BXZ-.NB =*7;D! ! -. 8D 5%'*448*4Lcd"!  ¯ Cź ,U, H *7!14U  7!  '*7;UM*!# 0 mB "? Ÿ,Á œÁ\¡;ž^›^¢ œ5¢  œ @#    Ý žd¤ I GOhF| 2Œ ¯   ,  2i2G¸6 5%';J"s   8B • h–— +5Bb7."!# lG'P¸B_pT! -o'G'C/BFXZ-.NG_! 4Vp]B_baB + }DB'kOB Ž ,  ;  S-K\-O'*7;a! ! -. 8D!_4S  M*!  T    7! BF¢ 8Ÿ1œ'Á £=,¢ N@#    ›0 œ_Á£ "Ÿ,¢*¡¤  ›Nœ2 G "s 8|Rk h  \Œ ¯ hh  8h  )FG=CU ,J"s   8B • h2s;—5p]B_}DB'b? % ;T! 4SbaB'p]B'}