resess / Slicer4J

Slicer4J is an accurate, low-overhead dynamic slicer for Java programs.
MIT License
39 stars 17 forks source link

python3 run_benchmarks.py does not find javaslicer #22

Closed soneyahossain closed 2 years ago

soneyahossain commented 2 years ago

Hi, when I try to run the benchmark using the python3 run_benchmarks.py command, it does not find the javaslicer inside the benchmark directory. Even though it does not show any error by the slice size is zero for the javaslicer and investigating further inside the result directory I found that this tool is not found. Any idea why that would happen?

Benchmark: javaslicer-bench1-intra-procedural


Original exec time (s): 0.04744410514831543


Running Slicer4J Instrumentation time (s): 0.7002263069152832 Execution time (s): 0.04601740837097168 Slice time (s): 0.9844796657562256 Length of trace (Jimple LoC): 10 Slice size (Java LoC): 6


Running JavaSlicer Instr + exec time (s): 0.005282878875732422 Slice time (s): 0.0013234615325927734 Length of trace (bytecode LoC): 0 Slice size (Java LoC): 0

khaled-e-a commented 2 years ago

Thank you for pointing this out. Javaslicer has to be separately installed from it's repo https://github.com/backes/javaslicer Then it its directory should be pointed to from the run_benchmarks script. I pushed the latest commit which stops the script if javaslicer is not installed.