[LLVMdev] Google Summer of Code Idea
richard.warburton at gmail.com
Mon Mar 3 02:55:12 PST 2008
> I've got a BDD based version of andersen's around already (uncommitted).
> It's slower in time (by a factor of 8 or so), but very slightly (1-2
> megabytes of memory) more memory efficient on some cases. Nowadays,
> the bitmap version is actually more memory efficient than the BDD
> version, even if you turn off BDD caching, etc.
> The thing you have to understand is that these context sensitive BDD
> algorithms work okay on java, but fall down pretty badly on C/C++,
> because it is a much bigger problem. Whaley's is just brute force,
> and Zhu's is pretty darn complex.
I was interested to see whether Whaley's algorithm really works
particularly, given its simplicity and the claims made in the papers.
> Both are amenable to the same style of offline variable optimizations
> that Hardekopf, et al (Ben and a friend have been helping out with
> implementation of andersen's in LLVM), and that may actually make them
> usable for real world programs.
Are you referring to both the PLDI and the SAS papers?
> > 4. Is anyone willing to mentor this project?
> I would.
> I think you will be surprised how badly these algorithms work on even
> moderate sized C++ programs :(
I'm slightly confused here as to whether you mean in terms of
precision of analysis, or compute time taken by running the algorithm.
More information about the llvm-dev