Ok, you've discovered a couple bugs.
1) Set L2_RESPONSE_LATENCY to be the same as L2_REQUEST_LATENCY
2) In the MESI_SCMP_tiledL2bank_directory-L2cache.sm file, change this
line (#815 i think):
enqueue(L1Network_out, L1Msg) {
To:
enqueue(L1network_out, L1Msg, latency="L2_RESPONSE_LATENCY") {
Let me know if that helps
--Mike
> Hi Niket,
>
> Thanks for your help. I commented out the error message as you
> suggested. Now I can get around the assertion problem, but there is
> still other error: (I am using the FFT benchmark from Splash2, and
> tried to load Ruby alone or with Opal)
> -----------------------------------------------------------------------------------------------------------------
> Ruby: ruby-opal link established. removing timing_model.
> opalinterface: doing notify callback
> Opal: opal-ruby link established.
> OpalInterface: installation successful.
> [0] PC 0x12f2c NPC 0x12f30 ctx 0x86
> [1] PC 0x1039948 NPC 0x103994c ctx 0x0
> [cpu0] v:0x0000000000012f5c p:0x0000000039f22f5c sethi %hi(0x13c00), %g2
> patch PC: 0x103994c 0x1049854
> patch NPC: 0x1039950 0x1049858
> patch PC: 0x12f30 0x12f60
> patch NPC: 0x12f34 0x12f64
> patch NPC: 0xffffffffff3b3aa8 0xff3b3aa8
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:259: *this is [MessageBuffer:
> consumer-yes [PrioHeap: [19497, 12, [RefCnt: [L1Msg:
> Address=[0x762a040, line 0x762a040] RequestType=GETS ResponseType=
> Requestor=L1Cache-0 Sender=Directory--1073753688 Destination=[NetDest
> (3) 0 0 - 0 1 - 0 0 - ] MessageSize=Request_Control DataBlk=]
> Dirty=0 Time=19493 ]]; ], ]] [Queue from port 1 0 0 to PerfectSwitch]
>
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:259: *this is [MessageBuffer:
> consumer-yes [PrioHeap: [19497, 12, [RefCnt: [L1Msg:
> Address=[0x762a040, line 0x762a040] RequestType=GETS ResponseType=
> Requestor=L1Cache-0 Sender=Directory--1073753688 Destination=[NetDest
> (3) 0 0 - 0 1 - 0 0 - ] MessageSize=Request_Control DataBlk=]
> Dirty=0 Time=19493 ]]; ], ]] [Queue from port 1 0 0 to PerfectSwitch]
>
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:260: m_name is [Queue from port 1 0 0
> to PerfectSwitch]
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:260: m_name is [Queue from port 1 0 0
> to PerfectSwitch]
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:261: current_time is 19494
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:261: current_time is 19494
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:262: delta is 1
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:262: delta is 1
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:263: arrival_time is 19495
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:263: arrival_time is 19495
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:264: m_last_arrival_time is 19497
> Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
> int) in buffers/MessageBuffer.C:264: m_last_arrival_time is 19497
> Fatal Error: in fn void MessageBuffer::enqueue(const MsgPtr&, long
> long int) in buffers/MessageBuffer.C:265: FIFO ordering violated
> Fatal Error: in fn void MessageBuffer::enqueue(const MsgPtr&, long
> long int) in buffers/MessageBuffer.C:265: FIFO ordering violated
> *** Simics getting shaky, switching to 'safe' mode.
> *** Simics (main thread) received an abort signal, probably an assertion.
> -------------------------------------------------------------------------------------------------------------------
> Please let me know if you have seen similar problem. I will try other
> network topology to see if that works.
>
> --Calvin
>
> On 3/8/07, Niket Agarwal <niketa@xxxxxxxxxxxxx> wrote:
> > Hi Calvin,
> > I was also trying to run Gems for a CMP setup. I have tried out MOESI_CMP_directory protocol and it works fine.
> >
> > I also got the same problem with MESI_SCMP_tiledL2bank_directory protocol.
> > I looked at the gems-users archive and found out that a similar error was faced by someone for invalid range for type "MachineType".
> > Mike had replied that the solution was to goto MachineType.C in the /generated/<protocol>
> > directory and comment out the line that was giving the error.
> >
> > I tried and it worked.
> >
> > The reason I think is that, all Coherence type messages for this protocol are not defined.
> >
> > Mike might throw some light onto this.
> >
> > Hope this helps..
> >
> > Cheers,
> > Niket.
> _______________________________________________
> 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.
>
|