I found this article very interesting. First because the project
was
trying to concentrate this same subject of what we were calling
hierarchical paths or something like that. When we tried to come
up
with a storage format we decided to make a tree interface that could
contain the path information, but as was pointed out in the path this
method stores O(n) of the trace size which is too large. The
DAG
described in this paper stores in a much smaller space. I was
also
really impressed by the running times of the WPP formation described
in
Table 1.
I still have a number of questions relating to this work that hopefully
the project will be able to answer. Also he talks about the
performance, but he never tried to actually optimize the code based
on
the paths that were found. Is there a real performance advantage
by
using the paths discovered by these algorithms that could justify the
cost of compile time. Also how much do these hot paths differ
from some
of the other techniques that try to find paths in a program.