O cluster consiste nas oito máquinas complex{000-111}, dual core e de 64 bits. O cluster agora usa o Berkeley Lab Checkpoint/Restart (BLCR). A idéia é a seguinte: você submete o programa, faz checkpoint periódicos (de duas em duas horas, por exemplo) e se acaso o programa for abortado, você pode resubmetê-lo a partir do último checkpoint, na mesma máquina ou em outra com configuração semelhante (que é o caso do cluster). Existe uma documentação farta no BLCR User's Guide, mas para usar bastam os seguintes passos:
cr_run nome_do_programa argumentos
cr_checkpoint PID
onde PID é o número do processo do programa (obtenha com o comando
ps ux
).
cr_checkpoint --term PID
O checkpoint ou a suspensão do programa criam um arquivo
context.PID
.
cr_restart context.PID
* */2 * * * checkpoint PID
Isto vai criar um checkpoint nas horas pares.
Discussão
Sim, a automatização deve ser feita depois do processo iniciado. Depois de inserido no crontab não é necessário rodar o checkpoint. O exemplo que eu dei, salva o checkpoint nas horas pares (e não de duas em duas horas a partir do momento que começou a rodar).
A automatização deve ser feita antes de iniciar o processo com checkpoint? Após inserir a linha no contrab devo chamar o checkpoint novamente?