Организация обработки информации и данных в Сетевой Среде Распределённых Вычислений (ССРВ) докладчик : Семёнов Дмитрий Викторович
Содержание Архитектура системы управления (СУ) ССРВ; Принципы функционирования информационной подсистемы СУ ССРВ; Принципы функционирования подсистемы запуска заданий; Подсистема внешней памяти ССРВ (ПВП); архитектура ПВП; принципы функционирования ПВП; варианты работы ПВП.
Архитектура системы управления ССРВ
функционирование информационной подсистемы и подсистемы планирования системы управления ССРВ паспорт задания >> >> брокерменеджер ВС запрос информационная подсистема ССРВ на базе MDS пакета Globus Toolkit запрос СУПЗ запрос подсистема мониторинга
брокер менеджер ВС ответ информационная подсистема ССРВ на базе MDS пакета Globus Toolkit ответ СУПЗ ответ подсистема мониторинга функционирование информационной подсистемы и подсистемы планирования системы управления ССРВ
функционирование подсистемы запуска задачи на выполнение брокер 1. Анализируется получившийся паспорт 2. Упаковывается директория с данными 3. Формируется соответствующее указа- ние подсистеме запуска менеджер ПВП 1. Пересылаются данные 2. Регистрируются данные в ИП ССРВ информационная подсистема ССРВ регистрация данных подсистема запуска задач на базе GRAM пакета GLOBUS Toolkit 1. Распаковка данных 2. Формирование паспорта для СУПЗ СУПЗ Постановка задачи в очередь
Структура Подсистемы Внешней Памяти децентрализованная иерархическая информационная подсистема ВС менеджер ПВП локальная ФС ВС менеджер ПВП локальная ФС сервер метаданных узел ввода-вывода
Структура реализованной ПВП децентрализованная информационная служба на базе MDS пакета Globus Toolkit менеджер ПВП модуль кэширования данных модуль операций файлового ввода-вывода модуль перенаправления стандартных потоков в/в регистрация файлов запрос атрибутов файлов Обмен данными с другими менеджерами ПВП и менеджерами СУ модуль копирования данных
Функции менеджера ПВП регистрация файлов данных для конкретной задачи; получение и обработка информации о файлах; управление файлами данных: удаление; копирование; кэширование; перенаправление стандартных потоков; взаимодействие с локальной файловой системой; информационное обеспечение пользователя.
Варианты работы ПВП Объём исходных данных очень велик и обращение к файлам происходит маленькими порциями планирование заданий происходит на ВС, содержащие эти данные Объём данных не большой и доступ в основном монопольный (является опцией по умолчанию) копирование данных на планируемую ВС Объём данных большой и операции доступа к файлу осуществляются большими порциями или не монопольный доступ кэширование данных
Флаги при открытии файлов с применением кэширования Флаг O_RDONLY: при открытии файла – часть файла копируется на удалённую ВС, при закрытии – кэш очищается; Флаг O_WRONLY: при открытии файла – часть файла копируется на удалённую ВС, при закрытии – файл копируется обратно; Флаги O_APPEND и O_WRONLY | O_APPEND: Создаётся постоянное соединение на базе сокетов с удалённым сервером. Данные, записанные в дескриптор файла, немедленно отсылаются на сервер и записываются в файл. Так же доступны флаги: O_TRUNC, O_RDWR и различные их комбинации с другими флагами.
Результаты запуска потока заданий в ССРВ Состав потока заданий: Задача расчёта течений с тепловыми неоднородностями в потоке. Запускались 4 задачи с разным количеством итераций: 500, 1000, 1500, Разработчик: д.ф-м.н. Луцкий. Задача расчёта квантово-статистических моделей поведения вещества при экстремальных условиях. Разработчик: д.ф-м.н. Новиков. Решение задач электромагнитного воздействия на объекты с учетом обратного влияния при возбуждении ЭМИ в объектах. Разработчик: к.ф-м.н. Чубукова. Задачи-тесты NASA разных классов сложности: A,B и C.
Результаты запуска потока заданий в ССРВ Состав ССРВ: вычислительный кластер NEO (НИИ КВАНТ) вычислительный кластер NEXT (НИИ КВАНТ) вычислительный кластер CLUSTER (НИИМЕХ МГУ) По результатам запуска потока заданий в ССРВ были сделаны следующие выводы: был разработан работоспособный макет ССРВ; по предварительным экспериментам выигрыш запуска заданий в ССРВ достигал 30%; используемые варианты организации различных подсистем СУ ресурсами и заданиями, а так же алгоритмы их функционирования показали свою эффективность.
Паспорт размещается в текстовом файле, разбитом на секции. Каждая секция содержит несколько параметров. # в квадратных скобках идет название секции [General] # версия паспорта (системы) version = 0.1 # глобальный идентификатор задачи task_id = ID # тип задачи, допустимые значения: # single – задача запускается на одном кластере # composite – задача может быть запущена на нескольких кластерах одновременно # опция composite будет доступна в следующих версиях task_type = single / composite # флаг рестарта, допустимые значения: # yes – задача должна запускаться многократно # no – задача должна запускаться только один раз restart = no / yes # максимальное время выполнения задачи (в минутах) maxtime = 100 # требуемое количество процессоров для задачи proc_count = 10 # рабочий каталог задачи home_dir = /common/user/task/dir # имя исполняемого модуля (командного файла) executable = /common/user/bin/task Формат паспорта задачи
# Следующая секция содержит список кластеров, на которых возможен запуск задачи [Clusters] # формат строки: # сетевое_имя_кластера = название_секции # все параметры задачи на конкретном кластере должны быть описаны в секции с # соответствующим именем cluster1 = sec1 cluster2 = sec2 ….. # Секция, описывающая параметры задачи на кластере cluster1 параметры в секции будут # приняты для данного кластера вместо одноименных параметров секции [General] [sec1] # рабочий каталог задачи home_dir = /home/user/task/dir # имя исполняемого модуля (командного файла) executable = /home/user/bin/my_task # максимальное время выполнения задачи (в минутах) maxtime = 60 # требуемое количество процессоров для задачи proc_count = 15 # принудительный запуск задачи на данном кластере force = yes / no …… Формат секции Clusters
Формат секции Files # Секция, определяющая действия с файлами задачи [Files] # откуда взять файл стандартного ввода для задачи, параметр может быть опущен # (нет стандартного ввода) # путь, если не содержит в явном виде имя компьютера, считается относительно той # машины, с которой пользователь передает задачу системе stdin = /home/user/user_stdin # куда поместить файл стандартного вывода для задачи параметр может быть # опущен (стандартный вывод теряется) stdout = /home/user/user_stdout # куда поместить файл стандартного вывода ошибок для задачи, параметр может # быть опущен (стандартный вывод ошибок теряется) stderr = /home/user/user_stderr # куда поместить файл журнала задачи, параметр должен быть указан log = /home/user/user_task.log # флаг переноса рабочего каталога задачи # yes – копировать рабочий каталог задачи на кластер, где будет произведен # очередной запуск # no – копировать рабочий каталог задачи не надо replace = yes / no назад >>