Tarefas em lote do PBS - o comando qalter

1

Eu tenho uma computação gigante em execução em um cluster do Scientific Linux. Atualmente, tenho mais de 600 postos de trabalho estacionados na fila, esperando pelo tempo do processador, enquanto alguns estão em execução.

Estou tentando usar o comando qalter em alguns dos trabalhos ociosos, mas agendados. Eu gostaria de agendá-los mais tarde, para que outros usuários possam pular parte da fila, como um ato de polidez. Isso é factível?

Por exemplo, JOBNAME 292399 está atualmente ocioso, programado para ser executado sempre que um ponto na fila é aberto.

Mas se eu executar qalter -a 10051000 292398 seguido por qrerun 292398 , receberei qrerun: Request invalid for state of job 292398.euler .

Da documentação do qalter, pensei que 10051000 se refere a amanhã (5 de outubro, 10h), mas talvez eu esteja entendendo mal alguma coisa?

Se eu estou indo sobre isso da maneira errada, por favor me avise. A principal coisa que estou procurando é um comando que seja facilmente programável por script, para que eu possa modificar quando minhas tarefas enfileiradas forem executadas. qalter parece bom para esses propósitos se eu conseguir fazê-lo funcionar. Eu prefiro evitar a execução do qdel e requbbing os cálculos, pois há uma questão de contabilidade em que tarefas para reiniciar (vs quais não). Eu quero evitar esse tipo de contabilidade.

De googling ao redor eu percebo que alguns comandos qalter têm formatos de data bastante diferentes, mas o acima está correto, tanto quanto eu posso dizer dos documentos do man.

Qualquer ajuda seria apreciada.

    
por Ryan Budney 05.10.2012 / 03:52

1 resposta

2

Use qhold para reter um trabalho. Quando você estiver pronto para executá-lo, use qrls para liberar o trabalho. Você pode facilmente criar um script cron para essa finalidade.

Consulte o Manual do usuário do PBS Professional e o Guia do administrador doTORQUE (o TORQUE é compatível principalmente com o PBS ) para mais informações.

Editar: Você também pode usar qalter -a , mas não use qrerun : o trabalho não está em execução e não é elegível para execução até depois da data e hora especificadas no qalter -a command, então qrerun retorna um erro.

    
por 05.10.2012 / 05:07