ࡱ> bYa( </ 0DTimes New Roman̵00DCourier Newman̵001  @n?" dd@  @@`` D<h  -   3  c+c $ 33@33g4KdKd0 &jppp@  <4BdBd6D ? %    Problem Definition   Motivation Growing use of speculative execution for improved performance Increase in the types of values predicted Emer & Gloy s work language based on low-level primitives useful for the description of a variety of predictors useful to search the design space for new predictors Usefulness of a framework for automating the search for different predictors and their evaluation R |e |e6t                   Genetic search   Operations provided to create predictors Random generation Replication Crossover Mutation Evaluation tools Fitness function Applied the above techniques branch prediction Z)81)81  Genetic search      Data Value Prediction   Classification of value sequences: Constant (C) 5, 5, 5, 5 Stride (S) 1, 2, 3, 4 Non-Stride (NS) 109, 2, 17 Repeated Stride (RS) 1, 2, 3, 4, 1, 2, 3, 4 Repeated Non-Stride (NS) 109, 2,17,109, 2,17 Computational predictors predict by computing a function of previous values Context based predictors predict by learning the value that could follow a particular context #4E"2E  Stride prediction  +Last Value prediction Use the most recent value produced by the instruction as the predicted value add hysteresis through the use of counters Stride predictors predict the next value by recording the last value and the difference between successive values add hysteresis the two-delta method Hyy , DV Formalization: Items Functions arithmetic: SADD, SUB, MULT logical: IF, MSB, LSB, MASKHI, MASKLO, CATR, CATL, AND, OR, XOR, NOT, EQ, GEQ, GT, LEQ, LT domain-specific: PRIMi Terminals general: CONSTANT domain-specific: PC, RES, instruction type, PREDi (general)  N b > 6  H    "DV Formalization: Collapsing trees"    Examples (1)    Last Value Predictor PRIM [32,d] (PC; RES) Last Value Predictor, hysteresis PRIM1 [32,d] (PC; if (LEQ (Counter[2,d] (PC; PRED1 == RES)), 1) then RES else PRED1 ) "h "1)   Examples (2)  Stride Predictor, 1 stride PRIMv [32,d] (PC; RES) + PRIMs [32,d] (PC; RES - PREDv) Stride Predictor, 1 stride, hysteresis PRIMv [32,d] (PC; RES) + PRIMs [32,d] (PC; if (GEQ (Counter[2,d] (PC; PRED0 == RES)), 2) then PREDs else (RES - PREDv) )9 ' '1       )    @         Examples (and 3) +Reset Counter RSCounter [w,d] (I; C) = PRIM [w,d] (I; if C then PRED + 1 else 0) Stride Predictor, 1 stride, two-delta PRIMv [32,d] (PC; RES) + PRIMs2 [32,d] (PC; if (GEQ (RSCounter[2,d] (PC; RES == PREDv + PREDs1)), 1) then PRIMs1 [32,d] (PC; RES - PREDv) else PREDs2 ) H & H& :          P  6     7      Future work  Confidence Estimation Co-evolution (programs) Applicability of more complex graph models Example: DAG s - inefficiency - memory limitation is an implementation constrain + tree grafting remains easy Fitness FunctionJY_ Yn b  q }  ` ̙33` ` ff3333f` 333MMM` f` f` 3>?" dd@(~?" dd@  " @ ` n?" dd@   @@``PR    @ ` ` p>> i(    6z P z w7Haga clic para modificar el estilo de ttulo del patrn87 ;  0Dz j z kHaga clic para modificar el estilo de texto del patrn Segundo nivel Tercer nivel Cuarto nivel Quinto nivel7   k   0z `` z =*  0z `  z ?*  0dz @p` z A*/9  <zPJ H*/15H  0޽h ? 333MMMX 0 (     6z Pp A framework for the automated discovery of predictors through genetic programming and its application to branch and data value prediction.   @  0$z p `   <Sylvia Ratnasamy - sylviar@cs Jos Mara Gonzlez - chema@cs==l H  0޽h ? ̙33&  @f(    B" 0  "   <"  @ " H  0޽h ? ̙33-  PE( ؅_   <"F h$A Brief Outline & .  !  <" Z  Identification of primitive building blocks Primitive predictors Functions Terminals For each building block define : the expected input arguments result generated code that implements the required functionality constraints on the placement of building block\.2#,2# P   R  s *R `  <"  L Predictor    R   s *2 pd"   <HxIjp ^B   6Db  b   <d"vwU WGenetic programming   ^B   6D B  <Ķ" @  JTraces  ^B  6D`jB  BDdB @ <D0jB  BD00"dB  <D"0 "  <"_ LResults      <D"@/H VBuild manually F  X  0  ^B  6D  ^B  6D P ^B  6D 0^B  6D    <"   Gf( )     <"  JInputs    <d"k e  JResult  H  0޽h ?    ̙33  `),4( }@@K@ 4X 4 0p X 4 0pp  4 <Ĺ"z    4 <$"P/x BApplying the framework to branch prediction: Primitive predictor: P(w,d)[I;U] Functions: MSB, XOR, AND, CATL, CATR, SADD & Terminals: PC, PREDVAL, RES, DIR .t    4 <"0 * EMSB  X  4 0 0 X  4 0  0 X  4 0 ` 0 X  4 0 `0 X 4 0 @X 4 0 P @X 4 0 P@ 4 <"p&   'P   4 <D" l@  '2   4 <" T0  'd   4 <" 0  (PC   4 <d"   *If()   4 <ļ" W @ * 'T   4 <$" g  FSADD   4 <" 9 FSADD  X 4 0 @X 4 0X 4 00X 4 0X 4 0@pHX 4@ 0@ pX 4 0@08X  4@ 0@0X !4 00 @0 X "4 00 @p X #4 0 pX $4@ 0  X %4@ 0  X &4 0 @ X '4 0 @ X (4@ 00 @  )4 <961  'P   *4 <$:6! 'P   +4 <:6 D+1   ,4 <:6 D-1  H 4 0޽h ?44444444444 4 44!4 44"444#444$4 4 4%4 4 4&4 4 4'4 44(4 ̙33,  *`d( K `, *` <D6T v set p [ predictor new ] set n0 [ predictor create_node $p $PRIM ] set n1 [ predictor create_node $p $CONSTANT ] set n2 [ predictor create_node $p $CONSTANT ] set n3 [ predictor create_node $p $PC ] set n4 [ predictor create_node $p $RES ] # The Primitive Predictor predictor set_root $p $n0 predictor set_node_argv $p $n0 0 $n1 predictor set_node_argv $p $n0 1 $n2 predictor set_node_argv $p $n0 2 $n3 predictor set_node_argv $p $n0 3 $n4 # The width predictor set_node_argv $p $n1 0 32 predictor set_node_argv $p $n1 1 1 # The depth predictor set_node_argv $p $n2 0 32 predictor set_node_argv $p $n2 1 $depth*wu  J  "  "  "    !  !     !  !   H ` 0޽h ? ̙33&  p8f( O 8 8 B<6 0  6  8 <d<6   6 H 8 0޽h ? ̙33.  hn(  h h BQN 0  N  h <DUN6*r  ,Dset new_tree [predictor generate_random_tree] set new_tree [predictor generate_random_offspring $tree1 $tree2] set new_tree [predictor generate_random_mutation $tree1] while {[trace get_trace $traceId pc dir res]==0} { set T [predictor predict $predId $pc $res $dir] if {$T == $res} { # Calculate fitness function } }6E  #          ( H h 0޽h ? ̙33&  <f( ̄@a@ < < B;6 0  6  < <$=6   6 H < 0޽h ? ̙33&  @f( }@@K@ @ @ B=6 0  "  @ <=6   " H @ 0޽h ? ̙33  H*( ̄@a@ Hr H S ?6P  " x H c $d?6j " H H 0޽h ? ̙33  4b\$ @(  \r \ S @6P  "  8 p(  W\(p(  @ (  S\p(  r 5\ Bo(  6\ H@6oC] NP1  r 7\ Boir 8\ BogJ  9\ HDA633g gJ  >   :\ HA6ogJ  <   ;\ HB6o3gM J  NP2   <\ HdB6oF (  NP3   =\ HB6oF (  >  r >\ Boi=  l @\B <o`l A\B <ol B\ <ol C\ <33oggl D\B <o,`l E\ <o`l F\ <33oQ a ? l G\B <oUQ ? r ?\ B33g  = l H\ <33oa / + = l I\B <o/ a 6 r L\ B33g E ( l M\ <33ogJ gE  T\ <C6c 5  8Step 1: Prediction  d \ <33o (  \ BC633o   `P10   d \ <33o  $d \ <33o g J  \ HDD6o g J  >    \ BD633o g@ZJ  <    \ BE633o gJ  `P20     \ BdE633o F t(  `P30     \ B"33o F h(  >  d  \ <33o = $ j \ Bo = >X d \@ <33o - p `d \@ <33o p ,d \ <33o ,d \ <o p `d \@ <33o `d \ <33o ``d \ <o Q `? d \@ <33o Q `? d \ <o / 6 d \@ <33o / 6 j N\ Bo E ( d O\ <o [ <  U\ B6   4Step 2: Update  H \ 0޽h ?o\\\\\\\\\\\\\ \\\ \\ \ \\ \ \\ \\\ \ \\6\8\@\5\6\A\5\7\B\6\9\C\7\:\D\7\;\E\;\<\F\;\=\G\<\?\H\<\>\I\ 9\L\M\!N\O\ ̙33K   2L {( ̄@a@ Lr L S d6P  6 x L c $İ6j 6 I8 `@ L`N  @` L `@` L 0fB L 6D@ppfB L 6Dp`p` L 0@ L <$6 x9 MRES  fB L 6DP@P  L <6`pW LPC  H L 0޽h ? ̙33  T*(  Tr T S 6P  6 x T c $D6j 6 H T 0޽h ? ̙33  X*( @K@ Xr X S d6P  6 x X c $ij6j 6 H X 0޽h ? ̙33   0*( `z@@H@ 0r 0 S DzP  " x 0 c $zj " H 0 0޽h ? 333MMMr\  Z'*, P%=@Y_a dPA3e Tn[ Oh+'0 hp ( H T ` lxxQuantitative Characterization of Content-Based FEC Techniques on Interactive-Audio Transmissions over Wireless NetworksChemataJos Mara Gonzlez108Microsoft PowerPointriz@R@VS"@Ybv@PF"G. oM  =& &&#TNPP0D z & TNPP &&TNPP    --- !---&G& r!w*wgw r - &Gy& --8-- Times New Roman*wgw - . 2 B1 . . 2 O/15 .--Qi8-- Times New Roman*wgw s - .32 A framework for the automated' *'  *. .62 discovery of predictors through  . .02 genetic programming and itse )* . .=2 HO$application to branch and data value    . .2 ^ prediction..--A1-- Times New Roman*wgw - .2 JSylvia   . . 2  . .2  Ratnasamy    . . 2 - . .2  sylviarm   . . 2 M@. . 2 dcs . .(2 '=Jos Mara Gonzlez -     . .2 'chema  . . 2 'Y@. . 2 'ocs .--"Systemw f  -&TNPP &(՜.+,D՜.+,8    On-screen Show -s  Times New Roman Courier NewDefault DesignNo Slide TitleProblem Definition No Slide TitleNo Slide TitleNo Slide TitleGenetic search Genetic search Data Value Prediction Stride predictionDV Formalization: Items#DV Formalization: Collapsing trees Examples (1) Examples (2)Examples (and 3) Future work  Fonts UsedDesign Template Slide Titles 6> _PID_GUIDAN{3AC79B65-E2AB-11D1-A9D6-D74586017B5E}+_{Jos Mara Gonzlez  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHJKLMNOPRSTUVWXcRoot EntryEdO)`O#Z@Current Userntrustedate3SummaryInformation]](Y: \\Bmrc\cIPowerPoint Document(DocumentSummaryInformation8Q|d]Y: \\Bmrc\chemaMILHOUSE