Hello:
We are simulating a CMP system with 4 to 16 processors using
Ruby. When we compare the number of instructions executed with the
number of ruby cycles we get strange results, the number of
instructions executed by a processor is higher than the number of
cycles. Some results are shown bellow:
Ruby_cycles: 888027500
instruction_executed: 4532908429 [ 807615319 1253256500 1203266231
1268770379 ]
cycles_per_instruction: 0.783627 [ 1.09957 0.708576 0.738014 0.699912 ]
This is for 4 processors. As we can see the number of
cycles_per_instruction is less than 1 for three of the processors and
this not logical. Some months ago a similar question was posted and
this was the reply, I quote:
"Ruby_cycles measures simulated time.
The value of Ruby_cycles is the count of the number of time the
Ruby event queue is invoked in the course of
simulation. The Ruby event queue is invoked every SIMICS_RUBY_MULTIPLIER
cycles (eg. every 2 cycles, see ruby/config/rubyconfig.defaults)
from the Simics event queue associated with Simics processor
zero. Each "Ruby cycle" is one simulated cycle of the memory
system--analogous to one cycle of a logical "memory" clock. Ruby_cycles
are *not* determined by the number of instructions executed on
any processor."
We have the SIMICS_RUBY_MULTIPLIER = 2 in our simulations also,
does this mean that the real number of cycles we have to consider is
2*Ruby_cycles? This would mean that the cycles_per_instruction
parameter should also be multiplied by two if we want to get the number
of actual cycles per instruction and not the number of ruby cycles per
instruction.
Thanks in Advance
Marco
_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users