In this release, it is possible to measure both
"reuse distance" and
"time distance" using gcc-slo by setting the
environment variable
"RDLIB_MEASURE_TRUE_REUSE_DISTANCE". In previous
releases, only the
"time distance" could be measured.
In comparison to RDVIS, SLO does an
inter-procedural analysis. As a result, it can
pinpoint the source code where a refactoring must
be performed to increase temporal locality. Using
SLO, 5 of the SPEC2000 programs could be optimized
in a platform-independent way. As a result of the
reduced number of cache misses, these programs run
two times faster on average. In comparison, with
RDVIS, only 2 programs in SPEC2000 were found
where locality could be significantly optimized.
Improved cluster window interaction: allows selection of individual reference pairs, allows the height of the basic block vector to be proportional to its weight, and has a number of different sort options for the basic block vectors.
This release adds an option to export reuse distance histograms to a
PNG file with several options for controlling resolution, etc., fixes
for several minor bugs, and a lot of internal refactoring to make
modifications of the reuse analyses easier in the future.