> It's a flexibility/fear-of-commitment thing... initially I wasn't positive
> which way I would go, and once I decided that
> curTick-as-EventQueue/Manager-field wasn't going to work well (too many
> places where it's pretty awkward to find the object pointer), I figured it
> would still be useful in case we need to use pthread_setspecific/getspecific
> on some platforms (OS X? OpenBSD? Cygwin?).
Makes sense.

> I also kind of like how it indicates that curTick is not a "normal"
> variable... implicitly declaring it as part of TLS in one file without any
> indication at each reference that it's different seems potentially
> confusing.
Good point.

> Why do you say that?  Because you could put the EventQueue pointer in TLS
> too and not do the object-based lookup?  I think it would be useful to check
> that the EventManager queue pointer and the TLS queue pointer are the same.
Sounds good.

>> TLS scares me, but maybe that's unnecessarily. :)
> Why?
Because it's essentially global variable with somewhat complicated
semantics, but if it's hidden, I'm cool.

> I haven't gotten that far yet, but yes, something like the locked external
> queue with async polling was what I was thinking of so far.  I've been
> approaching it more top-down: what should simulate() look like, how do we do
> initialization, etc.

Cool.  I should dig up my code.

> Sure, I've got some time today late morning & early afternoon if you're
> free.
I'm in a meeting that will end in the next 15 mins to half hour.
After that I've got nothing.

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

Reply via email to