[Soot-list] Spark generating rta call-graph: java.lang.OutOfMemoryError: GC overhead limit exceeded

Eric Bodden eric.bodden at uni-paderborn.de
Wed Sep 19 08:11:58 EDT 2018


Hi Dario.

With the debugger i see that soot in generating call graph load all java method for ArrayList.

That is the standard behaviour. Do you wish to exclude JDK classes from the analysis? If so, please try the option -no-bodies-for-excluded

The program run for 1 hour and than give me that error. I run it with java vm option -Xmx10g.
I try to delete the two methods "realFailureTest" and "realPasstest" and all it's ok. I try to generate the spark call-graph with "rta" option false and "on-fly-cg" option true and all it's ok. Why?!

I also noticed that you had  "on-fly-cg” set to false. This usually never makes sense. In this case, Soot first tries to construct an entire CHA-based call-graph for your entire code, and then runs its pointer-analysis on top of that callgraph. This is both less precise and less efficient than the on-the-fly mode. Hence  "on-fly-cg” should always be set to true.

Cheers
Eric
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20180919/c98d9186/attachment-0001.html>


More information about the Soot-list mailing list