УДК 681.3.06 Корсуков Александр Сергеевич,
к. т. н., научный сотрудник, Федеральное государственное бюджетное учреждение науки Институт динамики систем и теории управления Сибирского отделения Российской академии наук тел. +79025150404, e-mail: [email protected]
АВТОМАТИЗАЦИЯ ПОДГОТОВКИ И ПРОВЕДЕНИЯ
ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ В ИНТЕГРИРОВАННОЙ КЛАСТЕРНОЙ СИСТЕМЕ
A.S. Korsukov
THE AUTOMATION OF THE PREPARATION AND CARRYING OUT OF SIMULATION MODELING IN THE INTEGRATED
CLUSTER SYSTEM
Аннотация. Рассматривается инструментальный комплекс поддержки распределенного вычислительного эксперимента для GPSS-моделей с использованием кластеров системы управления прохождением задач Condor.
Ключевые слова: кластерная Grid, потоки заданий, имитационное моделирование, инструментальные средства.
Abstract. The toolkit for supporting distributed computing experiment for the GPSS-models using the cluster under the control of manager of local resources Condor is presented.
Keywords: cluster Grid, job flows, simulation modeling, toolkit.
Введение
Сегодня в области развития и применения высокопроизводительных вычислений наметились тенденции к организации распределенных вычислительных сред различного назначения. К таким системам можно отнести виртуальные суперкомпьютеры, интегрированные кластерные системы, а также специальные вычислительные сети Grid. Одной из актуальных задач в настоящее время является эффективное управление вычислительными ресурсами в распределенной среде. Имитационное моделирование является наиболее эффективным методом исследования подобных систем, а иногда и единственным практически доступным методом получения информации о поведении системы, особенно на этапе ее проектирования. Зачастую процесс моделирования Grid требует от ее исследователя значительных затрат по времени, обусловленных необходимостью прогона модели с множеством различных вариантов значений исходных данных, сбора полученных результатов и их анализа.
В статье рассматривается инструментальный комплекс поддержки распределенного вычислительного эксперимента для GPSS-моделей [1] с использованием кластеров системы управления прохождением задач (СУПЗ) Condor [2]. Архитектура, принципы работы, способы и средства реализации данного инструментального комплекса обеспечивают широкий спектр использования его функциональных возможностей для моделирования не только вычислительных систем, но и экономических объектов в самых различных сферах деятельности.
Средства моделирования Grid. В настоящее время существует ряд программных средств исследования процессов функционирования Grid, которые делятся на эмуляторы и симуляторы. Эмулятор [3] - это средство воспроизведения поведения реального устройства или программы в режиме реального времени. Симулятор [4] - это программное обеспечение, позволяющее моделировать реальные системы, отображая часть реальных явлений и свойств в виртуальной среде. Другими словами, эмулятор заменяет свойства и функции оригинала, выполняя реальную работу, а симулятор лишь моделирует эти свойства и функции без реального функционирования.
К симуляторам Grid относятся, например, следующие системы: OptorSim [5], GridSim [6] и Bricks [7]. Эти системы моделируют вычислительные Grid и дают возможность получить статистические данные о наиболее важных характеристиках моделируемой системы: использовании дисковых ресурсов, пропускной способности каналов, вероятности потерь данных и т. п. Системы имеют разные особенности и возможности для моделирования Grid.
Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы
OptorSim - пакет моделирования, реализованный на языке Java и позволяющий оценивать различные алгоритмы оптимизации и стратегии обработки данных. Одним из достоинств пакета является наличие графического интерфейса для визуального отображения модели. Статистика в OptorSim представлена как по каждому элементу в отдельности, так и по работе модели в целом. Отчетная информация доступна в виде таблиц, графиков и диаграмм.
Система GridSim обеспечивает возможность моделирования поведения пользователей Grid, вычислительных ресурсов и брокеров ресурсов (планировщиков). С помощью системы GridSim можно проводить эксперименты, которые сложно реализовать в реальном окружении динамических Grid. Основные возможности GridSim: моделирование характеристик ресурсов Grid; моделирование политик планирования задач на узлах вычислительных кластеров; использование данных о загрузке реальных кластеров для проведения экспериментов; поддержка механизма аукциона для планирования задач; моделирование конфигураций вычислительной Grid для различных коммуникационных топологий.
Bricks - система моделирования, предназначенная для исследования клиент-серверной архитектуры как глобальной вычислительной системы. В этой системе предполагается централизованное глобальное планирование вычислений. Создатели системы руководствовались идеей, что в рамках Grid основу составляют пользователи, запускающие свои задания на общие ресурсы по сети.
В качестве примеров эмуляторов можно привести системы MicroGrid [8] и Grid eXplorer
[9].
MicroGrid представляет собой виртуальную Grid-инфраструктуру, которая позволяет исследовать управление динамическими ресурсами и адаптивными приложениями с помощью итерационных вычислительных экспериментов. Инструментарий MicroGrid поддерживает взаимодействие с пакетом Globus Toolkit [10], обеспечивает эксперименты с реальными моделями Grid, поэтому может быть использован для изучения широкого спектра конфигураций и сценариев Grid-ресурсов.
Grid eXplorer - инструмент крупномасштабной эмуляции для исследования распределенных вычислительных систем, сетей и взаимодействия с пользователями Grid. Этот эмулятор состоит из базы экспериментальных режимов большого кластера, состоящего из 1000 персональных компьютеров, и инструментов для контроля и анализа экспериментов.
Все рассмотренные системы имеют как достоинства, так и недостатки. Среди недостатков симуляторов Grid следует отметить узкую специализацию систем, отсутствие публично доступных версий, недостаточность, а иногда и отсутствие документации и примеров. Особенности реализации некоторых из них накладывают ограничения на количество одновременно существующих элементов в Grid и требуют от пользователя знания специальных языков программирования, что значительно снижает эффективность работы с такими системами. Серьезным недостатком эмуляторов является то, что создание и настройка больших испытательных стендов в таких системах требуют много времени, а работа с самим эмулятором делает значительную часть вычислительных ресурсов недоступными для решения реальных задач пользователей Grid.
Таким образом, возникает необходимость разработки специализированного программного средства для автоматизации процесса моделирования Grid. С точки зрения проведения имитационного моделирования, целесообразно выбрать систему GPSS World, которая предназначена для моделирования систем массового обслуживания, имеет возможность интеграции с другими языками и системами программирования, проста в изучении и применении. Модель на языке GPSS может быть выполнена в любой внешней программной среде.
Так как прогон модели предполагает не связанные между собой многовариантные расчеты (выполнение одной и той же программы с различными наборами исходных данных), то в этом случае можно эффективно использовать кластер, организованный на базе обычных персональных компьютеров. Наиболее подходящим программным обеспечением для организации такого кластера является система Condor, которая обладает следующими преимуществами: ориентируется на объединение совокупности персональных компьютеров в единый вычислительный кластер на базе любой имеющейся локальной сети, что требует минимальных финансовых и временных затрат; функционирует под управлением различных операционных систем, включая ОС Windows, что особенно важно, так как эта операционная система наиболее часто используется в качестве базовой операционной системы в различных организациях; распространяется свободно, с открытым кодом.
Функциональные и системные требования
Исходя из поставленной цели были определены следующие функциональные и системные
ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ
требования к разрабатываемому инструментальному комплексу:
- организация доступа к ресурсам вычислительного кластера через авторизацию пользователей;
- предоставление административных прав отдельным пользователям и группам пользователей для изменения настроек инструментального
комплекса;
- обеспечение возможности запуска GPSS-моделей на вычислительном кластере для последующего распределения и выполнения на его вычислительных узлах;
осуществление запуска модели с дополнительными файлами, а также запуск многовариантных заданий;
предоставление пользователю возможности отслеживания статуса выполнения задания и удаления задания из очереди СУПЗ в случае необходимости;
реализация сбора отчетов о выполненных заданиях и представление их в удобном для изучения виде;
корректная обработка исключительных ситуаций, таких как: ошибки при получении данных, недостаточность данных для запуска задания, сбои при выполнении заданий, отсутствие отчетов.
Определены следующие минимальные системные требования для работы разработанного ПО на компьютере: операционная система Windows 2000/XP/7; процессор Pentium III и выше; 128 Мб оперативной памяти; 500 Мб памяти на жестком диске.
Архитектура инструментального комплекса
Программно-аппаратная архитектура инструментального комплекса включает два основных уровня: вычислительный уровень и уровень подготовки и обработки данных (рис. 1).
На вычислительном уровне на каждом узле работают системы Condor и GPSS World Student Version. При помощи СУПЗ Condor осуществляется распределение заданий между выполняющими узлами и отслеживание статусов запущенных заданий. Система GPSS World реализует проведение имитационного эксперимента. СУПЗ Condor собирает результаты проведенного моделирования и выгружает данные на сервер.
Уровень подготовки и обработки данных состоит из программного обеспечения, реализующего подготовку вычислительного эксперимента, обрабатывающего полученные данные и представляющего их в удобном для пользователя виде. Это программное обеспечение представлено тремя модулями.
Рис. 1. Схема работы инструментального комплекса
Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы
ш
Управляющий модуль является основной частью инструментального комплекса и выступает в роли посредника между пользователем и СУПЗ Condor (рис. 2). Его основными задачами являются: обработка пользовательских запросов и общение с пользователем через веб-интерфейс, подготовка паспортов заданий, запуск и отслеживание состояний заданий. Управляющий модуль состоит из четырех компонентов: подготовки паспорта задания, запуска, проверки статуса задания и сбора результатов.
информации о состоянии пула и ресурсов, и получает нужную информацию. Полученная информация сохраняется в БД.
После завершения выполнения задания полученные результаты сохраняются на сервере в файлах *.оШ;, *.еггог. Далее эти результаты
сохраняются управляющим модулем в БД.
Модуль подготовки отчетов загружает из БД в шаблон отчета результаты выполненного задания для последующего вывода этих результатов пользователю (рис. 3)._
Пользователь
Управляющий узел кластера
Веб-сервер
Управляющий модуль
X
Модуль подготовки отчетов
Файлы системы Condor
Рис. 2. Схема работы управляющего модуля
Пользователь передает управляющему модулю данные, на основе которых составляется паспорт задания. Паспорт задания сохраняется в виде файла формата *.sub в папке на веб-сервере. Далее в базе данных (БД) сохраняется идентификационный номер (ID) задания, дата и время запуска, описание задания и другие характеристики задания. Затем производится запуск задания на кластере с помощью утилиты condor_submit.exe. Служба управления ресурсами СУПЗ Condor распределяет задание по выполняющим узлам.
В процессе выполнения задания управляющий модуль периодически запрашивает с главного узла кластера информацию о состоянии задания (задание ожидает запуска, выполняется, приостановлено и т. д.). Для этого он обращается к файлу condor_q.exe, который обращается к службе сбора
Рис. 3. Схема работы модуля подготовки отчетов
Пользователь может получить отчет по только что выполненному эксперименту, а также по ранее выполненным этим пользователем экспериментам. Данный модуль делает выборку из БД, формирует отчет и передает его управляющему модулю, который в дальнейшем выводит готовый отчет на веб-страницу. В случае, когда пользователю требуется получить отчет о ранее проведенном эксперименте, он передает управляющему модулю ряд параметров (ГО, время запуска и т. д.), который в свою очередь пересылает их модулю подготовки отчетов. Данный модуль на основе этих параметров производит выборку из БД, готовит отчет и отсылает его управляющему модулю.
Модуль настройки позволяет администратору менять внешний вид и состав отчетов, а также предоставляет интерфейс для внесения изменений в БД (рис. 4).
Администратор
Веб-сервер
Управляющий
модуль
i
Модуль настройки — База данных
ф
Модуль подготовки
отчетов
Рис. 4. Схема работы модуля настройки
ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ
Организация расчетных данных. Все данные, используемые и получаемые при проведении экспериментов, сохраняются на сервере. Когда пользователь запускает задание, в указанной администратором папке на сервере создается папка с именем пользователя, в которой для каждого задания создается папка с датой запуска в имени. В этой папке размещаются запускаемая модель, дополнительные файлы модели, сформированный паспорт задания, файлы с результатами счета и информационно-статистические файлы системы Condor.
В случае многовариантного задания внутри папки задания для каждого варианта этого задания создаются дополнительные папки вида dir0, dirl, ..., dirN, в которые сохраняются отчеты по каждому варианту.
Аспекты программной реализации Основным языком программирования, реализующим функциональную часть инструментального комплекса, является PHP 4.0. В качестве среды имитационного моделирования используется система GPSS World версии не выше 5.2, так как в более поздних версиях этой программы не поддерживается пакетный режим, позволяющий запускать и выполнять задания в фоновом режиме. При реализации некоторых элементов веб-интерфейса, которые должны динамически меняться без перезагрузки страницы, был использован скриптовый язык программирования Javascript. Для организации веб-сервера был выбран пакет Apache, основными достоинствами которого считаются надежность и гибкость конфигурации. В качестве СУБД была выбрана MySQL, так как она сравнительно быстра и разработана специально для работы с веб-серверами.
Этапы организации работы инструментального комплекса
Организация инструментального комплекса включает в себя следующие этапы:
организация кластера невыделенных рабочих станций на базе компьютерного класса ИДСТУ СО РАН, в том числе определение необходимого количества узлов кластера, выбор управляющего узла, установка СУПЗ Condor и создание на управляющем узле Condor-пула;
установка ПО, необходимого для функционирования инструментального комплекса: на управляющий узел кластера устанавливаются вебсервер Apache, интерпретатор языка программирования PHP и СУБД MySQL, а также копируются скрипты и шаблоны инструментального комплекса;
установка ПО, необходимого для проведения имитационного эксперимента: на каждый
узел, включая управляющий, устанавливается система имитационного моделирования GPSS World Student Version с поддержкой batch-режима;
- настройка совместной работы служб СУПЗ Condor и веб-сервера Apache;
- регистрация пользователей.
Методика проведения вычислительного эксперимента. Процесс выполнения вычислительного эксперимента с использованием кластера под управлением СУПЗ Condor состоит из нескольких основных этапов:
подготовка исходных данных, необходимых для проведения эксперимента;
подготовка паспорта задания, включающего информацию о прикладной программе, входных/выходных данных и др.;
-постановка задания в очередь СУПЗ; выполнение задания на свободных вычислительных узлах и передача результатов моделирования на машину, с которой производился запуск;
сбор отчетов и результатов, полученных в ходе проведения вычислительного эксперимента;
анализ полученных данных.
Среда проведения вычислительного эксперимента. Тестирование инструментального комплекса проводилось на кластере, созданном на базе компьютерного класса ИДСТУ СО РАН.
Все программные модули установлены на управляющий узел. Система имитационного моделирования GPSS World Student Version установлена на каждый узел кластера, в том числе и управляющий.
Вычислительные эксперименты
В табл. 1 приведены оценки времени [11], затрачиваемого соответственно на неавтоматизированное и автоматизированное моделирование. Данные получены эмпирическим путем при проведении ряда экспериментов, n - количество вариантов многовариантного задания.
Зададим время моделирования выполнения i -го задания следующим соотношением:
í, = г, + //, + //,. + <pt , где tí - время, необходимое для подготовки исходных данных для 7 -го задания; r¡i - время формирования паспорта / -го задания; /л - время сбора данных о выполненном i -ом задании; (р. - время анализа данных i -го задания. Тогда оценку времени, затрачиваемого на моделирование выполнения заданий из потока, содержащего к заданий, определим как
Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы
ш
т=-хУк t .
к '
Т а б л и ц а 1
Этапы T, неавтома-тиз. моделирование T, автоматиз. моделирование
Подготовка данных n х(10-120) сек. 10-60 сек.
Формирование паспорта задания 10-300 сек. 1-4 сек.
Сбор данных 10-120 сек. 1-2 сек.
Анализ данных 10-90 сек 1-4 сек.
Применение инструментального комплекса
Задача 1. В рамках первого вычислительного эксперимента было проведено моделирование работы метапланировщика Gridway в Grid, состоящей из 50 кластеров различной конфигурации. С помощью метапланировщика Gridway выполнялось распределение потоков заданий, состоявших из следующих типов: стандартных последовательных и параллельных заданий, многовариантных, взаимосвязанных и локальных заданий. Был исследован ряд алгоритмов работы данного мета-планировщика на потоках с варьирующим соотношением заданий разных типов.
Задача 2. Разработанный инструментальный комплекс был также применен для решения ряда прикладных задач моделирования процесса погру-гочно-разгрузочных работ ООО «Иркутский хладокомбинат» [12]. Данный складской комплекс осуществляет операции с входными и выходными материальными потоками, как по плановым, так и по случайным заявкам. Имитировалась работа складского комплекса в течение 1 месяца.
Зависимость времени проведения экспериментов от количества вариантов исходных данных для автоматизированного и неавтоматизированного моделирования, а также сравнение временных затрат для автоматизированного и неавтоматизированного моделирования на разных этапах проведения вычислительных экспериментов, в том числе и на этапе анализа, представлены соответственно на рис. 5 и 6.
Применение средств автоматизации вычислительного эксперимента позволило в значительной степени сократить трудозатраты на проведе-
ние имитационного моделирования, особенно на этапах подготовки исходных данных, формирования паспортов заданий, сбора и анализа полученных данных, что позволяет сделать вывод об эффективности использования данного инструментального комплекса для решения подобных задач.
Рис. 5. Зависимость времени проведения экспериментов от количества вариантов исходных данных
250 200 S150
<и а. со
100 50 0
П_ и.
Запуск задания
Сбор данных
Анализ данных
Подготовка исходных данных
□ Оценка времени для неавтоматизир. моделирования (зад. 1)
■ Время для автоматизир. моделирования (зад. 1)
■ Оценка времени для неавтрматизир. моделирования (зад. 2)
■ Время для автоматизир. моделирования (зад. 2)
Рис. 6. Сравнение временных затрат на разных этапах
проведения вычислительного эксперимента
Заключение
В целом в статье представлен опыт разработки и применения высокоуровневых инструментальных средств поддержки моделирования с помощью системы GPSS World на вычислительном кластере.
Разработанный инструментальный комплекс может быть эффективно использован при проведении многовариантных распределенных вычислительных экспериментов с GPSS-моделями систем массового обслуживания различного назначения.