|
| | SyncSwitch (int num_nodes) |
| |
| | ~SyncSwitch () |
| |
| bool | run (bool same_tick) override |
| | Core method to perform a full dist sync. More...
|
| |
| bool | progress (Tick max_req_tick, Tick next_repeat, ReqType do_ckpt, ReqType do_exit, ReqType do_stop_sync) override |
| | Callback when the receiver thread gets a sync ack message. More...
|
| |
| void | requestCkpt (ReqType) override |
| |
| void | requestExit (ReqType) override |
| |
| void | requestStopSync (ReqType) override |
| |
| void | serialize (CheckpointOut &cp) const override |
| | Serialize an object. More...
|
| |
| void | unserialize (CheckpointIn &cp) override |
| | Unserialize an object. More...
|
| |
| void | init (Tick start, Tick repeat) |
| | Initialize periodic sync params. More...
|
| |
| void | abort () |
| | Abort processing an on-going sync event (in case of an error, e.g. More...
|
| |
| void | drainComplete () |
| |
| | Serializable () |
| |
| virtual | ~Serializable () |
| |
| void | serializeSection (CheckpointOut &cp, const char *name) const |
| | Serialize an object into a new section. More...
|
| |
| void | serializeSection (CheckpointOut &cp, const std::string &name) const |
| |
| void | unserializeSection (CheckpointIn &cp, const char *name) |
| | Unserialize an a child object. More...
|
| |
| void | unserializeSection (CheckpointIn &cp, const std::string &name) |
| |
|
| static const std::string & | currentSection () |
| | Gets the fully-qualified name of the active section. More...
|
| |
| static void | serializeAll (const std::string &cpt_dir) |
| | Serializes all the SimObjects. More...
|
| |
| static void | unserializeGlobals (CheckpointIn &cp) |
| |
| std::mutex | lock |
| | The lock to protect access to the Sync object. More...
|
| |
| std::condition_variable | cv |
| | Condition variable for the simulation thread to wait on until all receiver threads completes the current global synchronisation. More...
|
| |
| unsigned | waitNum |
| | Number of receiver threads that not yet completed the current global synchronisation. More...
|
| |
| bool | doExit |
| | Flag is set if exit is permitted upon sync completion. More...
|
| |
| bool | doCkpt |
| | Flag is set if taking a ckpt is permitted upon sync completion. More...
|
| |
| bool | doStopSync |
| | Flag is set if sync is to stop upon sync completion. More...
|
| |
| Tick | nextRepeat |
| | The repeat value for the next periodic sync. More...
|
| |
| Tick | nextAt |
| | Tick for the next periodic sync (if the event is not scheduled yet) More...
|
| |
| bool | isAbort |
| | Flag is set if the sync is aborted (e.g. More...
|
| |
Definition at line 238 of file dist_iface.hh.
◆ SyncSwitch()
| DistIface::SyncSwitch::SyncSwitch |
( |
int |
num_nodes | ) |
|
◆ ~SyncSwitch()
| DistIface::SyncSwitch::~SyncSwitch |
( |
| ) |
|
|
inline |
◆ progress()
Callback when the receiver thread gets a sync ack message.
- Returns
- false if the receiver thread needs to stop (e.g. simulation is to exit)
Implements DistIface::Sync.
Definition at line 199 of file dist_iface.cc.
References X86ISA::lock.
◆ requestCkpt()
| void DistIface::SyncSwitch::requestCkpt |
( |
ReqType |
| ) |
|
|
inlineoverridevirtual |
◆ requestExit()
| void DistIface::SyncSwitch::requestExit |
( |
ReqType |
| ) |
|
|
inlineoverridevirtual |
◆ requestStopSync()
| void DistIface::SyncSwitch::requestStopSync |
( |
ReqType |
| ) |
|
|
inlineoverridevirtual |
◆ run()
| bool DistIface::SyncSwitch::run |
( |
bool |
same_tick | ) |
|
|
overridevirtual |
◆ serialize()
| void DistIface::SyncSwitch::serialize |
( |
CheckpointOut & |
cp | ) |
const |
|
overridevirtual |
◆ unserialize()
| void DistIface::SyncSwitch::unserialize |
( |
CheckpointIn & |
cp | ) |
|
|
overridevirtual |
◆ numCkptReq
| unsigned DistIface::SyncSwitch::numCkptReq |
|
private |
Counter for recording ckpt requests.
Definition at line 248 of file dist_iface.hh.
◆ numExitReq
| unsigned DistIface::SyncSwitch::numExitReq |
|
private |
Counter for recording exit requests.
Definition at line 244 of file dist_iface.hh.
◆ numNodes
| unsigned DistIface::SyncSwitch::numNodes |
|
private |
Number of connected simulated nodes.
Definition at line 256 of file dist_iface.hh.
◆ numStopSyncReq
| unsigned DistIface::SyncSwitch::numStopSyncReq |
|
private |
Counter for recording stop sync requests.
Definition at line 252 of file dist_iface.hh.
The documentation for this class was generated from the following files: