Programação PBS
-
23-09-2019 - |
Pergunta
Algumas perguntas curtas e provavelmente estúpidas sobre PBS:
1- Enviei empregos usando
qsub job_file
É possível enviar um trabalho (sub) dentro de um arquivo de emprego?
2- Eu tenho o seguinte script:
qsub job_a
qsub job_b
Para o lançamento do JOB_B, seria ótimo ter antes que os resultados do JOB_A terminassem. É possível colocar algum tipo de barreira ou alguma solução alternativa para que o JOB_B não seja lançado até que o JOB_A terminasse?
Obrigado
Solução
Responda à primeira pergunta:
Normalmente, você só tem permissão para enviar trabalhos do host em que o servidor PBS está em execução, mas depende de como o sistema PBS está configurado.
Responda à segunda pergunta:
Você pode usar dependências. Leia sobre a opção -w na documentação QSUB. Aqui está um exemplo de script Bash:
dependency_id=$(qsub job_a)
qsub -W depend=afterok:$dependency_id job_b
Job_B começará depois que Job_A terminar com sucesso.
Outras dicas
Sim, é possível enviar um emprego de outro emprego, embora tenha algumas advertências.
-Suas mães devem ter comandos de cliente (qsub) no caminho
-$ USECP tentará copiar os arquivos do nó em que o 1º trabalho está em execução.
-Eguar -se cuidadosamente, enviando trabalhos de outros trabalhos, porque você pode travar facilmente PBS_SERVER se o script de envio chamar muitos QSUBs.
Você pode ter empregos B - Z dependente do trabalho 'A' com a seguinte sintaxe
qsub foo.sh -w depend = depois: Joba
Matrizes de emprego também podem ser uma boa solução.
http://docs.adaptivecomputing.com/torque/help.htm#topics/2-jobs/multijobsubmission.htm