JavaScript Analysis - Correlation Tracking for Points-To Analysis of JavaScript


Full Experimental Results for Correlation Tracking Paper

This table shows detailed results of the experimental evaluation for our ECOOP 2012 paper, "Correlation Tracking for Points-To Analysis of JavaScript".

Every row corresponds to one benchmark, with the benchmark name given in the first column. Every name, except for benchmarks that simply consist of dummy pages loading the corresponding framework, links to the page we took the benchmark from.

The following column gives the number of non-blank, non-comment lines of source code in the benchmark (in addition to the framework code).

The following four column groups give the experimental results under the four configurations discussed in the paper. Every benchmark was evaluated under every configuration in terms of analysis time (in seconds; '*' means timeout after ten minutes), number of reachable functions, and number of highly polymorphic call sites (i.e., call sites for which the analysis determines more than five possible call targets).

BenchmarkLOCBaseline-Baseline+Correlations-Correlations+Remarks
analysis
time
live
functions
polymorphic
callsites
analysis
time
live
functions
polymorphic
callsites
analysis
time
live
functions
polymorphic
callsites
analysis
time
live
functions
polymorphic
callsites
dojo10*368245*3662322.68706.5991just loads Dojo
dojo210*368242*3662252.810407.11161
dojo330*369241*3662253.68906.7991
dojo420*368240*36622530.41491*17211outlier
dojo540*368237*3662253.28906.7991
dojo6100*376232*3762253.29007.71001
jquery13*226244*22824977.21683*1989
jquery24*226244*22824979.91683*1989
jquery35*226244*22824980.21683*1989
jquery43*226244*22824977.61683*1989
jquery53*226244*22824978.41683*1989
jquery64*226244*22824977.71683*1989
mootools100.6680*263312.9680*780just loads MooTools
mootools2300.6680*263282.9680*780
mootools3300.7680*262323.2680*780
mootools4100.9690*263283.1690*780
mootools5900.9690*216283.2690*790
mootools6200.6680*263283.1680*780
prototype10*310164*3121664.213404.01410just loads Prototype.js
prototype220*310164*3121665.113404.21410
prototype350*312167*3131663.514104.91471
prototype430*311164*3121664.413905.91460
prototype515*310164*3121664.613404.01410
prototype615*313164*3161664.513803.81450
yui14*6929*69351.74801.8490
yui225*7229*72352.15101.8520
yui330*7029*70341.84901.8500
yui410*7629*76342.15502.2560
yui510*7829*78352.45902.1600
yui6155*11129*111342.89302.7940