ISPD20061
Azadeh Davoodi and Ankur SrivastavaUniversity of Maryland,
College Park.
Presenter: Vishal Khandelwal
Probabilistic Evaluation of Solutions in Variability-Driven Optimization
ISPD20062
Outline• Motivation
– Challenge in probabilistic optimization considering process variations
• Pruning Probability– Metric for comparison of potential solutions
• Computing the Pruning Probability• Application
– Dual-Vth assignment considering process variations
• Results
ISPD20063
Motivation• Many VLSI CAD optimization problems rely
on comparison of potential solutions– To identify the solution with best quality, or to
identify a subset of potentially good solutions
• Any potential solution Si has a corresponding timing ri & cost ci:– e.g., A solution to the gate-sizing problem has:
• Timing: Delay of the circuit • Cost: Overall sizes of the gates
ISPD20064
Motivation
• Process variations randomize the timing and cost associated with a potential solution
0.9
1.0
1.1
1.2
1.3
1.4
0 5 10
20X
15 20Normalized Leakage Power
Nor
mal
ized
Fre
quen
cy
Source: Intel
30%
1)&( ≈≤≤⇔ jijij CCRRPSiS superior
jijij ccrrS ≤≤⇔ &iS superior
• A good solution is the one with better timing and cost
ISPD20065
Pruning Probability
∫ ∫∞ ∞
=≥≥0 0 , ),()0&0( drdccrfCRP CR
• Let and
fR,C : joint probability density function (jpdf) of random variables R and C
ij RRR −=ij CCC −=
1)&( ≈≤≤⇔ jijij CCRRPSiS superior
ISPD20066
Computing the Pruning Probability:Challenges
• Accuracy– Might not have an analytical expression for fR,C
– Might require numerical methods to compute the probability
• Fast computation – Necessary in an optimization framework– Makes the use of numerical techniques such as
Monte Carlo simulation impractical
∫ ∫∞ ∞
=≥≥0 0 , ),()0&0( drdccrfCRP CR
ISPD20067
• Based on analytical approximation of the jpdf( fR,C )– With a well studied jpdf– For which computing the probability integral is
analytically possible
• Using Conditional Monte Carlo simulation – Bound-based numerical evaluation of the probability– Potentially much faster than Monte Carlo
Computing the Pruning Probability:Methods
ISPD20068
Computing the Pruning Probability: Approximating jpdf by Moment Matching
R and C X and Y
Match the first few terms (moments)
CharacteristicFunction
ΦR,C ΦX,Y
fR,C fX,Y
• Approximate R,C with new random variables X,Y where the type of jpdf of X,Y is known
• Compute the first few terms of the characteristic functions (Fourier transform) of the two jpdfs (i.e., moments)
• Match the first few moments and determine the parameters of fX,Y
• Compute the pruning probability for X and Y
CharacteristicFunction
Calculate Probability for fX,Y
ISPD20069
Computing the Pruning Probability: Approximating jpdf by Moment Matching
∫∫ == ][),(,ji
YXji
ij YXEdxdyyxfyxm
...2
1
),(),(
20
21
012101
,)(
21,21
−−++=
=Φ ∫∫ +
mtmitmit
dxdyyxfett YXytxti
YX
R and C X and Y
Match the first few terms (moments)
CharacteristicFunction
ΦR,C ΦX,Y
fR,C fX,Y
CharacteristicFunction
Calculate Probability for fX,Y
ISPD200610
Computing the Pruning Probability: Approximating jpdf by Moment Matching
• Challenges:– Very few bivariate jpdfs have closed form expressions
for their moments– Integration of very few known jpdfs over the quadrant
are analytically possible
• Will study the example of bivariate Gaussian approximation given polynomial representation of R and C
ISPD200611
Example: Bivariate Gaussian jpdf for PolynomialsPolynomial representation of R and C
under process variations
• Can represent R and C as polynomials– By doing Taylor Series expansion of the R and C expressions in
terms of random variables representing the varying parameters due to process variations (e.g., Leff, Tox, etc.)
– Higher accuracy needs higher order of expansion– These r.v.s can be assumed to be independent
• Using Principal Component Analysis (PCA)
,...),(1 oxeff TLfR =,...),( 212 XXPolyC =,...),( 211 XXPolyR =
,...),(2 oxeff TLfC =PCA and Taylor Series Expansion
ISPD200612
Example: Bivariate Gaussian jpdf for Polynomials
• Assuming {X1,X2,…} are independent r.v.s with Gaussian density functions– The jpdf (fR,C) is approximated to be bivariate Gaussian – Using linear approximation of R and C
∑+≈= ii XrrXXPolyR 0211 ,...),( ∑+≈= ii XccXXPolyC 0212 ,...),(
22
222
21
22112
1
211
2221
,
)())((2)(
])1(2
exp[12
1
σµ
σσµµρ
σµ
ρρσπσ
−+
−−−
−=
−−
−=
xxxxz
zf YX
• Moments of bivariate Gaussian jpdf are related to
– Need to specify the values of these parameters using moment matching
ρσσµµ ,,,, 2121
ISPD200613
Example: Bivariate Gaussian jpdf for Polynomials
][1 RE=µ][ 22
12
1 RE=+ µσ][2 CE=µ][ 22
22
2 CE=+ µσ
][RCEyxyx =+ µµσρσ
22
222
21
22112
1
211
2221
,
)())((2)(
])1(2
exp[12
1
σµ
σσµµρ
σµ
ρρσπσ
−+
−−−
−=
−−
−=
xxxxz
zf YX
R and C X and Y
Match the first few terms (moments)
CharacteristicFunction
ΦR,C ΦX,Y
fR,C fX,Y
CharacteristicFunction
Calculate
Probability for fX,Y
∑+≈= ii XrrXXPolyR 0211 ,...),(∑+≈= ii XccXXPolyC 0212 ,...),(
Analytical expression for probability integral of bivariateGaussian jpdf is available (Hermite Polynomials)*
*[Vasicek 1998]
ISPD200614
Computing the Pruning Probability: Conditional Monte Carlo (CMC)
• CMC is similar to MC but:– Uses simple bounds that can evaluate the sign of R
and C for most of the MC samples• Evaluation of simple bounds are much more efficient than
polynomial expressions that are potentially of high order
– Only in the cases that the simple bounds can not predict the sign of R and C, the complicated polynomial expressions are evaluated
∫ ∫∞ ∞
=≥≥0 0 , ),()0&0( drdccrfCRP CR
ISPD200615Pruning Probability
Computing the Pruning Probability: Conditional Monte Carlo (CMC)
Compute SimpleBounds for R and C:
ULUL CCRR ,,,
totalCR
#)0,0(# ≥≥
Generate SamplesBased on pdf ofthe Xi variables
ULUL CCRR ,,,Evaluate
0,00,0
><
><UL
UL
CCRR
Determine if R>0 & C>0from the bounds
Determine if R>0 & C>0by evaluating R and C
Update count of # R &C>0
Y N
or
Can predict sign of R and
C from its bounds
Can NOT predict sign of R and C from
its bounds
ISPD200616
• Accurately predicts the probability value
• Speedup is due to the following intuition:- Evaluation of simple bounds are much faster than high-order polynomials- If the bounds are accurate, they predict the sign of the polynomials very frequently resulting in significant speedup
Computing the Pruning Probability: Conditional Monte Carlo (CMC)
ISPD200617
Example: Computing Bounds on Polynomials
• Bernstein coefficients define convex hull for any polynomial*
∑ ∑= =
=1
1
21
10 0
21,...,1 ......),...,(l
i
l
i
in
iiiin
n
n
n
nxxxaxxPoly
∑ ∑= =
⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛
⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛
=1
111
0 0,...,
1
1
1
1
,...,
...
......
i
j
j
jii
n
n
n
n
ii
n
nnn
a
jl
jl
ji
ji
b);;...;( ,...,
1
11 nii
n
n bli
li
*[Cargo, Shisha 1966]
ISPD200618
Example: Computing Bounds on Polynomials
• Simple hyper-plane lower-bounds are defined for each polynomial from its Bernstein coefficients*
*[Garloff, Jansson, Smith 2003]
ISPD200619
Application:Dual-Vth Assignment for Leakage
Optimization Under Process VariationsVthL
VthH
VthL
VthH
VthLVthL
VthH
VthH
VthHVthL
VthL
• Assignment of either high or low threshold voltage to gates in a circuit (represented as nodes in a graph)
- Higher threshold (slow), lower threshold (leaky)• Under process variations the goal is:
-To minimize expected value of overall leakage (E[L])-Subject to bounding the maximum probability of violating a Timing Constraint (Tcons) at the Primary Output
ISPD200620
• Each solution:- Overall leakage at the node’s subtree:
- Arrival time of the node’s subtree: Approximated as a linear combination of parameters
...)()()(0 +++= ∑∑∑ ji
kiji
ki
kk XXlXllL
• Dynamic programming based formulation - Topological traversal from PIs to POs- Solution at a node:
-Vth assignment to sub-tree rooted at the node- Solution set at each node:
-Generated by combining solutions of a node’s children + node’s Vth possibilities-Pareto-optimal set identified & stored*
Dual-Vth Assignment for Leakage Optimization Under Process Variations
VthL
VthH
VthL
VthH
VthLVthL
Using the Pruning Probability
*[Davoodi, Srivastava ISLPED05]
ISPD200621
%Error in Estimation of Pruning Probability
For 2600 solution pairs from the dual-Vth framework
ISPD200622
Speedup in Computing the Pruning Probability
ISPD200623
Comparing Quality of Solution in Dual-Vth Assignment
Run Time (sec) E[I] in pA
Maximum allowed risk (probability) for violating the timing constraint: 0.3
ISPD200624
Conclusions
• Introduced pruning probability as metric to compare potential solutions in a variability-driven optimization framework
• Illustrated computing of pruning probability:– Using efficient jpdf approximation– Using accurate Conditional Monte Carlo
simulation– Both methods significantly faster the MC
ISPD200625
Thank You For Your Attention!
For details please contact the authors: {azade,ankurs}@eng.umd.edu