|
| 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: