"A probabilistic approach to clock cycle prediction" A probabilistic approach to A probabilistic approach to clock cycle prediction clock cycle prediction J J . Dambre, . Dambre, D. Stroobandt and J. Van Campenhout D. Stroobandt and J. Van Campenhout TAU, December 2, 2002 TAU, December 2, 2002
37
Embed
"A probabilistic approach to clock cycle prediction" A probabilistic approach to clock cycle prediction J. Dambre, D. Stroobandt and J. Van Campenhout.
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
"A probabilistic approach to clock cycle prediction"
A probabilistic approach to A probabilistic approach to clock cycle predictionclock cycle prediction
JJ. Dambre,. Dambre,
D. Stroobandt and J. Van CampenhoutD. Stroobandt and J. Van Campenhout
TAU, December 2, 2002TAU, December 2, 2002
"A probabilistic approach to clock cycle prediction"
OutlineOutline•System-level interconnect predictionSystem-level interconnect prediction•Prediction of minimal clock cyclePrediction of minimal clock cycle•New probabilistic approachNew probabilistic approach•Experimental resultsExperimental results•Main causes of errorsMain causes of errors•Conclusions & future workConclusions & future work
"A probabilistic approach to clock cycle prediction"
Distribution and expected Distribution and expected valuevalue
of critical path delayof critical path delay
Distribution and expected Distribution and expected valuevalue
of critical path delayof critical path delay
Monte Carlo Monte Carlo sampling sampling
(max. logic depth)(max. logic depth)
Concept: Concept:
average delay average delay delay of delay of average wireaverage wire
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock cycle?Prediction of minimal clock cycle?
Problem: minimal clock cycle relates to Problem: minimal clock cycle relates to maximalmaximal combinatorial delay ! combinatorial delay !
Maximal logic depth does not model :Maximal logic depth does not model :• equal logic depth, but different number of pathsequal logic depth, but different number of paths
• paths with less than maximal logic depth can also paths with less than maximal logic depth can also become slowestbecome slowest
Need model that captures impact of Need model that captures impact of
parallellism on extreme value !!parallellism on extreme value !!
=> more important as interconnect represents => more important as interconnect represents ever increasing fraction of total delay !ever increasing fraction of total delay !
"A probabilistic approach to clock cycle prediction"
OutlineOutline•System-level interconnect predictionSystem-level interconnect prediction•Prediction of minimal clock cyclePrediction of minimal clock cycle•New probabilistic approachNew probabilistic approach•Experimental resultsExperimental results•Main causes of errorsMain causes of errors•Conclusions & future workConclusions & future work
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle?cycle?
Parameters from
interconnect
topology
Technology and design
parameters
Distribution of gate Distribution of gate and wire delaysand wire delays
Distribution of gate Distribution of gate and wire delaysand wire delays
distributiondistribution•topology of circuit graphtopology of circuit graph
Assumption:Assumption:•homogeneous: all individual homogeneous: all individual
segment delays “drawn” segment delays “drawn” independentlyindependently from from same same distributiondistribution
Distribution and expected valueDistribution and expected valueof minimal clock cycle ?of minimal clock cycle ?
Distribution and expected valueDistribution and expected valueof minimal clock cycle ?of minimal clock cycle ?
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
probabilistic principles probabilistic principles
Sum of independent Sum of independent variables?variables?
log(P
(d))
log(d)
log(P
(D))
log(d)
log(P
(d))
log(d)
??lo
g(P
(D))
log(d)
??lo
g(P
(D))
log(d)
??
0 2121 .i idPidPddP
convolutionconvolution of distributions of distributions (discrete or continuous)(discrete or continuous)
"A probabilistic approach to clock cycle prediction"
Sum of independent variables:Sum of independent variables:path delay distribution as a function of logic path delay distribution as a function of logic
depthdepth
1.0E-06
1.0E-05
1.0E-04
1.0E-03
1.0E-02
1.0E-01
1.0E+00
1 10 100 1000
delay d (arbitrary units)
P(de
lay
= d) depth 1
depth 10depth 8
depth 6
depth 4
depth 2
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
Maximum of independent Maximum of independent variables? variables?
"A probabilistic approach to clock cycle prediction"
Maximum of independent variables:Maximum of independent variables:maximum path delay distribution for independent pathsmaximum path delay distribution for independent paths
(logic depth = 4)(logic depth = 4)
1.0E-12
1.0E-10
1.0E-08
1.0E-06
1.0E-04
1.0E-02
1.0E+00
1 10 100 1000Maximal path delay d (arbitrary units)
P(m
ax. d
elay
= d
)
1 path
10 paths
8 paths
6 paths
4 paths
2 paths
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
independent paths?independent paths?Segment delays might be approximately Segment delays might be approximately independent, butindependent, butpaths in a circuit are generally paths in a circuit are generally notnot independent! independent!
Find interconnect topology with:Find interconnect topology with:•same number of wire same number of wire
segmentssegments• independent paths onlyindependent paths only•approx. same clock cycle approx. same clock cycle
distributiondistribution
Basic concept of new approach: Basic concept of new approach: uncoupling of dependencies!uncoupling of dependencies!
"A probabilistic approach to clock cycle prediction"
CriticalityCriticality SegmentSegmentss
11
22
33
44
55
66 66
CriticalityCriticality SegmentSegmentss
11
22
33
44
55 99
66 66
CriticalityCriticality SegmentSegmentss
11
22
33
44 11
55 99
66 66
CriticalityCriticality SegmentSegmentss
11 00
22 00
33 11
44 11
55 99
66 66depth 6depth 5depth 4 depth 3
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
independent paths?independent paths?Definition:Definition:wire criticality = maximal depth of any path through wire criticality = maximal depth of any path through that wirethat wire
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
independent paths?independent paths?Notion:Notion:Sensitivity of clock cycle to individual wire delay Sensitivity of clock cycle to individual wire delay strongest on paths with depth = wire criticalitystrongest on paths with depth = wire criticality
Approximations:Approximations:1.1. Ignore impact on clock Ignore impact on clock
cycle through paths with cycle through paths with smaller depthsmaller depth
2.2. Assume that wires with Assume that wires with equal criticality have equal criticality have equal impact on clock equal impact on clock cyclecycle
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock Prediction of minimal clock cycle: cycle:
independent path modelindependent path modelEquivalent topology:Equivalent topology:• find wire criticalities (possible without enumeration of all find wire criticalities (possible without enumeration of all
paths !)paths !)• for each depth i: for each depth i:
"A probabilistic approach to clock cycle prediction"
OutlineOutline•System-level interconnect predictionSystem-level interconnect prediction•Prediction of minimal clock cyclePrediction of minimal clock cycle•New probabilistic approachNew probabilistic approach•Experimental resultsExperimental results•Main causes of errorsMain causes of errors•Conclusions & future workConclusions & future work
"A probabilistic approach to clock cycle prediction"
Prediction of minimal clock cyclePrediction of minimal clock cycle
Parameters from
interconnect
topology
Technology and design
parameters
Distribution of Distribution of segment delayssegment delaysDistribution of Distribution of
segment delayssegment delays
Distribution and expected valueDistribution and expected valueof minimal clock cycleof minimal clock cycle
Distribution and expected valueDistribution and expected valueof minimal clock cycleof minimal clock cycle
"A probabilistic approach to clock cycle prediction"
• Technology parameters from ITRS Technology parameters from ITRS (ed. 2001, technology node 2001)(ed. 2001, technology node 2001)
• Delay models from BACPAC Delay models from BACPAC (e.g. Sakurai, Chern, ...)(e.g. Sakurai, Chern, ...)
Segment Segment delaysdelays
Experimental validationExperimental validation
68 benchmarks from 68 benchmarks from LGSynth series:LGSynth series:• sizes of 527 to 24819 blockssizes of 527 to 24819 blocks• logic depths of 6 to 284logic depths of 6 to 284
Measured Measured distribution of distribution of maximal path maximal path
delaysdelays
100 placement runs 100 placement runs eacheach
Predicted Predicted distribution of distribution of maximal path maximal path
1.1. traditional: traditional: sum of sum of average average segment segment delaysdelays
2.2. newnew
"A probabilistic approach to clock cycle prediction"
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6A
vera
ge m
axim
al p
ath d
elay
(ns
)
ExperimentalTraditional estimationNew estimation
Experimental validationExperimental validation
Correlation:Correlation:
0.923 (traditional)0.923 (traditional)
0.959 (new)0.959 (new)
"A probabilistic approach to clock cycle prediction"
0
5
10
15
20
25
-95
-85
-75
-65
-55
-45
-35
-25
-15 -5 5 15 25
35
45
55
65
75
85
95
Relative error (%)
Num
ber
of
ben
chm
arks
Traditional estimationNew estimation
Experimental validationExperimental validation
Average relative Average relative error:error:
-29.3% (traditional)-29.3% (traditional)
6.7% (new)6.7% (new)
Within 10%:Within 10%:
•10/68 (14.7%)10/68 (14.7%)
•38/68 (55.9%)38/68 (55.9%)
Within 20%:Within 20%:
•21/68 (30.9%)21/68 (30.9%)
•53/68 (77.9%)53/68 (77.9%)
"A probabilistic approach to clock cycle prediction"
OutlineOutline•System-level interconnect predictionSystem-level interconnect prediction•Prediction of minimal clock cyclePrediction of minimal clock cycle•New probabilistic approachNew probabilistic approach•Experimental resultsExperimental results•Main causes of errorsMain causes of errors•Conclusions & future workConclusions & future work
"A probabilistic approach to clock cycle prediction"
Validity of assumptions?Validity of assumptions?
They ignore that:They ignore that:•some wires may almost always be long/short some wires may almost always be long/short (locally different distribution)(locally different distribution)
•there might be local correlations between wire there might be local correlations between wire lengths (not independent)lengths (not independent)
Both prediction strategies assume that Both prediction strategies assume that individual wire lengths are individual wire lengths are independentindependent and and equally distributedequally distributed random variables random variables
"A probabilistic approach to clock cycle prediction"
Validity of assumptions?Validity of assumptions?
Monte Carlo experiment to meet Monte Carlo experiment to meet assumptions:assumptions:• take measured segment delay distributiontake measured segment delay distribution• randomly assign delay from distribution to all randomly assign delay from distribution to all
segments and find maximal path delaysegments and find maximal path delay• repeat 1000 times for each circuitrepeat 1000 times for each circuit
Only cause of remaining errors can be Only cause of remaining errors can be equivalent topology!equivalent topology!
Are deviations due to these assumptions Are deviations due to these assumptions or to equivalent topology?or to equivalent topology?
"A probabilistic approach to clock cycle prediction"
Assumptions or equivalent topology?Assumptions or equivalent topology?
Correlation:Correlation:
0.977 (traditional, vs. 0.977 (traditional, vs. 0.923)0.923)
0.996 (new, vs. 0.959)0.996 (new, vs. 0.959)
"A probabilistic approach to clock cycle prediction"
0
5
10
15
20
25
-95
-85
-75
-65
-55
-45
-35
-25
-15 -5 5 15 25
35
45
55
65
75
85
95
Relative error (%)
Num
ber
of
ben
chm
arks
Traditional estimationNew estimation
0
5
10
15
20
25
30
35
40
-95
-85
-75
-65
-55
-45
-35
-25
-15 -5 5 15 25
35
45
55
65
75
85
95
Relative error (%)
Num
ber
of
ben
chm
arks
Traditional estimationNew estimation Average relative Average relative
error:error:
-39.1 % (vs. –29.3 -39.1 % (vs. –29.3 %)%)
-7.1 % (vs. 6.7 %)-7.1 % (vs. 6.7 %)
Assumptions or equivalent topology?Assumptions or equivalent topology?
Within 20%:Within 20%:
•7.4% (vs. 30.9%)7.4% (vs. 30.9%)
•98.5% (vs. 98.5% (vs. 77.3%)77.3%)
Within 10%:Within 10%:
•2.9% (vs. 14.7%)2.9% (vs. 14.7%)
•63.2% (vs. 55.9%)63.2% (vs. 55.9%)
"A probabilistic approach to clock cycle prediction"
Remaining errors?Remaining errors?
Our equivalent path topology fully Our equivalent path topology fully uncouples all paths. uncouples all paths.
Rather systematical underestimation of Rather systematical underestimation of approximately 7% approximately 7%
But there are alternatives:But there are alternatives:• with same number of segments,with same number of segments,• also using criticalities,also using criticalities,• for which distributions can be calculated !for which distributions can be calculated !
"A probabilistic approach to clock cycle prediction"
Remaining errors?Remaining errors?
Example: Example: • measured average clock cycle using segment delay measured average clock cycle using segment delay
distr. from one of the benchmark experimentsdistr. from one of the benchmark experiments• result: clock cycle (a) 7.1 % below clock cycle (b)result: clock cycle (a) 7.1 % below clock cycle (b)
(a)(a) (b)(b)
Total uncoupling of paths seems too strong!Total uncoupling of paths seems too strong!
Can model be tuned to include this effect?Can model be tuned to include this effect?
"A probabilistic approach to clock cycle prediction"
OutlineOutline•System-level interconnect predictionSystem-level interconnect prediction•Prediction of minimal clock cyclePrediction of minimal clock cycle•New probabilistic approachNew probabilistic approach•Experimental resultsExperimental results•Main causes of errorsMain causes of errors•Conclusions & future workConclusions & future work
"A probabilistic approach to clock cycle prediction"
ConclusionsConclusions
• New probabilistic model for clock cycle New probabilistic model for clock cycle prediction:prediction:• captures the essence of circuit parallellismcaptures the essence of circuit parallellism• based on equivalent graph topology with based on equivalent graph topology with
independent pathsindependent paths
• Significantly improved accuracy reached Significantly improved accuracy reached within same assumptions as existing workwithin same assumptions as existing work
• Experimentally verified that most of the Experimentally verified that most of the remaining errors are due to these remaining errors are due to these assumptionsassumptions
• They are OK for many circuits, but very bad They are OK for many circuits, but very bad for some!for some!
"A probabilistic approach to clock cycle prediction"
Future workFuture work
• More experiments to validate model More experiments to validate model sensitivity to design options its and sensitivity to design options its and usefulness for different applicationsusefulness for different applications
• Combine model with predicted wire length Combine model with predicted wire length distributionsdistributions
• Try to find mathematical foundations for Try to find mathematical foundations for equivalent topologyequivalent topology
• Try to incorporate local effects and study Try to incorporate local effects and study some alternative topologiessome alternative topologies
"A probabilistic approach to clock cycle prediction"