Hi Ahmed,
did you found a solution for this? I'm having the same error when running a
multithreaded application with the DerivO3CPU x86 model.
Thank you in advance.

Pedro



Em ter., 23 de fev. de 2021 às 13:27, Ahmed F Khawaja via gem5-users <
[email protected]> escreveu:

> Greetings,
>
>  I'm trying to instantiate 2 O3 X86 CPUs to run a 2 thread program written
> using pthreads (create,join calls only). It works fine with a
> TimingSimpleCPU. I'm doing this in SE mode and the program does what it's
> supposed to, but it seems to crash when trying to exit out of the
> thread(s). I get the following error:
>
> gem5.opt: build/X86/cpu/o3/cpu.cc:823: void
> FullO3CPU<Impl>::removeThread(ThreadID) [with Impl = O3CPUImpl; ThreadID =
> short int]: Assertion `commit.rob->isEmpty(tid)' failed.
>
> Some googling shows this error popped up a few months ago as a pthread
> regression in Gem5. I'm inquiring if there is a work around (maybe running
> in FS mode?) or some set of flags/configuration to keep it from happening.
>
> I'm also open to fixing it outright and contributing back the fix if
> someone can set me on a starting path of where to look for the error. From
> the error, it seems an instruction gets stuck in the ROB and the exit
> sequence demands the ROB be empty. Removing the assert leads to an
> instruction time out assert, which means an instruction really is just
> getting stuck in the ROB.
>
> Thanks,
>   Ahmed
> _______________________________________________
> gem5-users mailing list -- [email protected]
> To unsubscribe send an email to [email protected]
> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________
gem5-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to