-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/1667/#review4011
-----------------------------------------------------------


Hi Nilay,

Thanks for all of this, it's really great to see us making some progress here. 
A concern I have is with the use of __thread and how that effects clang whose 
static analysis tool has found quite a few bugs for us recently and OS X which 
doesn't support TLS (at least until something on OS X implements C++11 thread 
local support). So, I think we need to come up with some strategy to deal with 
this as quite a few people use OS x as their primary development machine for 
gem5 and I don't think we want to weld ourselves to gcc since llvm/clang does 
have some good points.

Thanks,
Ali





src/python/m5/SimObject.py
<http://reviews.gem5.org/r/1667/#comment3859>

    How does this work? I'm not saying it doesn't I just don't understand what 
the proxy is doing in this case? Looking for any object that is a UInt32? Do we 
want to have an specific EventQueueId object?



src/sim/eventq.cc
<http://reviews.gem5.org/r/1667/#comment3860>

    I'm a bit concerned with using __thread since it isn't supported on OS X as 
far as I know. I'd be fine for requiring TLS on a platform that we're using 
multi-threading, but if we're going to go down that route we need to ifdef it 
such that single threaded simulation doesn't use it. The other way would be to 
make _tls-mainEventQueue a #define and have a TLS or 
pthread_getspecfific()/setspecific() version. 


- Ali Saidi


On Feb. 10, 2013, 1:44 p.m., Nilay Vaish wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/1667/
> -----------------------------------------------------------
> 
> (Updated Feb. 10, 2013, 1:44 p.m.)
> 
> 
> Review request for Default.
> 
> 
> Description
> -------
> 
> Changeset 9497:484d33f78ef4
> ---------------------------
> sim: simulate with multiple event queues
> This patch extends the patch Steve posted on the reviewboard (846). The patch
> updated with all the changes that have taken place over last 15 months. Code
> has been added so as actually carry out a quantum-based parallel simulation.
> 
> The patch was tested in two different configurations:
> 1. ruby_network_test.py: in this simulation L1 cache controllers receive
>    requests from the cpu. The requests are replied to immediately without
>    any communication taking place with any other level.
> 2. twosys-tsunami-simple-atomic: this configuration simulates a client-server
>    system which are connected by an ethernet link.
> 
> We still lack the ability to communicate using message buffers or ports. But
> other things like simulation start and end, synchronizing after every quantum
> seem to be working.
> 
> 
> Diffs
> -----
> 
>   src/cpu/base.cc ff4b1bde5f60 
>   src/dev/etherlink.cc ff4b1bde5f60 
>   src/python/m5/SimObject.py ff4b1bde5f60 
>   src/python/m5/event.py ff4b1bde5f60 
>   src/python/m5/main.py ff4b1bde5f60 
>   src/python/swig/core.i ff4b1bde5f60 
>   src/python/swig/event.i ff4b1bde5f60 
>   src/sim/SConscript ff4b1bde5f60 
>   src/sim/core.hh ff4b1bde5f60 
>   src/sim/debug.cc ff4b1bde5f60 
>   src/sim/eventq.hh ff4b1bde5f60 
>   src/sim/eventq.cc ff4b1bde5f60 
>   src/sim/eventq_impl.hh ff4b1bde5f60 
>   src/sim/global_event.hh PRE-CREATION 
>   src/sim/global_event.cc PRE-CREATION 
>   src/sim/serialize.cc ff4b1bde5f60 
>   src/sim/sim_events.hh ff4b1bde5f60 
>   src/sim/sim_events.cc ff4b1bde5f60 
>   src/sim/sim_exit.hh ff4b1bde5f60 
>   src/sim/sim_object.cc ff4b1bde5f60 
>   src/sim/simulate.hh ff4b1bde5f60 
>   src/sim/simulate.cc ff4b1bde5f60 
>   src/sim/stat_control.cc ff4b1bde5f60 
> 
> Diff: http://reviews.gem5.org/r/1667/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Nilay Vaish
> 
>

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to