Top Banner
Dynamic Prediction of Dynamic Prediction of Architectural Architectural Vulnerability from Vulnerability from Microarchitectural State Microarchitectural State Kristen R. Walcott Kristen R. Walcott Masters Presentation Masters Presentation May 2, 2007 May 2, 2007 To be presented at ISCA, June 2007
31

Dynamic Prediction of Architectural Vulnerability from Microarchitectural State

Jan 31, 2016

Download

Documents

reilly

Dynamic Prediction of Architectural Vulnerability from Microarchitectural State. Kristen R. Walcott Masters Presentation May 2, 2007. To be presented at ISCA, June 2007. n+. n channel. + -. + -. + -. +-. + -. + -. + -. + -. + -. Energetic Particles Attack!. Neutron. G. D. S. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

Dynamic Prediction of Dynamic Prediction of Architectural Vulnerability Architectural Vulnerability

from from Microarchitectural StateMicroarchitectural State

Kristen R. WalcottKristen R. Walcott

Masters PresentationMasters PresentationMay 2, 2007May 2, 2007

To be presented at ISCA, June 2007

Page 2: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

B

S D

p substrate

G

n+n+

n channel

+ - + -+ -

+ -+-

+ -+ -

+ -+ -

Neutron

Energetic Particles Attack!Energetic Particles Attack!

Page 3: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Transient FaultsTransient Faults

: least amount of collected charge necessary to : least amount of collected charge necessary to produce an upsetproduce an upset

: Charge collection efficiency = (Collected : Charge collection efficiency = (Collected Charge/Generated Charge)Charge/Generated Charge)

Circuit SER = Constant * Flux * Area * e³

Q cr i tQ col l

´

Qcr i t

Qcoll

Voltage decreases -> QVoltage decreases -> Qcritcrit decreases decreases

When QWhen Qcritcrit is low enough, likelihood of is low enough, likelihood of transient faults increasetransient faults increase

Page 4: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Originally considered a risk only for large memory storage

• Latches

• Combinatorial logic

• Other processor core structures

Transient Faults: Transient Faults: A Rising ProblemA Rising Problem

Processors are becoming more susceptible to transient faults

• Lowered supply voltages

• Increasing clock frequencies

1

10

100

1000

10000

100000

2003 2004 2005 2006 2007 2008 2009 2010 2011 2012

Dat

a C

orru

ptio

n FIT

FIT

1000 MTBF Goal Error Rate

Page 5: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Protecting the Processor Protecting the Processor CoreCore

Parity and error-correcting codesParity and error-correcting codes– Large areaLarge area– Long delayLong delay– High power usageHigh power usage

RedundancyRedundancy– HardwareHardware– Redundant Multithreading (RMT)Redundant Multithreading (RMT)

Page 6: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Redundant MultithreadingRedundant Multithreading

Successful in Successful in protectionprotection

Performance degraded:– 30% on single-threaded

workloads – 32% on multithreaded

workloads

InputReplicator

OutputComparator

Rest of the System

Page 7: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Architectural VulnerabilityArchitectural Vulnerability

Is protection always needed?Is protection always needed? Architectural Vulnerability Factor Architectural Vulnerability Factor

(AVF)(AVF)– Probability that an internal fault in

the structure would result in an externally visible error

– Tracking instantaneous AVF expensive

Page 8: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Why Track AVF?Why Track AVF?

If only we knew…– Balance vulnerability and

performance– Balance vulnerability and power– Control application specific RMT– Perform AVF-profiling– and probably much more!

Page 9: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Main ContributionsMain Contributions

A demonstration that AVF varies over A demonstration that AVF varies over time and across SPEC2000 benchmarkstime and across SPEC2000 benchmarks

A rigorous characterization of AVF A rigorous characterization of AVF based on a thorough statistical analysisbased on a thorough statistical analysis

An a posteriori analysis of our AVF predictor quantitatively validates our approach

Proof-of-concept RMT implementation Proof-of-concept RMT implementation

Page 10: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Little’s Law estimates AVF as:

: average bandwidth of the ACE bits into the structure : average residence time of ACE bits in the structure

Architectural Architectural Vulnerability FactorVulnerability Factor

The probability that a fault in a structure will result in an architecturally visible incorrect execution

Fraction of time that a bit is in a state of Architecturally Correct Execution (ACE)

AVF = (Bace) (Lace) =#B

Bace

Lace

Page 11: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Past Redundancy Past Redundancy TechniquesTechniques

Hardware replication Hardware replication ((Bernick et al. 2005, Slegal et al. 1999Bernick et al. 2005, Slegal et al. 1999))

Redundant Multithreading (RMT) Redundant Multithreading (RMT) – ((Mukherjee et al. 2002, Reinhardt and Mukherjee 2000, Reis et al. Mukherjee et al. 2002, Reinhardt and Mukherjee 2000, Reis et al.

20052005))– Less hardware necessaryLess hardware necessary– Better performance by dynamically partitioning Better performance by dynamically partitioning

resourcesresources Partial RMTPartial RMT

– Reduce power consumptionReduce power consumption– Increase performanceIncrease performance

Page 12: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Partial RMT Partial RMT TechniquesTechniques

Performance-Efficient RMTPerformance-Efficient RMT– Exploiting instruction reuse (Exploiting instruction reuse (Parashar et al.,Parashar et al., ISCA 2004))– Opportunistic DIE-IRB Opportunistic DIE-IRB ((Gomaa et al., ISCA 2005Gomaa et al., ISCA 2005))– Using speculation as a form of redundancy Using speculation as a form of redundancy

((Parashar et al., ASPLOS 2006))– Relaxing input replication (Relaxing input replication (Smolens et al., MICRO 2006Smolens et al., MICRO 2006))

Power-Efficient RMTPower-Efficient RMT– ((Madan and Balasubramonian SELSE 2006, Madan and Balasubramonian SELSE 2006,

Rashid et al. ISCA 2005Rashid et al. ISCA 2005))

Problem:Problem: RMT schemes are oblivious to RMT schemes are oblivious to the actual vulnerabilitythe actual vulnerability

Page 13: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Experiment DesignExperiment Design

SimpleScalar 3.0SimpleScalar 3.0 Modified to track AVFModified to track AVF

– Load/Store Queue (LSQ)Load/Store Queue (LSQ)– Issue Queue (ISQ)Issue Queue (ISQ)– Reorder Buffer and Physical Register File Reorder Buffer and Physical Register File

(RUU)(RUU) Modified to perform RMTModified to perform RMT

– Based on Simultaneous and Redundantly Threaded (SRT) design

Page 14: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Experiment DesignExperiment Design

26 SPEC2000 benchmarks26 SPEC2000 benchmarks

Each benchmark is run for multiple 100-million instruction SimPoints

Checkpoint the entire microarchitectural state (160 variables) and calculate AVF every 4 million instructions(25 “snapshots” per SimPoint)

Page 15: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Experimental ResultsExperimental Resultsperlbmk bzip2 art

2 SimPoints measuring RUU AVF

AVF can vary significantly over time and across applications

Page 16: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

A single metric is likely not enough.

More sophisticated prediction mechanism needed!

Experimental ResultsExperimental Resultsperlbmk bzip2 art

RU

U

AV

FIP

C

Page 17: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Detecting CorrelationsDetecting Correlations

Visual trendsVisual trends– Too many metrics to considerToo many metrics to consider– Correlation may not hold in all casesCorrelation may not hold in all cases

Principal Component AnalysisPrincipal Component Analysis Regression techniquesRegression techniques

– Linear regressionLinear regression– Quadratic regressionQuadratic regression

Page 18: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Principal Component Principal Component AnalysisAnalysis

Optimal linear transformation for projecting data into a new coordinate system

Identified 69 principal components

Four components had substantially higher singular values

R2 values:– 0.61 RUU – 0.47 ISQ – 0.55 LSQ

Good results, but spanning eigenvectors

are linear combinations of the

original 160 performance variables

Page 19: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Searching for Searching for CorrelationsCorrelations

Identify strong correlations between structural AVF values and a small

set of easily measurable processor metrics.

Page 20: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Practical AVF Practical AVF PredictionPrediction

Regression techniques– Gives a function to predict the value of

a dependent variable Problem: Find the optimal representation of

as a weighted combination of basis functions , where each depends only on the values of a subset of the predictor variables (minimize the sum of squared errors )

yi = ¯0 + ¯1f 1i + ¯2f 2i +:::+ ¯kf ki + ²i

f1;f 2; : : :f k

ypredictor variablesresponse variable (AVF)

¯ i¯ i

y

Pi ²2

i

Page 21: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Linear RegressionLinear Regression Include the single variable with the highest correlation Consider all remaining 159 variables in turn Select the best and repeat, until all variables used. Select subset for predictor

Quadratic RegressionQuadratic Regression For each pair we perform a nonlinear least-

squares fit using the basis

pairs were considered

f1,x,y,xy,x2;y2g(x,y)

µ1602

= 12720

Page 22: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

(0.02 ) + (0.55 ) – (27.38 * ) + (2.73 (0.02 ) + (0.55 ) – (27.38 * ) + (2.73 ) )

-2.27 + (0.71 ) + (0.017 * )-2.27 + (0.71 ) + (0.017 * )

-1.07 – (5.03e-9 ) + (1.35 ) – (5.65e-9 -1.07 – (5.03e-9 ) + (1.35 ) – (5.65e-9 ) + (0.01 * ) + (5.77e-9 )) + (0.01 * ) + (5.77e-9 )

Resulting PredictorsResulting Predictors P1: Multi-variable linear predictorP1: Multi-variable linear predictor P2: Quadratic predictorP2: Quadratic predictor P3: Linear predictor whose terms are those P3: Linear predictor whose terms are those

variables with the highest individual correlation variables with the highest individual correlation to AVFto AVF

PredictPredictoror

StrucStructt

EquationEquation

P1P1 RUURUU

ISQISQ

LSQLSQ SCRcLoLc

R2

Ro

Rl Ro SB WIPC

IPB

IPB

0.93

0.74

0.94

LLccLSQ countLSQ count

LLooAvg LSQ occupancyAvg LSQ occupancy

RRccRUU countRUU count

SCSC Total # of slip cycles Total # of slip cycles (issue to retirement)(issue to retirement)

RRooRUU occupancyRUU occupancy

IPBIPB Instructions per branchInstructions per branch

RRllRUU latencyRUU latency

IPCIPC Instructions per cycleInstructions per cycle

SSBWBWTotal instructions exec.Total instructions exec.

(Speculative and (Speculative and committed)committed)

Page 23: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Comparison of Comparison of PredictorsPredictors

Multivariable Linear

Quadratic Simple Linear

All 3 predictors are able to capture noisy behavior

Page 24: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

AVF-Aware RMTAVF-Aware RMT

Every two million cycles, estimate the AVF for LSQ, ISQ, and RUU

Add together for total AVF

If AVF > threshold, generate a processor interrupt and enable RMT

After a fixed number of cycles (10 million), disable RMT

Page 25: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

IPC Variations for IPC Variations for twolftwolfThreshold = AVF ValuesThreshold = AVF Values

Between 14% and 55% performance improvement

Page 26: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

ConclusionConclusion

AVF does vary and is correlated with the microarchitectural state

AVF can be modeled – High accuracy– Inexpensive quadratic or linear model – Based on a few easily-tracked

processor performance variables Can be used as an online predictor

Page 27: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Future WorkFuture Work

Develop sophisticated toggling scheme– Adaptive AVF thresholds – Non-constant RMT window sizes

Examine tradeoffs– Performance– Power– Fault-tolerance

Page 28: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Questions?Questions?

Page 29: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Resulting PredictorsResulting Predictors

Var. DescriptionRc RUU countRl RUU latencyRo RUU occupancySB W Total instructions executed

(speculativeand committed)L c LSQ countL l LSQ latencyLo LSQ occupancySC Total number of \ slip" cycles

(from issueto retirement)ASC Averagenumber of slip cyclesI o IFQ occupancy

Pred. Struct. Equation R2

P1 RUU ¡ 2:27+(0:71Ro) +(0:017¤IPB) 0:93ISQ (0:20Rl) +(0:55Ro) ¡ (27:38¤IPC) +(2:73SB W ) 0:74LSQ ¡ 1:07¡ (5:03e¡ 9Lc) +(1:35Lo)¡ 0:94

(5:65e¡ 9Rc) +(0:01¤IPB)+(5:77e¡ 9SC)

P2 RUU 1:14+(0:001Rl ) ¡ (1:47e¡ 6R2l ) +(0:10¤IPC)+ 0:96

(0:73Rl ¤IPC) ¡ (0:09¤IPC2)ISQ ¡ 25:48¡ (0:02ASC) +(1:41e¡ 6ASC2)+ 0:81

(16:42¤IPC) +(0:51ASC ¤IPC)¡(3:47¤IPC2)

LSQ ¡ 1:49+(0:03L l ) ¡ (0:00003L2l ) +(2:92¤IPC)+ 0:94

(1:41L l ¤IPC) ¡ (0:80¤IPC2)P3 RUU ¡ 3:06+(0:73Ro) 0:92

ISQ ¡ 0:90¡ (4:83I o) +(0:74Lo) +(0:81Ro) 0:69LSQ ¡ 1:23+(1:41Lo) 0:90

Page 30: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

Comparison of Comparison of PredictorsPredictors

No one predictor No one predictor constantly does bestconstantly does best

P1 (multivariable P1 (multivariable linear predictor) gives linear predictor) gives good compromise good compromise – Cost of implementationCost of implementation– AccuracyAccuracy

Page 31: Dynamic Prediction of Architectural Vulnerability from  Microarchitectural State

http://www.cs.virginia.edu/~krw7c/avf.html

More Related WorkMore Related Work

Fu, X., Poe, J., Li, T., and Fortes, J. A. 2006. Characterizing Fu, X., Poe, J., Li, T., and Fortes, J. A. 2006. Characterizing Microarchitecture Soft Error Vulnerability Phase Behavior. In Microarchitecture Soft Error Vulnerability Phase Behavior. In Proceedings of the 14th IEEE international Symposium on Proceedings of the 14th IEEE international Symposium on Modeling, Analysis, and SimulationModeling, Analysis, and Simulation (September 11 - 14, 2006). (September 11 - 14, 2006). MASCOTS. IEEE Computer Society, Washington, DC, 147-155.MASCOTS. IEEE Computer Society, Washington, DC, 147-155.

Show that AVF varies for microarchitecture structures Show that AVF varies for microarchitecture structures over time over time and across applicationsand across applications Attempt to find correlation with 5 individual metricsAttempt to find correlation with 5 individual metrics

– Goal to link vulnerability with phase behaviorGoal to link vulnerability with phase behavior– Consider each metric by itselfConsider each metric by itself

Metrics were few in number and exhibited inconsistent Metrics were few in number and exhibited inconsistent correlation to AVF -> Gave up the idea of a predictive correlation to AVF -> Gave up the idea of a predictive approachapproach