220 likes | 409 Views
ASoC Design Methodology. Evaluating the Learning Classifier System XCS on ASoC. Andreas Bernauer <bernauer@informatik.uni-tuebingen.de> Oliver Bringmann Wolfgang Rosenstiel. In cooperation with Technische Universit ä t M ünchen A. Herkersdorf, W. Stechele, A. Bouajila, J. Zeppenfeld.
E N D
ASoC Design Methodology Evaluating the Learning Classifier System XCS on ASoC Andreas Bernauer <bernauer@informatik.uni-tuebingen.de> Oliver Bringmann Wolfgang Rosenstiel In cooperation with Technische Universität München A. Herkersdorf, W. Stechele, A. Bouajila, J. Zeppenfeld Sand 13, 72076 Tübingen 1.4.2008
Outline • SoC design challenges • Design in the ASoC project • Evaluation of XCS • Summary
1011 Microprocessor complexity 1010 109 108 Pentium 4 107 Chipcapacity (transistors per chip) 106 Pentium Pentium III 105 80486 Pentium II 104 80386 103 80286 8086 8008 Source: ITRS 4004 Designer Productivity Year 1968 1972 1976 1980 1984 1988 1992 1996 2000 2004 2008 2012 Challenges in Chip design Microprocessor Complexity vs. Designer productivity • Increasing design complexity • Increasing thermal problems • Increasing degradation effects • Increasing fabrication variations and defects 106 105 104 103 Design Productivity (K trans. / PM) 100 10 1 Device Variations (Target Voltage) 0.1 Soft Errors (Relative Failure Rate)
Fault causes in chips Gate • Soft errors (particle strikes) • Single event transient (SET): gate output changed • Single event upset (SEU): flip-flop value changed • Hard errors • Electro migration • Thermal cycling Source Drain + − − + + − f 0→1 SET SEU clk f 0→1 clk Electro migration hole Thermal cycling crack
Performance Reliability Power ASoC: design methodology & architecture Design methodology Architecture ASoC Autonomic element (AE) Application Requirements & Characteristics Architecture Characteristics Autonomic layer FE/AE Parameter Selection FE/AE Model Architecture Optimization Evaluation Functional element (FE) Functional layer AE Monitor Communi-cation Evaluator Actuator
Learning Classifier System XCS σ(t): State of the environment α(t): Action chosen by XCS ρ(t): Reward for chosen action σ(t) α(t) Literature shows good results for XCS: learns both accurately and most general Can be implemented in hardware Designer knowledge not lost: can insert own rules Classifier Table
XCS example • Guide a robot through a labyrinth • Environment: surrounding of the robot • Actions: Go north, east, south west Environment (sensing):10000001 goal wall • XCS • Match with experience • Select action robot Action: Go west Reward
Internals of XCS ClassifierTable Action Set Match Set
Evaluation of XCS • Setup: simulate workloads on AMD Opteron QuadCore (Barcelona) • Power (dyn. + stat.) • Temperature (HotSpot) • Error rate (Zhu) • Step 1: Let XCS learn • Step 2: Let XCS act • Goal: find optimal frequency & voltage Work has been carried out by Dirk Fritz.
Step 1: Let XCS learn • Reward function • Learning cycle here: w1=200 w2=35 w3=200 Random frequencyand voltage Exploit/explore step of XCS Reward function
Step 2: Let XCS act • XCS finds optimal operating point.
Variation 1: increased air temperature • Set temperature at +15K than during learning • Modified reward function: < 70°C: w1=200 w2=35 w3=200 > 70°C: w1=100 w2=100 w3=200
Variation 1: increased air temperature • XCS still finds optimal operating points. • However, system oscillates.
Variation 2: different reward function • In action, use a different reward function (for SRAM): XCS resets voltage to optimal value (1.0 V)
New freq. & volt. new_rew < old_rew Exploit/explore step of XCS Reward function Keep freq. & volt. Learning without GA Can XCS learn without genetic algorithm? Slightly altered learning step: yes no
Learning without GA • After an initial learning period, XCS finds optimal operating point again.
Without GA & different reward function • Can XCS learn a different reward function without GA? • New reward function: minimize waiting time between two cores.
Without GA & different reward function • XCS finds optimal operating point quickly.
Summary • ASoC provides a flexible, organic-enabled hardware and design methodology. • XCS can find optimal operating points in CPUs. • XCS tolerates changing environments • XCS tolerates changing reward functions • XCS can learn without GA Thank you for your attention.