Hi,
I am trying to run LogTM in the GEMS 2.0. I compiled MESI_CMP_filter_directory
protocol with the following parameters in $gems_root/ruby/config/rubyconfig.defaults.
PROFILE_EXCEPTIONS: false
PROFILE_XACT: true
PROFILE_NONXACT: false
XACT_DEBUG: true
XACT_DEBUG_LEVEL: 1
XACT_MEMORY: true // set to true for TM protocols. set
it HERE for lazy systems to register the proper SIMICS interfaces
XACT_ENABLE_TOURMALINE: false // perfect memory system
XACT_NUM_CURRENT: 0 // must be 0
XACT_LAST_UPDATE: 0 // must be 0
XACT_ISOLATION_CHECK: false // Checks whether each memory
access preserves transaction isolation
After compilation when I try to run, I get the following
error after ruby initialization, which vanishes if I set XACT_MEMORY to false:
Ruby initialization complete
### Executing "magic-break-enable"
### Executing "continue"
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:721: m_id is 0
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:721: m_id is 0
Warning: in fn TransitionResult L1Cache_Controller::doTransitionWorker(L1Cache_Event,
L1Cache_State, L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:722: m_version is 0
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:722: m_version is 0
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:723:
g_eventQueue_ptr->getTime() is 177
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:723:
g_eventQueue_ptr->getTime() is 177
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:724:
addr is [0x307c380, line 0x307c380]
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:724: addr is
[0x307c380, line 0x307c380]
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:725: event is Ack_all
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:725: event is Ack_all
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:726: state is IS
Warning: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:726: state is IS
Fatal Error: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in
generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:727: Invalid
transition
Fatal Error: in fn TransitionResult
L1Cache_Controller::doTransitionWorker(L1Cache_Event, L1Cache_State,
L1Cache_State&, const Address&) in generated/MESI_CMP_filter_directory/L1Cache_Transitions.C:727:
Invalid transition
*** Simics getting shaky, switching to 'safe' mode.
*** Simics (main thread) received an abort signal,
probably an assertion.
Starting command line. (May have skipped commands in script
files.)
I have no idea, why this is happening. Please someone
advise.
Thanks,
Arnab