rohanpadhye / JQF

JQF + Zest: Coverage-guided semantic fuzzing for Java.
BSD 2-Clause "Simplified" License
669 stars 114 forks source link

Significant Differences in Memory Usage between JQF-1.9 and JQF-2.0 #243

Open dingyangny opened 1 year ago

dingyangny commented 1 year ago

Hello author! I used the command line to test the methods in the "/examples" directory, with the test class being edu.berkeley.cs.jqf.examples.bcel.ParserTest and the test method being testWithGenerator. The command line is as follows:

 mvn jqf:fuzz -Dclass=edu.berkeley.cs.jqf.examples.bcel.ParserTest -Dmethod=testWithGenerator -Dtime=24h

However, I found that there are significant differences in memory usage between running with jqf-1.9 and jqf-2.0. The memory usage of jqf-1.9 is approximately 1GB, while the memory usage of jqf-2.0 is mostly above 5GB, even reaching over 8GB.

I want to know why this difference occurs and whether there is a way to reduce the memory usage of jqf-2.0, as I need to conduct multiple sets of tests simultaneously on one machine.

rohanpadhye commented 1 year ago

Hi @YangDingNY. This is a very interesting observation. Thanks for reporting it!

Let me tag @aoli-al who has done some memory profiling in the past. Leo, have you noticed this difference before or have any idea how to discover the source of the issue?