-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/3025/
-----------------------------------------------------------
Review request for Default.
Repository: gem5
Description
-------
changesets:
11016:4e5fcc7544ad "dev: enable support for pd-gem5 runs"
This patch modifies existing gem5 interface modules to enable
parallel/distributed simulation of a cluster using multiple gem5 processes.
Each separate gem5 process can communicate/synchronized with another gem5
process using ethertap interface.
First, a client/server like socket connection is introduced by modifying
socket.cc/hh (ListenSocket for server connection, ConnectSocket for client
connection). We utilize these sockets in ethertap.cc/hh to seamlessly
interconnect several gem5 processes together. ListenSocket objects are
instantioated for tap interfaces of the gem5 process which aims to
simulate a switch box. ConnectSocket is used for tap interface of
fullsystem
nodes.
gem5 processes are synchronized using fix quantum synchronization approach.
Sync messages are sent/received through the same socket connection.
At the start of simulation, a sendSync event is scheduled at each ethertap
interface of switch process, while a recvSync event is scheduled at
ethertap
interface of full-system nodes. When switch sends out a sync message to the
peer node ethertap interface, it will schedule a recvSync for that ethertap
interface at curTick() + syncQuantum. On the other side, ehtertap interface
of nodes will schedule a sendSync event at curTick() + syncQuantum on the
reception of a sync message. This loop continues and synchronous simulation
goes on.
Diffs
-----
src/base/socket.hh f35e317d2e1e
src/base/socket.cc f35e317d2e1e
src/dev/Ethernet.py f35e317d2e1e
src/dev/SConscript f35e317d2e1e
src/dev/ethertap.hh f35e317d2e1e
src/dev/ethertap.cc f35e317d2e1e
src/sim/pseudo_inst.cc f35e317d2e1e
Diff: http://reviews.gem5.org/r/3025/diff/
Testing
-------
Thanks,
Mohammad Alian
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev