-
Notifications
You must be signed in to change notification settings - Fork 14
[wip] checkpoint restart #180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
@luca-heltai @ESeNonFossiIo @nicola-giuliani ogni quanto sarebbe da fare un checkpoint? io lo genererei quando chiamo output_step, voi avete suggerimenti migliori? |
| bool resume_computation; | ||
|
|
||
| /** | ||
| * folder used for read and store snapshots |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for -> to
folder -> Folder
|
per ora fallo ad ogni generazione di output. |
|
I've found the bug! now it works! |
|
una domanda di design. Sto risolvendo per nell'intervallo temporale [0,1]. la mia simulazione si interrompe a 0.55. la domanda è questa. così come è ora, carica la soluzione e mesh che avevo a 0.55 ma poi riparte sempre da t=0 perché gli stepper lo leggono da file di parametri. secondo voi quale sarebbe la scelta più giusta?
|
|
Sia 1. che 2. Nel file di parametri dovrebbe essere possibile specificare di girare la simulazione tra [1, T], per esempio, non solo tra [0, T]. Il tempo corrente (e il numero di output) devono essere salvati nel checkpoint, e al momento del restart, la simulazione deve essere esattamente come se non fosse stata mai interrotta, independentemente da cosa c'e' nel file di parametri come tempo iniziale. Expected Behaviour: In questo caso la simulazione deve ignorare Initial time dato da file di parametri, deve leggere initial time nei file di checkpoint restart (e il numero di output file da cui partire), e andare avanti da li', tirando una eccezione se il tempo letto dal checkpoint è < di initial time (questo non è possibile, perché vorrebbe dire che un file di parametri diverso è stato usato per far partire la simulazione che aveva salvato la soluzione). Ai fini dell'utente finale, non deve essere possibile distinguere se la simulazione sia stata interrotta in passato. I file di output devono essere numerati giusti, il tempo deve essere quello giusto. Devo poter far partire una simulazione, salta la corrente, e riprendo da dove sono arrivato con l'ultimo check point, senza che vengano sovrascritti files, etc. |
|
Soprattutto, devo poter ripartire se ulisse mi ha buttato fuori perché non ho stimato bene il walltime... |
| */ | ||
| template <class Archive> | ||
| void serialize (Archive &ar, const unsigned int /*version*/) | ||
| { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please move the implementation in the cc file.
|
superseded by #193 |
No description provided.