SST 16.1.0
Structural Simulation Toolkit
SST::InteractiveConsole Class Referenceabstract
Inheritance diagram for SST::InteractiveConsole:
SST::IMPL::Interactive::DebugConsole

Public Types

enum  ICretcode { DONE = -1 , SUMMARY = -2 }
 Interactive Console execute return codes: Positive number is thread ID to switch to, negative is other state.

Public Member Functions

 SST_ELI_DECLARE_INFO_EXTERN (ELI::ProvidesParams) InteractiveConsole()=default
 Create a new checkpoint object for the simulation core to initiate checkpoints.
virtual int execute (const std::string &msg)=0
 Called by TimeVortex to trigger checkpoint on simulation clock interval - not used in parallel simulation.
virtual void summary ()=0
 Called by SyncManager to get summary info for each thread.

Protected Member Functions

UnitAlgebra getCoreTimeBase () const
 Get the core timebase.
SimTime_t getCurrentSimCycle () const
 Return the current simulation time as a cycle count.
UnitAlgebra getElapsedSimTime () const
 Return the elapsed simulation time as a time.
SimTime_t getEndSimCycle () const
 Return the end simulation time as a cycle count.
UnitAlgebra getEndSimTime () const
 Return the end simulation time as a time.
RankInfo getRank () const
 Get this instance's parallel rank.
RankInfo getNumRanks () const
 Get the number of parallel ranks in the simulation.
Output & getSimulationOutput () const
 Return the base simulation Output class instance.
uint64_t getTimeVortexMaxDepth () const
 Return the max depth of the TimeVortex.
uint64_t getSyncQueueDataSize () const
 Return the size of the SyncQueue - per-rank.
void getMemPoolUsage (int64_t &bytes, int64_t &active_entries)
 Return MemPool usage information - per-rank.
TimeConverter getTimeConverter (const std::string &time)
 Get a TimeConverter.
void getComponentList (std::vector< std::pair< std::string, SST::Component * > > &vec)
 Get the list of Components.
void simulationRun (SimTime_t time)
 Runs the simulation the specified number of core time base units.
void schedule_interactive (SimTime_t time_offset, const std::string &msg)
 Schedules the action for execution at the current simulation time plus time_offset.
SST::Core::Serialization::ObjectMap * getComponentObjectMap ()
const SST::ComponentInfoMap & getComponentInfoMap ()
void simulationShutdown ()

Member Function Documentation

◆ execute()

virtual int SST::InteractiveConsole::execute ( const std::string & msg)
pure virtual

Called by TimeVortex to trigger checkpoint on simulation clock interval - not used in parallel simulation.

Implemented in SST::IMPL::Interactive::DebugConsole.

◆ getCoreTimeBase()

UnitAlgebra SST::InteractiveConsole::getCoreTimeBase ( ) const
protected

◆ getCurrentSimCycle()

SimTime_t SST::InteractiveConsole::getCurrentSimCycle ( ) const
protected

Return the current simulation time as a cycle count.

References SST::Simulation::getCurrentSimCycle(), and SST::Simulation::getSimulation().

Referenced by schedule_interactive(), and summary().

◆ getElapsedSimTime()

UnitAlgebra SST::InteractiveConsole::getElapsedSimTime ( ) const
protected

Return the elapsed simulation time as a time.

References SST::Simulation::getElapsedSimTime(), and SST::Simulation::getSimulation().

Referenced by summary().

◆ getEndSimCycle()

SimTime_t SST::InteractiveConsole::getEndSimCycle ( ) const
protected

Return the end simulation time as a cycle count.

References SST::Simulation::getEndSimCycle(), and SST::Simulation::getSimulation().

Referenced by summary().

◆ getEndSimTime()

UnitAlgebra SST::InteractiveConsole::getEndSimTime ( ) const
protected

Return the end simulation time as a time.

References SST::Simulation::getEndSimTime(), and SST::Simulation::getSimulation().

Referenced by summary().

◆ getMemPoolUsage()

void SST::InteractiveConsole::getMemPoolUsage ( int64_t & bytes,
int64_t & active_entries )
protected

Return MemPool usage information - per-rank.

Referenced by summary().

◆ getNumRanks()

RankInfo SST::InteractiveConsole::getNumRanks ( ) const
protected

Get the number of parallel ranks in the simulation.

References SST::Simulation::getNumRanks(), and SST::Simulation::getSimulation().

Referenced by summary().

◆ getRank()

RankInfo SST::InteractiveConsole::getRank ( ) const
protected

Get this instance's parallel rank.

References SST::Simulation::getRank(), and SST::Simulation::getSimulation().

Referenced by summary().

◆ getSimulationOutput()

Output & SST::InteractiveConsole::getSimulationOutput ( ) const
protected

Return the base simulation Output class instance.

References SST::Simulation::getSimulation(), and SST::Simulation::getSimulationOutput().

Referenced by summary().

◆ getSyncQueueDataSize()

uint64_t SST::InteractiveConsole::getSyncQueueDataSize ( ) const
protected

Return the size of the SyncQueue - per-rank.

References SST::Simulation::getSimulation().

Referenced by summary().

◆ getTimeConverter()

TimeConverter SST::InteractiveConsole::getTimeConverter ( const std::string & time)
protected

◆ getTimeVortexMaxDepth()

uint64_t SST::InteractiveConsole::getTimeVortexMaxDepth ( ) const
protected

Return the max depth of the TimeVortex.

References SST::Simulation::getSimulation().

Referenced by summary().

◆ schedule_interactive()

void SST::InteractiveConsole::schedule_interactive ( SimTime_t time_offset,
const std::string & msg )
protected

Schedules the action for execution at the current simulation time plus time_offset.

Parameters
time_offsetTime in units of core time base

References getCurrentSimCycle(), SST::Simulation::getSimulation(), SST::Simulation::insertActivity(), and SST::InteractiveAction::InteractiveAction().

Referenced by simulationRun().

◆ simulationRun()

void SST::InteractiveConsole::simulationRun ( SimTime_t time)
protected

Runs the simulation the specified number of core time base units.

Parameters
timeTime in units of core time base

References schedule_interactive().

◆ SST_ELI_DECLARE_INFO_EXTERN()

SST::InteractiveConsole::SST_ELI_DECLARE_INFO_EXTERN ( ELI::ProvidesParams )
default

Create a new checkpoint object for the simulation core to initiate checkpoints.

References SST_ELI_DECLARE_INFO_EXTERN().

Referenced by SST_ELI_DECLARE_INFO_EXTERN().

◆ summary()


The documentation for this class was generated from the following files: