Hi,
I am trying to run transactional memory benchmark 'conswtch' provided in
gems2.1. I can see the code running transaction generating statements. But
in the final stats it shows everything as 0.
transactions_started: 0 [ 0 0 0 0 ]
transactions_ended: 0 [ 0 0 0 0 ]
instructions_per_transaction: 0 [ 0 0 0 0 ]
cycles_per_transaction: 0 [ 0 0 0 0 ]
misses_per_transaction: 0 [ 0 0 0 0 ]
Then I tried to find out in the reverse direction i.e. how these counters
are getting updated. e.g. transactions_started variable is updated through
function 'magic_instruction_callback' which is defined in
/gems2.1/ruby/simics/commands.C. But I found that during the run period,
this function is never executed. At the same time I am seeing macros like
BEGIN_WORKLOAD_TRANSACTION
BEGIN_CLOSED_TRANSACTION(0)
being called during benchmark run. What could go wrong in the setup which
is not able to create actual transaction?
Thanks,
Anup
|