Re: [Gems-users] Fatal Error: in fn virtual void Sequencer::wakeup() in system/Sequencer.C:112: Aborting


Date: Sun, 10 Dec 2006 19:41:10 -0600
From: "Mark Gebhart" <mgebhart@xxxxxxxxxxxxx>
Subject: Re: [Gems-users] Fatal Error: in fn virtual void Sequencer::wakeup() in system/Sequencer.C:112: Aborting
Hi,

Thanks for the advice, I set the deadlock threshold to 20 million and now I
no longer get the error in the Sequencer code.

However, now I see the following fatal errors in
simics/SimicsProcessor.C:365

Warning: in fn void RegisterState::enableInterrupts(int) in
log_tm/RegisterStateWindowed.C:336: "WARNING: in enable interrupts" is
WARNING: in enable interrupts
Warning: in fn void RegisterState::enableInterrupts(int) in
log_tm/RegisterStateWindowed.C:336: "WARNING: in enable interrupts" is
WARNING: in enable interrupts
Warning: in fn void RegisterState::enableInterrupts(int) in
log_tm/RegisterStateWindowed.C:337: pil is 0
Warning: in fn void RegisterState::enableInterrupts(int) in
log_tm/RegisterStateWindowed.C:337: pil is 0
Fatal Error: in fn MemoryTransactionResult
SimicsProcessor::makeRequest(memory_transaction_t*) in
simics/SimicsProcessor.C:365: Error: Simics get unstalled without ruby
asking?
Fatal Error: in fn MemoryTransactionResult
SimicsProcessor::makeRequest(memory_transaction_t*) in
simics/SimicsProcessor.C:365: Error: Simics get unstalled without ruby
asking?


Thanks for any help anyone can provide,

Mark

-----Original Message-----
From: gems-users-bounces@xxxxxxxxxxx [mailto:gems-users-bounces@xxxxxxxxxxx]
On Behalf Of Jayaram Bobba
Sent: Sunday, December 10, 2006 4:00 PM
To: Gems Users
Subject: Re: [Gems-users] Fatal Error: in fn virtual void
Sequencer::wakeup() in system/Sequencer.C:112: Aborting

Mark,

You might have to increase the g_DEADLOCK_THRESHOLD to a larger value. 
It is possible that the LD_XACT is stalled on a long running
transaction. Try 'ruby0.setparam g_DEADLOCK_THRESHOLD 20000000' before 
you start the simulation...

Jayaram

Mark Gebhart wrote:
>
> Hi,
>
>  
>
> I am trying to run a LogTM program using Simics 3.0.22 and GEMS 1.3 
> and the abisko-common target script with Solaris 10.  I have tried 
> both MOESI_SMP_LogTM_directory and MESI_SMP_LogTM_directory.  Things 
> work fine with 1 thread but as soon as I go to 2 threads I get the 
> following warnings followed by a fatal error:
>
>  
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:103: Possible Deadlock detected
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:103: Possible Deadlock detected
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:104: request is [CacheMsg: Address=[0xed2202c, line 
> 0xed22000] Type=LD_XACT ProgramCounter=[0xff237c74, line 0xff237c40] 
> AccessMode=UserMode Size=2 Prefetch=No Version=0 Aborted=0 Time=34944882 ]
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:104: request is [CacheMsg: Address=[0xed2202c, line 
> 0xed22000] Type=LD_XACT ProgramCounter=[0xff237c74, line 0xff237c40] 
> AccessMode=UserMode Size=2 Prefetch=No Version=0 Aborted=0 Time=34944882 ]
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:105: m_chip_ptr->getID() is 7
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:105: m_chip_ptr->getID() is 7
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:106: m_version is 0
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:106: m_version is 0
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:107: keys.size() is 1
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:107: keys.size() is 1
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:108: current_time is 34995936
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:108: current_time is 34995936
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:109: request.getTime() is 34944882
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:109: request.getTime() is 34944882
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:110: current_time - request.getTime() is 51054
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:110: current_time - request.getTime() is 51054
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:111: *m_readRequestTable_ptr is [ [0xed22000, line 
> 0xed22000]=[CacheMsg: Address=[0xed2202c, line 0xed22000] Type=LD_XACT 
> ProgramCounter=[0xff237c74, line 0xff237c40] AccessMode=UserMode 
> Size=2 Prefetch=No Version=0 Aborted=0 Time=34944882 ] ]
>
> Warning: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:111: *m_readRequestTable_ptr is [ [0xed22000, line 
> 0xed22000]=[CacheMsg: Address=[0xed2202c, line 0xed22000] Type=LD_XACT 
> ProgramCounter=[0xff237c74, line 0xff237c40] AccessMode=UserMode 
> Size=2 Prefetch=No Version=0 Aborted=0 Time=34944882 ] ]
>
> Fatal Error: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:112: Aborting
>
> Fatal Error: in fn virtual void Sequencer::wakeup() in 
> system/Sequencer.C:112: Aborting
>
> Abort (SIGABRT) in main thread
>
> The simulation state has been corrupted. Simulation cannot continue.
>
> Please restart Simics.
>
>  
>
> What can I do to prevent this deadlock from occurring?  My program 
> consists of a main loop with a BEGIN_TRANSACATION(0) followed by a 
> call to a work function followed by an COMMIT_TRANSACTION(0).
>
>  
>
> Any advice would be greatly appreciated.
>
>  
>
> Thanks,
>
> Mark
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> Use Google to search the GEMS Users mailing list by adding
"site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.
>
>   

_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use Google to search the GEMS Users mailing list by adding
"site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.

[← Prev in Thread] Current Thread [Next in Thread→]