Open
Description
Describe the feature or idea you want to propose
it would be good to have a checkpointing (aka "warm start" interface to allow the restarting of algorithms after pausing mid way. This will become more important with the 60 hr time limit on HPC.
Describe your proposed solution
we could just define an interface (akak mixin) that models the java version perhaps, with pickling for default save and load. Might get complex with threading
public interface Checkpointable extends Serializable {
boolean setCheckpointPath(String path);
boolean setCheckpointTimeHours(int t);
void saveToFile(String filename);
void loadFromFile(String filename);
class Checkpointing:
@abstract
def set_path(path):
...
def set_type(hours):
...
def save(file_name):
...
def load(file_name):
...
Describe alternatives you've considered, if relevant
No response
Additional context
No response