Пакетные задания PBS - команда qalter

1263
Ryan Budney

У меня гигантские вычисления на кластере Scientific Linux. В настоящее время в очереди припарковано более 600 заданий, ожидающих процессорного времени, в то время как некоторые из них уже запущены.

Я пытаюсь использовать Qalter на некоторых но запланированных работах. Я хотел бы запланировать их на более позднее время, чтобы другие пользователи могли переходить часть очереди, что-то вроде акта вежливости. Это выполнимо?

Например, JOBNAME 292399в настоящее время не используется, и его планируется запускать каждый раз, когда в очереди появляется место.

Но если я бегу, qalter -a 10051000 292398а затем qrerun 292398я получаю qrerun: Request invalid for state of job 292398.euler.

Из документации qalter я подумал, что 10051000 относится к завтрашнему дню (5 октября, 10 утра), но, возможно, я что-то неправильно понимаю?

Если я пойду неправильно, пожалуйста, дайте мне знать. Главное, что я ищу, это команда, которая легко скриптируется, так что я могу изменить ее при запуске задач из очереди. qalter кажется хорошим для этих целей, если я смогу заставить его работать. Я бы предпочел избегать запуска qdel и повторной подстановки вычислений, так как существует проблема с бухгалтерией, какие задачи нужно перезапускать (а какие нет). Я хочу избежать такой бухгалтерии.

Из поисков в поисках я заметил, что некоторые команды qalter имеют довольно разные форматы даты, но вышеприведенное выглядит правильным, насколько я могу судить из man docs.

Любая помощь будет оценена.

1

1 ответ на вопрос

2
bwDraco

Используйте qholdдля удержания на работе. Когда вы будете готовы запустить его, используйтеqrls чтобы освободить задание. Вы можете легко создать cron-скрипт для этой цели.

См в руководстве PBS Professional пользователя и в Руководстве администратора TORQUE ( TORQUE в основном совместит с PBS ) для получения дополнительной информации.

Редактировать: Вы также можете использовать qalter -a, но не использовать qrerun: задание не выполняется и не может быть выполнено до истечения даты и времени, указанных в qalter -aкоманде, поэтому qrerunвозвращает ошибку.

Круто, спасибо. qhold + qrls сделали свою работу. Ryan Budney 12 лет назад 0