Это немного зависит от того, какой планировщик заданий вы используете и какую версию, но есть и другой подход, который также может быть использован, если ваша обработка результатов также может выполняться в той же очереди, что и задание.
Один очень удобный способ управления большим количеством связанных заданий в более поздних версиях крутящего момента (и с сеточным механизмом, и другими) - запуск любых отдельных заданий в виде массива заданий (см. http://docs.adaptivecomputing.com/torque/4-1-4/Content/topics/commands/qsub.htm#-t). Это требует Отображение отдельных прогонов на числа каким-то образом, что может или не может быть удобным, но если вы можете сделать это для своих заданий, это значительно упрощает управление заданиями, вы можете qsub их всех в одной строке, вы можете qdel или qhold их всех сразу (при этом имея возможность работать с заданиями индивидуально).
Если вы сделаете это, то можете отправить задание на анализ, которое зависело от массива заданий, которые будут выполняться только после завершения всех заданий в массиве: (см. http://docs.adaptivecomputing.com/torque/4-1-4/Content/topics/commands/qsub.htm#dependencyExamples). Отправка работа будет выглядеть так:
qsub analyze.sh -W depend=afterokarray:427[]
где analysis.sh имеет скрипт для анализа, а 427 будет идентификатором запущенного вами массива заданий. ([] Означает запуск только после того, как все завершено). Синтаксис отличается для других планировщиков (например, SGE / OGE), но идеи те же.
Чтобы сделать это правильно, нужно немного поработать, и, конечно, подход Тристана имеет то преимущество, что он прост и работает с любым планировщиком; но научиться использовать в этой ситуации массивы заданий, если вы будете делать это много, может стоить вашего времени.