Results for tests on OpenAnalysis's implementation of the FIAlias algorithm
What you can view
Graph
Self explanatory.
dat
The numbers fed to GNUPlot to produce the graph.
log
The log file produced by the testing script.
oa_build.log
Build log for OpenAnalysis. This specifies what CXXFLAGS (what level of optimization, whether profiling was turned on, etc.) OA was compiled with.
USEOA_ROSE_build.log
Like oa_build.log but applies to the UseOA-ROSE project.
cmd.sh
The command file passed to the testing script.
gprof.tgz
Archive of profiles of the run produced by gprof.
What's being measured in each graph (explanation of labels in first col)
Memory usage
Record of the peak memory usage for OATest when its passed --oa-FIAliasAliasMap.
Time: Full Analysis
Record of the time required to run OATest when passed --oa-FIAliasAliasMap.
Time: No Analysis
Timed benchmark of how long it takes OATest to load the program but skip the
analysis. The majority of this time (I'm guessing more than 99%) is spent
generating the AST with ROSE, so this can this can be thought of as the "how
much overhead does ROSE give us" graph.
Time: Just FIAlias algorithm
Record of the time it takes OATest to run the FIAlias algorithm on some test
case but not encode the results into an inter procedural alias map.
Profile: Full Analysis
gprof produced profiles of runs of OATest when passed --oa-FIAliasAliasMap.
How a program is being sliced and stitched
The program's are being sliced into approximate eighths. It's approximate
because I don't want to start splitting up files. Each test case is generated
by taking some subset of the programs files and then stitching them together
(using the Unix cat command) into one giant lump o' C.
Due to oddities with include dependencies (these programs weren't made to
be compiled in one step as one file) I can't get the 8/8ths slice of SMG
to work or the 7/8ths and 8/8ths slice of IRS.
How LOC are being calculated
Lines of code is calculated by taking the source file to run some test on,
passing it through the C preprocessor (cpp) and then passing it to
SLOCCount.