Hi Ed, I am not quite sure what you are asking.
gem5 serialises all events, just like other discrete event simulators, so concurrent events are by necessity processed one at a time. The selection is based on even priority, and then FIFO. Conceptually all the events that are FIFO happen at the same time, so it would be quite interesting to shuffle them arbitrarily. Andreas From: gem5-users <[email protected]<mailto:[email protected]>> on behalf of Edward Kim <[email protected]<mailto:[email protected]>> Reply-To: gem5 users mailing list <[email protected]<mailto:[email protected]>> Date: Wednesday, 20 April 2016 at 09:25 To: gem5 users mailing list <[email protected]<mailto:[email protected]>> Subject: [gem5-users] "event->process()" in EventQueue::serviceOne() at build/ALPHA/sim/eventq.cc:228 Hi all, Let A be "event->process()" in EventQueue::serviceOne() at build/ALPHA/sim/eventq.cc:228. Let B be "FullO3CPU<Impl>::TickEvent::process()" at build/ALPHA/cpu/o3/cpu.cc:138. Let C be "EventWrapper<PacketQueue, &PacketQueue::processSendEvent>::process at build/ALPHA/sim/eventq.hh:739. If A is executed, either B or C is selected and executed depending on occasions. I'm confused the selection mechanism. Any help would be highly appreciated. Best, --Ed IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
