Just to add my two cents:

- As far as the memory system goes, I thought the drain protocol took
care of the case where an object thought it was drained but then
wasn't anymore.  For example, if there's a request at the L1 and the
L2 thinks it's drained, then when that request goes from the L1 to the
L2 then the L1 may report that it's drained but the L2 should start
saying that it's not.  It's only when all the objects in the system
simultaneously claim to be drained that it's really drained.

- Ignoring the timing callback in AtomicSimpleCPU does seem a bit like
cheating, but it doesn't seem completely out of the question to me if
none of the other methods pan out.  Just make sure you add a comment
explaining why you're doing that.  Add a warn() message too and I
would sleep easy.

- I'm also confused about why you would have queued messages in
SimpleTimingPort when you're in atomic mode.  Something seems fishy
there.

Thanks for the good work... it'll be great to have sampling finally working.

Steve
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to