Hi
Am running the multiprocessor microbenchmark with ruby and opal . I am
running the executable "parallel 4 2000000" where processors = 4 and
iterations = 2000000. I have set a printf statement inside the parallel.c
source code which prints the iteration number. But when the benchmark is
run with ruby and opal (also tried with ruby an opal alone) they execution
stops once ruby is loaded.
But when I run the benchmark executable without ruby and opal, the
benchmark runs through the entire number of iterations.
I wil paste the script I use below. The checkpoint used is a 4 CPU machine.
Opal is configured as a 4 thread SMT machine.
magic-break-enable
read-configuration
"/scratch/tianwu/suhail/simics_space/gems-2.1/simics_3_workspace/multi4updated.chk"
con0.input "psrset -c 0 \n"
con0.input "psrset -c 1 \n"
con0.input "psrset -c 2 \n"
con0.input "psrset -c 3 \n"
con0.input "/host/benchmarks/multiprocessor/parallel 4 100000 \n"
c
cpu0.step-break 2000000000000000
istc-disable
dstc-disable
stc-status
magic-break-disable
conf.sim.cpu_switch_time = 1
magic-break-enable
c
cpu0.step-break 100000
instruction-fetch-mode instruction-fetch-trace
instruction-fetch-mode
load-module ruby
load-module opal
ruby0.setparam g_NUM_SMT_THREADS 4
ruby0.setparam g_PROCS_PER_CHIP 1
ruby0.setparam g_NUM_PROCESSORS 1
ruby0.init
opal0.init
/scratch/tianwu/suhail/simics_space/gems-2.1/opal/config/config.defaults
c
cpu0.step-break 100000
opal0.sim-start multiproc.opal
opal0.sim-step 10000
#cpu0.step-break 10000
c 10000
opal0.listparam
opal0.stats
opal0.sim-stop
ruby0.dump-short-stats ./multi_short_ruby.txt
#ruby0.dump-stats ./multi_ruby_stat.txt
Let me know what mistake i am committing.
Suhail
|