ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2012
120
LoadLeveler
планирует выполнение заданий на одном и более
процессорах. В данном контексте задание представляет собой сово-
купность шагов. Для каждого шага можно задать собственное вы-
полнение (в каждый конкретный момент выполняется конкретная
часть задания). LoadLeveler можно использовать для выполнения за-
даний, состоящих из одного и более шагов, каждый из которых зави-
сит от результатов выполнения предыдущего шага задания.
Поток шагов задания представлен на рис. 3. Каждый из шагов
описан в файле управления заданием, который определяет имя зада-
ния, выполняемый шаг. В файле также могут содержаться другие
данные для LoadLeveler [12].
Рис. 3. Шаги задания в LoadLeveler
LoadLeveler пытается выполнить каждый шаг на процессоре, ко-
торый обладает необходимыми для этого ресурсами, и останавлива-
ется после выполнения шага. Если файл управления заданием состо-
ит из нескольких шагов, они могут выполняться на разных процессо-
рах, если явно не определено иное.
Для выполнения параллельных заданий (размещения узлов,
назначения заданий узлам и их запуска) LoadLeveler взаимодей-
ствует со средой параллельной работы Parallel Operating
Environment (POE).
Каждый процессор в кластере LoadLeveler выполняет одну или
несколько ролей при планировании заданий:
планировочный процессор (scheduling machine) или планиров-
щик. Когда задание приходит на выполнение, оно поступает в оче-
редь, управляемую планировщиком, который связывается с процес-
сором, осуществляющем центральное управление всего кластера.
Планировщик запрашивает у управляющего процессора свободную
для выполнения задания машину, а также хранит неизменную ин-
формацию о задании. Некоторые планировочные процессоры явля-
ются открытыми – любой пользователь имеет доступ к ним. Такие
процессоры планируют выполнение заданий, пришедших от подчи-
ненных процессоров, описанных ниже;