Несмотря на то, что средства MPI сами по себе позволяют осуществлять запуск параллельных задач, обычно для этих целей используются различные менеджеры ресурсов. Одним из таких менеджеров является система Torque - один из наиболее популярных и простых в использовании менеджеров.
Система управления заданиями Torque предназначена для управления запуском задач на многопроцессорных вычислительных установках (в том числе кластерных). Она позволяет автоматически распределять вычислительные ресурсы между задачами, управлять порядком их запуска, временем работы, получать информацию о состоянии очередей. При невозможности запуска задач немедленно, они ставятся в очередь и ожидают, пока не освободятся нужные ресурсы.
Torque главным образом используется на многопроцессорных вычислительных установках. Объединение ресурсов в вычислительных установках обычно уменьшает необходимость в постоянном управлении ресурсами для пользователей. Настроенная однажды правильно вычислительная установка абстрагируется от многих деталей, связанных с запуском и управлением заданиями. Пользователю обычно надо установить в параметрах лишь минимальные требования к задаче, и ему нет необходимости знать даже имена вычислительных узлов, на которых задача выполняется.
В том случае, когда вы являетесь единоличным пользователем кластера, особой нужды в менеджере ресурсов нет. Эффективно управлять собственной задачей вы можете самостоятельно. Однако, если кластером пользуются несколько человек, то неизбежно возникают задачи административного характера - кто, когда и на сколько времени может занимать ресурсы кластера. Кроме того, если у вас нет выделенного кластера, но вместо этого для решения параллельных задач используется компьютерный класс, который в дневное время предназначен например для обеспечения учебного процесса, то проблема остановки "тяжеловесных" параллельных задач и освобождения ресурсов в 8:00 утра, может быть легко решена с помощью Torque.
Менеджер Torque может быть загружен с официального сайта проекта.
Система Torque состоит из нескольких демонов, выполняющих различные функции по управелнию потоком заданий. Вычислительная установка обязана иметь главный узел (консоль кластера), на котором запущен демон pbs_server. Это основной демон - менеджер, собирающий информацию о структуре кластера и запущенных заданиях. В зависимости ои необходимости или параметров системы главный узел может быть предназначен только для этого или же также исполнять роль других компонент системы. Например, он может быть так же вычислительным узлом кластера.
Роль вычислительных узлов - выполнять поставленные задачи. На каждом из них работает демон pbs_mom для того, чтобы начинать, прекращать и управлять поставленными в очередь задачами. Это единственный демон, который должен быть запущен на вычислительном узле кластера.
И наконец, демон pbs_sched. Этот демон занимется собственно планированием запуска и остановки задач. Он должен быть запущен на главном компьютере кластера.