Thanks for the response. To resolve reflection I am trying the dynamic option for the chord.reflect.kind property. After setting the arguments for DaCapo correctly (chord.args.0=-s large -n 1 avrora) and the main class of the benchmark, I am getting the following chord.util.ReadException. Could you please provide some suggestions on the same ?
chord-src-2.0]$ ant -Dchord.work.dir=/home/sengupta/RunChord/out/ -Dchord.props.file=/home/sengupta/staticrace/chord-src-2.0/chord.properties -Dchord.run.analyses=datarace-java run
Buildfile: build.xml
run:
[java] Chord run initiated at: Sep 30, 2013 11:33:35 AM
[java] ENTER: datarace-java at Mon Sep 30 11:33:35 EDT 2013
[java] ENTER: P at Mon Sep 30 11:33:35 EDT 2013
[java] ENTER: M at Mon Sep 30 11:33:35 EDT 2013
[java] ENTER: RTA
[java] INFO: BasicDynamicAnalysis: Starting Run ID 0 in traced regular-file online-instrumentation non-JVMTI mode.
[java] Starting command: 'java -ea -Xmx1024m -Xverify:none -Dchord.classic=true -Dchord.use.jvmti=false -Dchord.run.analyses=datarace-java -Dchord.src.path=/home/sengupta/RunChord/dacapo-9.12-bach-src/benchmarks/bms/pmd/src/org/dacapo/harness -Dchord.main.dir=/home/sengupta/staticrace/chord-src-2.0 -Dchord.props.file=/home/sengupta/staticrace/chord-src-2.0/chord.properties -Dchord.max.heap=2g -Dchord.work.dir=/home/sengupta/RunChord/out -Dchord.args.0=-s large -n 1 avrora -Dchord.dlog.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.ext.dlog.analysis.path= -Dchord.use.buddy=false -Dchord.std.java.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.class.path=./dacapo-9.12-bach -Dchord.ext.java.analysis.path= -Dchord.main.class=Harness -Dchord.reflect.kind=dynamic -Dchord.jvmargs=-ea -Xmx2g -Xss32m -Dchord.java.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.max.stack=32m -Dchord.std.dlog.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -cp ./dacapo-9.12-bach -javaagent:/home/sengupta/staticrace/chord-src-2.0/chord.jar=instrumentor_class=chord/program/reflect/ReflectInstrumentor=event_handler_args=trace_block_size@4096@trace_file@/home/sengupta/RunChord/out/chord_output/trace_full_ver0.txt=event_handler_class=chord.program.reflect.ReflectEventHandler=use_jvmti=false Harness -s large -n 1 avrora '
[java] WARN: Instrumentor: Ignoring path element /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/sunrsasign.jar from boot classpath
[java] WARN: Instrumentor: Ignoring path element /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/netx.jar from boot classpath
[java] WARN: Instrumentor: Ignoring path element /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/plugin.jar from boot classpath
[java] WARN: Instrumentor: Ignoring path element /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/modules/jdk.boot.jar from boot classpath
[java] ===== DaCapo unknown avrora starting =====
[java] ===== DaCapo unknown avrora PASSED in 22344 msec =====
[java] Finished command: 'java -ea -Xmx1024m -Xverify:none -Dchord.classic=true -Dchord.use.jvmti=false -Dchord.run.analyses=datarace-java -Dchord.src.path=/home/sengupta/RunChord/dacapo-9.12-bach-src/benchmarks/bms/pmd/src/org/dacapo/harness -Dchord.main.dir=/home/sengupta/staticrace/chord-src-2.0 -Dchord.props.file=/home/sengupta/staticrace/chord-src-2.0/chord.properties -Dchord.max.heap=2g -Dchord.work.dir=/home/sengupta/RunChord/out -Dchord.args.0=-s large -n 1 avrora -Dchord.dlog.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.ext.dlog.analysis.path= -Dchord.use.buddy=false -Dchord.std.java.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.class.path=./dacapo-9.12-bach -Dchord.ext.java.analysis.path= -Dchord.main.class=Harness -Dchord.reflect.kind=dynamic -Dchord.jvmargs=-ea -Xmx2g -Xss32m -Dchord.java.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -Dchord.max.stack=32m -Dchord.std.dlog.analysis.path=/home/sengupta/staticrace/chord-src-2.0/chord.jar -cp ./dacapo-9.12-bach -javaagent:/home/sengupta/staticrace/chord-src-2.0/chord.jar=instrumentor_class=chord/program/reflect/ReflectInstrumentor=event_handler_args=trace_block_size@4096@trace_file@/home/sengupta/RunChord/out/chord_output/trace_full_ver0.txt=event_handler_class=chord.program.reflect.ReflectEventHandler=use_jvmti=false Harness -s large -n 1 avrora '
[java] chord.util.ReadException
[java] at chord.util.ByteBufferedFile.getByte(ByteBufferedFile.java:99)
[java] at chord.util.ByteBufferedFile.getString(ByteBufferedFile.java:165)
[java] at chord.program.reflect.DynamicReflectResolver.handleEvent(DynamicReflectResolver.java:91)
[java] at chord.project.analyses.BasicDynamicAnalysis.processTrace(BasicDynamicAnalysis.java:524)
[java] at chord.project.analyses.BasicDynamicAnalysis$1.run(BasicDynamicAnalysis.java:379)
[java] at chord.util.Executor.execute(Executor.java:56)
[java] at chord.project.analyses.BasicDynamicAnalysis.run(BasicDynamicAnalysis.java:400)
[java] at chord.program.RTA.build(RTA.java:205)
[java] at chord.program.RTA.getMethods(RTA.java:168)
[java] at chord.program.Program.buildMethods(Program.java:179)
[java] at chord.program.Program.getMethod(Program.java:449)
[java] at chord.program.Program.getMethod(Program.java:440)
[java] at chord.program.Program.getMainMethod(Program.java:458)
[java] at chord.analyses.method.DomM.init(DomM.java:44)
[java] at chord.project.analyses.ProgramDom.run(ProgramDom.java:49)
[java] at chord.project.ClassicProject.runTask(ClassicProject.java:416)
[java] at chord.project.ClassicProject.runTask(ClassicProject.java:413)
[java] at chord.project.ClassicProject.runTask(ClassicProject.java:413)
[java] at chord.project.ClassicProject.runTask(ClassicProject.java:437)
[java] at chord.project.ClassicProject.run(ClassicProject.java:141)
[java] at chord.project.Main.run(Main.java:88)
[java] at chord.project.Main.main(Main.java:55)
Thanks,
Aritra.