12#ifndef SST_CORE_CHECKPOINT_ACTION_H
13#define SST_CORE_CHECKPOINT_ACTION_H
15#include "sst/core/action.h"
16#include "sst/core/config.h"
17#include "sst/core/cputimer.h"
18#include "sst/core/output.h"
19#include "sst/core/rankInfo.h"
20#include "sst/core/sst_types.h"
21#include "sst/core/threadsafe.h"
32namespace Checkpointing {
40std::string createUniqueDirectory(
const std::string basename);
47void removeDirectory(
const std::string name);
54std::string initializeCheckpointInfrastructure(Config* cfg,
bool rt_can_ckpt,
int myRank);
86 SimTime_t
check(SimTime_t current_time);
92 static uint32_t checkpoint_id;
104 double last_cpu_time_;
106 SimTime_t next_sim_time_;
107 std::string dir_format_;
108 std::string file_format_;
A recurring event to trigger checkpoint generation.
Definition checkpointAction.h:63
void setCheckpoint()
Generate a checkpoint next time check() is called.
Definition checkpointAction.cc:272
void insertIntoTimeVortex(Simulation_impl *sim)
Indicates CheckpointAction should be inserted into the TimeVortex.
Definition checkpointAction.cc:128
SimTime_t getNextCheckpointSimTime()
Return next checkpoint time.
Definition checkpointAction.cc:278
CheckpointAction(Config *cfg, RankInfo this_rank, Simulation_impl *sim, TimeConverter *period)
Create a new checkpoint object for the simulation core to initiate checkpoints.
Definition checkpointAction.cc:69
void execute() override
Called by TimeVortex to trigger checkpoint on simulation clock interval - not used in parallel simula...
Definition checkpointAction.cc:145
SimTime_t check(SimTime_t current_time)
Called by SyncManager to check whether a checkpoint should be generated.
Definition checkpointAction.cc:252
Class to contain SST Simulation Configuration variables.
Definition config.h:41
Definition threadsafe.h:46
Main control class for a SST Simulation.
Definition simulation_impl.h:87
A class to convert between a component's view of time and the core's view of time.
Definition timeConverter.h:28