====== Como rodar programas no cluster Complex ======
O cluster consiste nas oito máquinas complex{000-111}, dual core e de 64 bits. O cluster agora usa o [[http://ftg.lbl.gov/checkpoint/|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 [[http://upc-bugs.lbl.gov/blcr/doc/html/BLCR_Users_Guide.html|BLCR User's Guide]], mas para usar bastam os seguintes passos:
* submeta o programa, precedido do comando cr_run
cr_run nome_do_programa argumentos
* para um checkpoint, faça
cr_checkpoint PID
onde PID é o número do processo do programa (obtenha com o comando ''ps ux'').
* para suspender o programa, faça
cr_checkpoint --term PID
O checkpoint ou a suspensão do programa criam um arquivo ''context.PID''.
* Para restart o processo, rode
cr_restart context.PID
* Para automatizar o processo, coloque o checkpoint no seu crontab. Rode o programa ''crontab -e'' (man 5 crontab, para maiores explicações) e adicione a seguinte linha
* */2 * * * checkpoint PID
Isto vai criar um checkpoint nas horas pares.
~~DISCUSSION~~