Beruflich Dokumente
Kultur Dokumente
ABSTRACT
Runtime hot method detection being an important dynamic compiler optimization
parameter, has challenged researchers to explore and refine techniques to address
the problem of expensive profiling overhead incurred during the process. Although
the recent trend has been toward the application of machine learning heuristics in
compiler optimization, its role in identification and prediction of hot methods has
been ignored. The aim of this work is to develop a model using the machine
learning algorithm, the Support Vector Machine (SVM) to identify and predict hot
methods in a given program, to which the best set of optimizations could be
applied. When trained with ten static program features, the derived model predicts
hot methods with an appreciable 62.57% accuracy.
authors have used the PCA to reduce the feature set. Figure 3: Optimal hyperplane and margin of
A linear regression model and an artificial neural separation
network model are used for building the prediction
model which is shown to work better than the non- 4 HOT METHOD PREDICTION
feature-based predictors.
In their work Fursin et al. [14] have used This section briefly describes how machine
Prediction Accuracy %
100
and prediction. UTDSP is a C benchmark and SPEC
80
CPU2000 INT has C and C++ benchmarks.
Evaluation of the system is based on only the C 60
2
p
cf
x
er
c
e
f
ol
ip
gc
r te
zi
ag
m
rs
tw
bz
g
6.
1.
vo
pa
er
4.
0.
6.
17
18
Av
16
5.
7.
30
25
25
19
5.3 Tools and platform SPEC CPU2000 INT
The system is implemented in the Low Level
Virtual Machine (LLVM) version 1.6 [6]. LLVM is Figure 7: Total prediction accuracy on the SPEC
an open source compiler infrastructure that supports CPU2000 INT benchmark
compile time, link time, run time and idle time
optimizations. The results are evaluated on an Intel The total method prediction accuracy on the
(R) Pentium (R) D with 2.80 GHz and 480MB of SPEC CPU2000 INT and UTDSP benchmark suites
RAM running Fedora Core 4. This system uses the is shown in Fig. 7 and 9. The total method prediction
libSVM tool [7]. It is a simple library for Support accuracy for all C programs on the SPEC CPU2000
Vector Machines written in C. INT varies from 36 % to 100 % with an average of
68.43%, 71.14% and 71.14% for the three hot
method thresholds respectively. This averages to
Hot Method Prediction Accuracy
70.24%. The average prediction accuracies obtained
Hot Method Thresholds 50% 40% 30% on the UTDSP benchmark suite are 69%, 71% and
120 58% respectively for 50%, 40% and 30% hot method
thresholds. This averages to 66%. Overall the system
Prediction Accuracy %
100
0
Optimizers depend on profile information to
identify the hot methods of program segments. The
2
p
cf
x
er
c
e
f
ol
ip
gc
rte
zi
ag
m
tw
bz
g
6.
1.
vo
pa
er
4.
0.
6.
17
18
Av
16
5.
7.
30
25
80
60
40
20
t
ir
c
2
ff t
m
em
m
s
fi r
ss
eg
ge
m
iir
ee
ct
ng
ul
tra
lp
l li
sf
72
nr
pc
te
ra
e
m
tr e
ra
jp
sL
lm
Fu
od
ec
pr
t
de
og
ad
la
e
cu
dy
m
m
sp
Av
_
st
co
2.
ar
ge
en
hi
V3
M
ed
W
1.
1.
72
72
UTDSP benchmark
G
80
60
40
20
e
ff t
fir
i ir
ng
eg
ct
t
c
ir
m
rm
em
ee
llis
m
ra
ul
ss
ag
lp
72
sf
te
pc
ra
m
jp
Fu
tn
L
e
tre
lm
er
ec
od
e
G
s
pr
ad
og
la
_d
dy
cu
Av
sp
m
m
st
ge
en
ar
2.
co
hi
M
V3
ed
W
1.
1.
72
72
UTDSP benchmark
G