автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Разработка методов и программных средств реализации компонентной вычислительной среды для параллельного и распределённого моделирования режимов систем газоснабжения
Автореферат диссертации по теме "Разработка методов и программных средств реализации компонентной вычислительной среды для параллельного и распределённого моделирования режимов систем газоснабжения"
На правах рукописи
Васильев Алексей Владимирович (^х^с^сШ^
Разработка методов и программных средств реализации компонентной вычислительной среды для параллельного и распределённого моделирования режимов систем газоснабжения
05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата технических наук
•р НАР ?013
Москва - 2013
005050320
Работа выполнена в Российском государственном университете нефти и газа имени И. М. Губкина на кафедре Автоматизированные системы управления.
Научный руководитель:
Официальные оппоненты:
доктор технических наук, доцент Сергей Александрович Сарданашвили
доктор технических наук, главный научный сотрудник ОАО «Газпром Промгаз» Евгений Романович Ставровский
кандидат технических наук, главный инженер ООО «Информтрансгаз» Владимир Семёнович Панкратов
Ведущая организация:
Институт систем энергетики имени Л.А. Мелентьева Сибирского отделения Российской академии наук
Защита диссертации состоится «26» марта 2013 г. в 15 часов 00 минут в аудитории 308 на заседании диссертационного совета Д 212.200.14 при Российском государственном университете нефти и газа им. И.М. Губкина. Ленинский проспект, 65, Москва, ГСП-1, 119991, Россия.
С диссертацией можно ознакомиться в библиотеке РГУ нефти и газа имени И.М. Губкина.
Автореферат разослан «21» февраля 2013 г.
Отзывы и замечания по автореферату в двух экземплярах, заверенные печатью, просьба высылать по вышеуказанному адресу на имя ученого секретаря диссертационного совета.
Ученый секретарь
диссертационного совета Д 212.200.14, доктор технических наук, профессор
А. В. Егоров
Общая характеристика работы
Актуальность темы исследования. Единая система газоснабжения (ЕСГ) России управляется распределённой иерархической Автоматизированной Системой Диспетчерского Управления (АСДУ).
В работе диспетчерских служб (ДС) всех уровней активно применяются многочисленные программно-вычислительные комплексы (ПВК) систем поддержки принятия диспетчерских решений (СППДР), а также компьютерные диспетчерские тренажеры, основанные на моделировании режимов систем газоснабжения (СГ).
В настоящее время реализуется проект модернизации АСДУ ЕСГ России. Для информационного обеспечения всех подсистем АСДУ создаются централизованные источники актуализированных данных и распределённые средства доступа к ним — единое информационное пространство (ЕИП). Для вычислительного обеспечения потребностей АСДУ создан ряд мощных центров обработки данных (ЦОД).
Новые требования предъявляются и к ПВК СППДР:
-быстрое решение наиболее вычислительно-сложных задач моделирования СГ на основе параллельных и распределённых вычислений и с использованием всех доступных вычислительных ресурсов: от персональных компьютеров ДС до ЦОД;
-работа в многопользовательском, распределённом режиме, соответствующем иерархии АСДУ;
-интеграция с единым информационным пространством;
—обеспечение согласованности результатов работы различных ПВК, организация их взаимодействия на основе стандартных протоколов информационного обмена.
Реализацию перечисленных требований кардинально затрудняет ряд исторически сложившихся факторов:
-использование в каждом ПВК собственного расчётного модуля, взаимодействие с которым осуществляется по закрытому интерфейсу, затрудняет согласование результатов работы различных ПВК, их совместное использование, интеграцию с ЕИП;
-ориентация расчётных модулей на работу в рамках одного компьютера и последовательную организацию вычислительных процессов, что не соответствует современным требованиям;
-монолитность архитектуры расчётных модулей - длительная разработка на основе процедурного подхода привела к высокой степени взаимопроникновения между их элементами, что крайне затрудняет осуществление модернизации.
Один из путей преодоления проблем, связанных с перечисленными факторами -разработка унифицированного обеспечения иерархической, распределённой СППДР программно-вычислительными ресурсами для решения задач ДС всех уровней на базе единой вычислительной среды — единого вычислительного пространства (ЕВП) АСДУ ЕСГ.
В настоящей диссертации спроектирована и реализована такая вычислительная среда.
Степень разработанности темы исследования. В работе отмечен и проанализирован вклад в областях науки, связанных с темой диссертационного исследования, следующих отечественных и зарубежных учёных:
-Альтшуль А.Д., Берман Р.Я., Бобровский С.А., Вольский Э.Л., Галиуллин З.Т., Григорьев Л.И., Константинова И.М., Леонов Д.Г., Меренков А.Н., Митичкин С.К.,
Новицкий H.H., Сарданашвили СЛ., Селезнев В.Е., Ставровский Е.Р., Сухарев М.Г., Чарный И.А., Хасилев В.Я., Швечков В.А., Юфин В.А., Яковлев Е.И. и др. в области математических методов, вычислительных алгоритмов моделирования и оптимизации режимов транспорта газа и их программной реализации в ПВК СППДР;
-Воеводин В.В., Таненбаум Э.С., Флинн М., Хоар Т., Хьюит К., Шохам Й., и др. в области теоретических основ и программных технологий программирования параллельных, распределённых, высокопроизводительных вычислений, создания распределённых систем;
-Буч Г., Гамма Э., Дисков Б., МакКоннел С., Мартин Р., Страуструп Б., Фау-лер М., и др. в области объектно-ориентированного программирования, принципов, шаблонов и методологий проектирования программного обеспечения.
Цель и задачи диссертационной работы. Целью диссертационной работы является разработка моделей, методов, алгоритмов и программная реализация мультизадачной вычислительной среды комплекса моделирования режимов систем газоснабжения на основе применения технологий параллельных и распределённых вычислений.
Для достижения поставленной цели были решены следующие задачи:
1. Анализ текущего состояния и направлений развития АСДУ ЕСГ России, единого информационного пространства системы диспетчерского управления ЕСГ, архитектур построения ПВК моделирования режимов СГ, технологий программирования параллельных и распределённых вычислений.
2. Проектирование компонентной среды организации параллельных и распределённых вычислительных процессов решения задач моделирования режимов СГ и алгоритмов создания вычислительных сервисов в этой среде.
3. Разработка архитектурных решений и алгоритмов для вычислительных сервисов решения задач численного моделирования режимов СГ, адаптации модели режимов СГ к фактическим режимам.
4. Программная реализация мультизадачной вычислительной среды и вычислительных сервисов ее под держки.
5. Проверка корректности и измерение производительности разработанного программного обеспечения в однопользовательском, сетевом, распределённом режимах.
6. Разработка методологии перехода ПВК СППДР к использованию вычислительных сервисов, созданных на базе мультизадачной вычислительной среды, осуществление интеграции с одним из ПВК СППДР в тестовом режиме.
При этом задачи, поставленные в данной диссертации, в области программных средств обеспечения систем поддержки принятия диспетчерских решений АСДУ Единой системы газоснабжения России решаются впервые.
Научная новизна. Основные научные результаты работы состоят в следующем.
1. Разработаны архитектурные решения, методы, алгоритмы и программная реализация компонентной вычислительной среды параллельного и распределённого моделирования режимов СГ, обеспечивающей эффективное использование вычислительных ресурсов в однопользовательском, сетевом, распределённом режимах, механизмы интеграции с ПВК СППДР на основе открытого предоставления вычислительных сервисов.
2. Разработаны специализированные сервисы, управляющие вычислительными процессами и ресурсами, вычислительные сервисы моделирования режимов СГ, поз-
воляющие многократно ускорить решение расчётных задач, реализуя параллельные вычисления общего назначения на графических картах. '
3. Разработан вычислительный сервис решения многоуровневых итерационных задач, организующий параллельное моделирование множества однородных и разнородных СГ в распределённой среде; показана его эффективность при использовании «облачных» вычислительных ресурсов Amazon Web Services Elastic Compute Cloud.
Практическая ценность работы заключается в создании базовой многозадачной вычислительной среды для решения наиболее сложных расчётных задач моделирования режимов распределенных СГ большой размерности, позволяющей повысить эффективность организации вычислительных процессов решения задач ДУ на основе создания единого вычислительного пространства АСДУ.
Разработанная компонентная вычислительная среда параллельного и распределённого моделирования режимов СГ впервые позволяет реализовать решение задач моделирования связанных технологических режимов смежных разнородных технологических комплексов: системы добычи, магистрального транспорта, подземного хранения и распределения газа. '
Методология и методы исследования. В работе применены следующие основные методы:
-математического и численного моделирования и решения расчётных задач диспетчерского управления для систем газоснабжения;
-объектно-ориентированного проектирования, программирования гетерогенных параллельных вычислений, создания распределённых систем.
Положения, выносимые на защиту:
-Разработаны архитектурные решения в области построения мультизадачной вычислительной среды, основанной на реализации сервис-ориентированного подхода средствами компонентного программного обеспечения промежуточного уровня и явном управлении вычислительными ресурсами.
-Осуществлена алгоритмическая и программная реализация ядра вычислительной среды — сервисов управления типизированными комплектами вычислительных ресурсов и сервиса диспетчеризации вычислительных ресурсов.
-Разработаны архитектурные решения, осуществлена алгоритмическая и программная реализация вычислительного сервиса моделирования режимов систем газоснабжения (СГ), организующего параллельное моделирование объектов СГ, в том числе с использованием вычислений общего назначения на графических картах.
-Разработаны архитектурные решения, осуществлена алгоритмическая и программная реализация вычислительного сервиса решения многоуровневых вычислительных итерационных задач ДУ СГ в распределённой среде.
Степень достоверности и апробация результатов. Основные результаты диссертационной работы докладывались на следующих конференциях и семинарах:
1. 9-я Всероссийская конференция молодых учёных, специалистов и студентов по проблемам газовой промышленности «Новые технологии в газовой промышленности» (Москва, РГУ Нефти и газа, 2011 г.).
2. 9-я Всероссийская научно-техническая конференция «Актуальные проблемы развития нефтегазового комплекса России» (Москва, РГУ Нефти и газа, 2012 г.).
3. 66-я Международная молодёжная научная конференция «Нефть и газ 2012» (Москва, РГУ Нефти и газа, 2012 г.).
4. Всероссийский научный семинар с международным участием «Математические модели и методы анализа и оптимального синтеза развивающихся трубопроводных и гидравлических систем» (Вышний Волочек, УПЦ Залучье, 2012 г.).
5.5-я Международная конференция «Компьютерные технологии поддержки принятия решений в диспетчерском управлении газотранспортными и газодобывающими системами Диском 2012» (Москва, ВНИИГаз, 2012 г.).
Публикации. Материалы диссертации опубликованы в 8 печатных работах [1-8] из них 3 статьи в рецензируемых журналах [1-3] и 5 тезисов докладов.
Личный вклад автора. Содержание диссертации и основные положения, выносимые на защиту, отражают персональный вклад автора в опубликованные работы. Подготовка к публикации полученных результатов проводилась совместно с соавторами, причем вклад диссертанта был определяющим. Все представленные в диссертации результаты получены лично автором.
Структура и объем работы. Диссертация состоит из введения, трех глав, выводов, литературы из 160 наименований и 1 приложения. Работа изложена на 123 страницах основного текста и 19 страницах приложения. Текст работы содержит 38 рисунков и 11 таблиц.
Содержание работы
Во введении обоснована актуальность диссертационной работы, сформулирована цель и аргументирована научная новизна исследований, показана практическая значимость полученных результатов, представлены выносимые на защиту научные положения.
В первой главе «Анализ проблем в области разработки и развития компьютерных программно-вычислительных комплексов моделирования систем газоснабжения» рассмотрено современное состояние функциональной подсистемы компьютерного моделирования и поддержки принятия диспетчерских решений в составе АСДУ ЕСГ России.
Единая система газоснабжения (ЕСГ) России представляет собой сложный производственно-технологический комплекс, объединяющий объекты добычи, переработки, транспорта и подземного хранения газа в единый иерархически управляемый процесс.
Иерархическое управление ЕСГ осуществляется автоматизированной системой диспетчерского управления (АСДУ), важнейшей проблемой модернизации которой является создание единого информационного и вычислительного пространств.
ЕВП может быть создано на базе единой вычислительной среды, обеспечивающей полную поддержку технологий параллельных и распределённых вычислений, механизмов информационного взаимодействия и интеграции, с последующей разработкой необходимых вычислительных сервисов на её базе.
До последнего времени актуальным оставалось решение следующих задач: разработка архитектуры, алгоритмической и программной реализации единой вычислительной среды, обеспечивающей основу для разработки унифицированного обеспечения распределённой иерархической СППДР АСДУ вычислительными сервисами на базе технологий параллельных и распределённых вычислений;
-разработка вычислительных сервисов решения конкретных расчётных задач моделирования СГ на базе единой вычислительной среды;
- разработка методологии интеграции ПВК СППДР с новыми вычислительными сервисами, реализация интеграционных проектов, тестирование корректности и производительности реализованных решений.
Следующие главы диссертации посвящены решению указанных проблем.
Во второй главе «Разработка компонентной среды организации параллельного и распределённого вычислительного процесса решения расчётных задач СППДР» предложена архитектура вычислительной среды, определены методы и средства её построения, предложен общий алгоритм разработки вычислительных сервисов на её основе, спроектированы вычислительные процессы решения ряда конкретных задач моделирования режимов СГ.
На основании проведённого в первой главе анализа предметной области сформулированы основные требования к разработанной в диссертации компонентной, мультизадачной вычислительной среде:
—модульность, гибкость, расширяемость и развиваемость;
-организация в распределённой среде вычислительных процессов произвольной конфигурации, в том числе соответствующей распределённой иерархии АСДУ ЕСГ;
-минимизация накладных расходов удалённого взаимодействия в распределённой среде;
-высокая производительность решения вычислительно-сложных задач моделирования СГ за счёт полной поддержки технологий параллельного и распределённого программирования, в том числе вычислений общего назначения на графических картах;
-унифицированное вычислительное обеспечение СППДР АСДУ за счёт предоставления вычислительных сервисов на основе стандартных протоколов;
-наличие развитых механизмов информационного взаимодействия для интеграции с ЕИП АСДУ.
Данные требования явились основой для последующей разработки проектных, алгоритмических и программных решений реализации ЕВП.
Архитектура построения вычислительной среды
Для реализации перечисленных выше требований при разработке архитектуры вычислительной среды были приняты три ключевых принципа.
1. Сервис-ориентированный подход на основе использования компонентного программного обеспечения промежуточного уровня (middleware).
2. Обеспечение явного управления вычислительными ресурсами.
3. Разработка вычислительных сервисов для среды по унифицированному алгоритму, позволяющему максимально использовать её преимущества.
Перечисленные принципы последовательно раскрыты в работе.
Сервис-ориентированный подход средствами компонентного middleware
Сервис-ориентированный подход заключается в разработке программного обеспечения на основе использования слабо связанных компонентов, оснащённых стандартизированными интерфейсами для взаимодействия по стандартизированным протоколам в распределённой среде - сервисов.
Для реализации сервис-ориентированного подхода применяются различные технологии, наиболее распространённая из них — использование SOAP (Simple Object Access Protocol) Web-сервисов. Однако, на основе анализа различных технологий, принято решение использовать в диссертации компонентное обеспечение промежуточного уровня (middleware), характеризующееся более высокой эффективностью.
Сервис-ориентированный подход, реализованный на базе middleware, обеспечивает:
- высокую степень модульности системы — она строится из набора слабо связанных компонентов с чётко определёнными интерфейсами, что создаёт предпосылки для её гибкости;
- независимость от физического расположения компонент; инвариантность к платформе; поддержку различных языков программирования;
- простоту программирования - middleware предоставляет поддержку исполнения синхронных и асинхронных удалённых вызовов, развитую объектную модель, дополнительные инструментальные средства построения распределённых компонентных систем;
- высокую производительность - middleware, в отличие от Web-сервисов, использует эффективные бинарные протоколы, многократно снижающие накладные расходы взаимодействия в распределённой среде.
Сервисы в распределённой системе выполняются компьютерами, связанными сетями передачи данных, - узлами, каждый из которых:
- содержит набор вычислительных ресурсов: центральных процессоров (ЦП); GPGPU-видеокарт (General Purpose Graphics Processing Unit); других устройств, способных осуществлять вычисления;
-работает под управлением той или иной операционной системы, выполняет ряд приложений, написанных с использованием тех или иных языков программирования и технологий параллельного программирования;
- содержит middleware runtime - среду времени выполнения компонентного программного обеспечения промежуточного уровня, выполняющую функции адаптера между прикладными сервисами и низкоуровневыми механизмами удалённого взаимодействия.
Каждый сервис в системе строится из двух частей: интерфейса и исполнителя. Интерфейс сервиса описывает множество предоставляемых сервисом методов на специализированном языке описания интерфейсов. Исполнитель сервиса реализует методы, объявленные в интерфейсе, функционирует в рамках вычислительных ресурсов узла распределённой системы, принимая и обрабатывая удалённые вызовы методов от клиентов.
Сервисы способны как предоставлять некоторую функциональность для клиентов, так и использовать другие сервисы, то есть одновременно находиться в роли и клиента, и сервера.
Для использования методов, предоставляемых сервисом, клиент генерирует объект-посредник - локальный для клиента объект, реализующий интерфейс сервиса - и использует его. Посредник устанавливает связь с исполнителем сервиса и переадресует локальные вызовы удалённому серверу прозрачно для клиента.
Схема взаимодействия сервисов в распределённой среде представлена на рисунке 1.
Узел Ni
_Операциоиная система: Windows
Языни программирования: С++, С'",--.
Вычислительные ресурсы
ЦП
. Ядро 1 Ядро 2
Видеокарта
Технологии программирования
ОрепМР
CU DA
Приложения
Исполнитель
сервиса Б
........
Описание ; интерфейса * сервиса 5: I метод 5::1, \ метод 5::2...;
Реализует методы, объявленные в интерфейсе
Определяет методы, предоставляемые сервисом
Вычислительные ресурсы
Йдоо 1
ЦП __Ядоо.2____ _ЯдюЗ
__.ЯДроА„.
Узел N2
Технологии программирования
ТВВ, MKL
Посредник
-------------д-------
Клиент
Приложения
ГО V
II
Языки программирования: С++, Java,...
Операционная система: Linux
2 X • X
Рисунок 1 - Схема взаимодействия сервисов в распределённой среде
Традиционные подходы к управлению вычислительными ресурсами
В работе проанализированы и выделены следующие основные подходы к управлению вычислительными ресурсами в распределённых системах.
Прозрачное управление вычислительными ресурсами балансировщиком нагрузки. Балансировщик принимает удалённые вызовы методов сервисов от клиентов и переадресует их узлам распределённой системы, обеспечивая равномерное распределение нагрузки. Выделяется два типа сервисов.
1. Без сохранения состояния - вся необходимая информация для исполнения сервиса передаётся при каждом вызове. В этом случае распределение нагрузки организуется наиболее просто - сервер приложений переадресует вызов клиента наименее загруженному узлу.
2. С сохранением состояния - клиент выполняет последовательность операций, меняющих состояние удалённого объекта и зависящих друг от друга. В этом случае распределение нагрузки осуществляется более сложно. Применяются различные стратегии хранения состояний объектов в оперативной памяти, на жёстком диске, в базе данных.
Управление ресурсами вычислительного кластера штатной системой очередей. Для совместной работы множества пользователей с вычислительными кластерами используется следующая система: для запуска расчёта необходимо оформить вычислительное задание, состоящее из запускаемой программы и спецификации необходимых для её выполнения вычислительных ресурсов, и поставить его в очередь, используя штатную систему управления заданиями. Такая система планирует очерёдность
выполнения поставленных в очередь заданий, чтобы максимизировать общую загрузку кластера.
Явное управление вычислительными ресурсами
Для решения вычислительно-сложных многоуровневых итерационных задач
моделирования СГ характерны требования, выходящие за рамки традиционных подходов.
Монопольный доступ клиента к вычислительному ресурсу. В каждый конкретный момент времени с вычислительным ресурсом может работать только один клиент, что целесообразно по ряду причин:
-большинство расчётных задач моделирования СГ является вычислительно сложными и могут полностью использовать потенциал ресурса - в такой ситуации разделение вычислительного ресурса между несколькими расчётными процессами на основе многозадачности приводит к снижению производительности;
-для некоторых вычислительных устройств, в частности CUDA-видеоадаптеров, использование в режиме многозадачности невозможно из-за недостаточно развитых механизмов прерываний, защиты памяти — в таком случае организация монопольного доступа необходима.
Выделение вычислительным сервисам, использующим технологии параллельных и распределённых вычислений, соответствующих вычислительных ресурсов. Для функционирования высокопроизводительных вычислительных сервисов требуются специализированные вычислительные ресурсы. Например, для сервиса, использующего вычисления общего назначения на графических картах, требуется соответствующий видеоадаптер; для сервиса, использующего технологию программирования MPI (Message Passing Interface), требуется несколько узлов с настроенной средой выполнения MPI.
Прямой доступ клиента к серверу. В течение монопольной работы клиента с вычислительным ресурсом целесообразно организовать между ними прямой, без посредников, доступ.
Поддержка операций с сохранением состояния удалённого вычислительного ресурса без накладных расходов организуется автоматически за счёт монопольной работы клиента с вычислительным ресурсом. В том числе реализуется сохранение состояния памяти сопроцессоров удалённого вычислительного ресурса.
Управление конфигурацией вычислительного процесса в распределённой среде с использованием наиболее подходящих типов вычислительных ресурсов: от персональных компьютеров до ЦОД.
Перечисленные требования реализованы следующим образом.
Все сервисы в системе подразделены на две категории: служебные и вычислительные.
-Вычислительные сервисы решают расчётные задачи.
-Служебные сервисы организуют взаимодействие клиентов, сервисов и вычислительных ресурсов в распределённой среде.
Введено понятие комплекта вычислительных ресурсов как некоторой совокупности вычислительных ресурсов: от подмножества вычислительных ресурсов одного узла до объединения нескольких узлов.
Каждому комплекту вычислительных ресурсов присваивается тип комплекта вычислительных ресурсов. На основе типа сопоставляются вычислительные сервисы и подходящие для их выполнения комплекты вычислительных ресурсов.
В рамках каждого комплекта вычислительных ресурсов запускается служебный сервис управления типизированным комплектом вычислительных ресурсов, предоставляющий методы для запуска вычислительных сервисов соответствующего типа в рамках управляемого комплекта.
Для явного управления вычислительными ресурсами на одном из узлов вычислительной среды запускается служебный сервис диспетчеризации ресурсов. Его интерфейс предоставляет клиенту возможность установления прямого монопольного соединения с сервисом управления комплектом вычислительных ресурсов заданного типа — для этой операции введён термин «захват вычислительного ресурса».
Схема функционирования явного управления типизированными комплектами вычислительных ресурсов приведена на рисунке 2.
Клиент
3. Запуск вычислительных сервисов на захваченном комплекте ресурсов
1. Запрос комплекта ресурсов типа Т|
Сервис управления ресурсом типа 1,
Вычислительный сервис $1
Вычислительный сервис Б;
Вычислительный сервис 5„
2. Установление связи с У.С. Типа Т|
Сервис диспетчеризации комплектов вычислительных ресурсов
Пулы посредников сервисов управления (С.У.) комплектами вычислительных ресурсов
Пул посредников С.У. (П.С.У.) типа Т| Пул посредников С.У. (П.С.У.) типа Т| '
П.С.У. Т( ] П.С.У.Т, | П.С.У. Т, П.СУ.Т, | О.СУ.Т, " "(
Узел Иц
С.У.Т, С.У.Т, С.У.Т,
Комплект ресурсов типа Т| Комплект ресурсов типа Т| Комплект ресурсов типа Т,
Узел N. Узел N. Узел N3
С.У.Т,
Комплект ресурсов типа Т,
Узел N.
3 т>
У
Рисунок 2 - Схема явного управления комплектами вычислительных ресурсов
Первоначально выполняется этап формирования вычислительной среды. На узлах распределённой системы формируются типизированные комплекты вычислительных ресурсов и запускаются соответствующие служебные сервисы управления комплектами ресурсов. На одном из узлов запускается сервис диспетчеризации комплектов ресурсов. Сервисы управления комплектами вычислительных ресурсов регистрируются в сервисе диспетчеризации, передавая ему свои объекты-посредники. Полученные посредники собираются сервисом диспетчеризации в типизированные пулы (для каждого типа объектов создаётся свой пул). Тем самым формируется множество комплектов вычислительных ресурсов, управляемых сервисом диспетчеризации.
Для осуществления своих вычислительных потребностей клиент инициирует следующую последовательность действий.
1. Клиент определяет, какой тип комплекта вычислительных ресурсов поддерживает выполнение необходимой ему операции и запрашивает у сервиса диспетчеризации объект-посредник сервиса управления комплектом вычислительных ресурсов необходимого типа.
2. Сервис диспетчеризации обеспечивает установление прямого монопольного соединения между клиентом и сервисом управления комплектом ресурсов запрошенного типа, передавая клиенту объект-посредник, изъятый из соответствующего пула.
3. Клиент использует методы сервиса управления комплектом вычислительных ресурсов для запуска необходимых вычислительных сервисов на захваченном комплекте вычислительных ресурсов.
4. Клиент выполняет удалённые вызовы методов запущенных вычислительных сервисов для выполнения необходимой работы.
5. Клиент освобождает захваченный вычислительный ресурс, и сервис диспетчеризации возвращает посредник его сервиса управления в соответствующий пул.
Контроль над организацией вычислительного процесса в распределённой среде достигается за счёт выбора клиентом сервиса диспетчеризации, у которого он запрашивает необходимый комплект вычислительных ресурсов - тем самым клиент определяет пул, из которого ему будет выделен комплект вычислительных ресурсов.
В работе рассмотрены комбинации взаимного расположения клиентов, сервиса диспетчеризации, множества управляемых им вычислительных ресурсов, формирующие следующие конфигурации и режимы работы вычислительных процессов: однопользовательский режим; клиент-серверный режим; режим с использованием вычислительных ресурсов клиентов в локальной сети; распределённый режим, в частности, соответствующий распределённой иерархии АСДУ; комбинированный режим.
Технологии реализации архитектурных решений
С целью выбора наиболее подходящих технологий реализации предложенной архитектуры в работе проведён сравнительный обзор современных технологий гетерогенного параллельного программирования, распределённого программирования, создания распределённых систем. Осуществлён выбор, представленный в таблице 1.
Таблица 1 - Технологии реализации вычислительной среды
Категория Технология Назначение
Программирование систем с общей памятью OpenMP, Intel ТВВ, библиотеки численных методов Программирование сложных, разветвлённых алгоритмов
Программирование высокопараллельных вычислений CUDA, библиотеки численных методов Программирование простых алгоритмов с высокой степенью параллелизма
Программирование вычислительных кластеров MPI Программирование наиболее вычислительно сложных задач
Компонентное middleware ZeroC ICE Использование в качестве базы построения распределённой системы
12
Выбранные технологии в большей степени, нежели их конкуренты, отвечают следующим требованиям: кросс-платформенность; высокоуровневость модели программирования; производительность. Они предпочтительны при разработке вычислительных сервисов для предложенной в работе среды, однако модульность системы позволяет при необходимости использовать и любые другие технологии программирования.
Проектирование, алгоритмическая и программная реализация разработанных вычислительных сервисов
В работе проведён анализ структуры задач моделирования режимов СГ и выделен базовый комплекс расчётных задач, включающий в себя следующие основные процедуры:
- расчёт свойств газа и газового потока;
- процедуры моделирования режимов отдельных объектов СГ: трубопроводы, крановые системы, аппараты воздушного охлаждения, газоперекачивающие агрегаты (ГПА);
- процедуры моделирования подсистем СГ: трубопроводные системы, компрессорные цеха (КЦ), магистральные газопроводы, газотранспортные системы.
На основе процедур базового комплекса расчётных задач решаются задачи более высокого уровня - в частности, задачи оптимизации и прогнозирования режимов СГ, мониторинга фактического состояния СГ, ситуационного анализа, идентификации эмпирических параметров модели.
Многие высокоуровневые расчётные задачи, основанные на использовании базового комплекса, представляют собой многоуровневые иерархические вычислительные процессы, в которых моделирование режима отдельной СГ является основным вычислительным элементом.
Эффективное решение таких задач требует организации одновременного моделирования нескольких режимов СГ в распределённой среде с использованием параллельных вычислений для моделирования каждого из режимов.
В данной диссертационной работе спроектированы и реализованы распараллеленные и распределенные вычислительные сервисы на примере решения следующих задач:
-моделирование режимов СГ;
-идентификация эмпирических параметров модели режимов СГ.
Общая схема моделирования режимов систем газоснабжения
Для решения задачи моделирования режимов СГ топология системы задаётся условно-ориентированным «расчётным графом» (дуги имеют направление потоков газа, но оно может изменяться в процессе расчётов)
С = 0ЛЯ),|У| =т,|£| =п. (1)
V - множество узлов графа, Е - множество дуг.
Дугам графа соответствуют моделируемые технологические объекты, участвующие в перекачке газа (трубопроводы, крановые системы, ГПА, КЦ и так далее), -узлы графа соединяют входы/выходы дуг - соответствующих моделируемых объектов.
В краевых узлах графа задаются параметры газового потока, необходимые для расчёта режима.
Для каждого моделируемого объекта на основании математического представления физических законов моделируемого процесса формируется расчётная модель, которую можно условно представить в виде функционала:
(Твых, <?} = Твх, Gas, Environment, Object), (2)
где q - расход газа по дуге, Рвх, Рвых - давления на входе и выходе дуги, Твх, Твых — температуры газа на входе и выходе дуги, Gas - компонентный состав газового потока, Environment - параметры внешней среды, Object - параметры объекта: нормативно-справочные (паспортные) данные; параметры фактического состояния; режим-но-технологические ограничения.
Для сокращения выкладок используется упрощённый вид функционала (2):
Ч(Явх. Р»ы„А) (3)
где Ä — множество прочих параметров объекта.
В общем виде функционал (3) представляет собой итерационную вычислительную процедуру.
Решение задачи состоит в определении поля давлений и температур во всех узлах графа, обеспечивающего баланс потоков по дугам во всех узлах графа, и соблюдение всех режимно-технологических ограничений расчётных объектов.
Эта задача решается итерационным (i - номер текущей итерации) методом узловых давлений, состоящим из последующих этапов.
1. Задание начального поля давлений и температур газа {Р$, Т£} в узлах графа.
2. Расчёт расхода по каждой на основе функционала (3).
3. Проверка наличия существенных дисбалансов в узлах графа.
\Sqlk+1\ < eq, (4)
где к - номер узла, eq — точность балансирования потоков. Если дисбалансов нет - алгоритм завершён, иначе - переход к следующему шагу.
4. Формирование системы уравнений баланса потоков газа в каждом /'-м узле графа в соответствии с 1-м законом Кирхгофа:
Sq^^qiViP&.PÜD-Q^O. (5)
i=i
где Qic - заданные притоки или отборы газа в к-м узле, Nk — количество инцидентных к —му узлу дуг.
Функционал (3) на 1+1 -й итерации представляется линейной составляющей разложения в ряд Тейлора:
' я'Г{ри, pLЬ1Х) - я! (6)
i,ESX i.KblX
и подставляется в соответствующие уравнения (5). В результате формируется система линейных алгебраических уравнений относительно расчетных компонент A Pl+1.
5. Решение системы линейных уравнений (5), расчёт нового поля давлений газа в узлах графа:
Pf 1 = P[ + g- bPl+1, (7)
где д - регуляризационный параметр, одинаковый для всех выражений (7), начальное значение д равно единице.
6. Расчёт по каждой дуге расхода и температуры потока газа при новом поле давлений по функционалу (3).
Если для каких-то объектов происходит нарушение режимно-технологических ограничений, осуществляется коррекция значения (7) посредством уменьшения параметра д.
7. Вычисление расчётного суммарного дисбаланса потоков газа в узлах графа
т
= (8) к=1
Определение параметра д для выполнения условия Р1+1 < Р1.
Переход к проверке условия завершения алгоритма (шаг 3).
Пример сервиса моделирования режимов систем газоснабжения
Вычислительный сервис моделирования режимов систем газоснабжения реализует метод узловых давлений с распараллеливанием этапов расчёта расходов по дугам графа на шагах (2), (6) и решения системы уравнений на шаге (5).
Расчёт расходов потоков газа по дугам графа по давлениям в краевых узлах дуг на итерационных шагах осуществляется параллельно, поскольку расчет режима каждой дуги является независимой процедурой. Для эффективного решения этой задачи разработано специализированное решение. Его схема представлена на рисунке 3.
Вычислительный сервис моделирования режимов систем газоснабжения реализует метод узловых давлений с распараллеливанием этапов расчёта расходов по дугам графа на шагах (2), (6) и решения системы уравнений на шаге (5).
Расчёт расходов потоков газа по дугам графа по давлениям в краевых узлах дуг на итерационных шагах осуществляется параллельно, поскольку расчет режима каждой дуги является независимой процедурой. Для эффективного решения этой задачи разработано специализированное решение. Его схема представлена на рисунке 3.
Все дуги расчётного графа разбиваются на группы по типам объектов — формируются векторы однотипных расчётных объектов.
Для каждого вектора расчётных объектов разработан свой менеджер параллельного моделирования, осуществляющий эффективное размещение в памяти и параллельное моделирование управляемых объектов. Для координации совместной работы всех менеджеров параллельного расчёта разработан сервис суперменеджер.
Параллельное решение системы уравнений выполняется разработанным вычислительным сервисом, основанным на оптимизированной библиотеке численных методов.
Для вычислительного сервиса решения задачи моделирования режимов СГ разработаны все необходимые сервисы: сервис загрузки параметров объектов расчётной схемы из хранилища; сервисы менеджеров параллельного моделирования режимов дуг всех типов, составляющих расчётную сХему; сервис суперменеджер, координирующий параллельную работу менеджеров расчёта режимов векторов дуг схемы; сервис параллельного решения систем уравнений.
Схема взаимодействия созданных сервисов представлена на рисунке 4.
Для работы вычислительных сервисов, используемых сервисом моделирования режимов СГ, требуются следующие вычислительные ресурсы:
-Многоядерный центральный процессор для организации вычислительного процесса моделирования; параллельного моделирования расчётных объектов, обла-
дающих сложными вычислительными моделями, соответствующими менеджерами параллельного моделирования; работы сервиса суперменеджера;
Рисунок 3 — Параллельное моделирование объектов расчётной схемы
-ОРОРи-видеокарта СШЭА для параллельного моделирования режимов многочисленных объектов, обладающих простыми вычислительными моделями, таких как трубопроводы; решения систем линейных алгебраических уравнений с использованием оптимизированной библиотеки численных методов.
Таким образом, для эффективного выполнения вычислительного сервиса моделирования режимов СГ необходим комплект вычислительных ресурсов, содержащий центральный процессор и С1ГОА-видеокарту. Тип такого комплекта вычислительных ресурсов назван «ЦП + С1ГОА».
z &
ПВК СППДР
(I) Запрос ресурса тип» ЦП * США "
(2) Захват ресурса типа цл* США
Сервис диспетчеризации
Репозитсрий
схем
БД 5СА0А
| (4) Расчет ГТС с 13данным |<|
: (6) загрузка схемы
2 Вычислительный ресурс: ЦП + С1ША видеокарта 8
е -.............;.......................................................................
д ; (5) Загрузить схему по 1(1
—.; ( Сервис расчёта Сервис
. режима а /(8) Передача схемы I загрузки из БД
~ (7) загрузка режима^
(9) модеякровап. .с. дуги С0ОТ1ИТ1, и систему ура.«™» -
Сервис суперменеджер
Г Сервис параллельного решения системы уравнений
(10) Моделирование дуг типа Т„
(10) моделирование дуг типа Ъ
—(10) моделирование дуг типа Тл
Г Сервис параллельного ; | Сервис параллельного \ моделирования дуг типа Т^ ; \ моделирования дуг типа Тг )
Центральный процессор
Сервис параллельного ] моделирования дуг типа Т„}
СиОА-видеокарта
Рисунок 4 - Сервис расчёта режима системы газоснабжения
Пример сервиса идентификации эмпирических параметров модели режимов систем газоснабжения
Идентификация параметров модели режима СГ производится для повышения адекватности расчётных результатов модели, то есть их приближения к замеряемым значениям параметров газового потока в контрольных точках системы. Решение этой задачи требует большого объёма вычислений и имеет потенциал для многократного ускорения с использованием параллельных и распределённых вычислений в разработанной автором вычислительной среде.
Исходных данных задачи те же, что и для расчёта режима СГ, а также дополнительная, избыточная информация - множество значений замеров параметров газового потока в некоторых контрольных узлах СГ. В качестве замеров часто используются:
-Р(*, Т(* - замеры давления и температуры газа на входах и выходах КЦ, ГПА;
~ расходы газового потока, замеряемые на газоизмерительных станциях
(ГИС).
Состав эмпирических параметров модели СГ определяется типами технологических объектов системы. Для трубопроводных систем такими параметрами являются:
-Кто, Л"эф - коэффициенты теплообмена и гидравлической эффективности трубопроводов, а для компрессорных цехов:
-Кп,Кх - интегральные по КЦ поправочные коэффициенты на газодинамические характеристики центробежных нагнетателей-(ЦБН) однотипных ГПА, а также на индивидуальные коэффициенты технического состояния ЦБН ГПА.
Для математического описания рассматриваемой задачи введём следующие обозначения: а £ ЕПа, вектор идентифицируемых параметров расчётной модели, р* 6 Епг> и ре - векторы замеряемых и расчётных параметров режима соответственно.
Множество расчётных параметров р модели процесса является функцией идентифицируемых параметров а:
Р = № (9)
Задача идентификации эмпирических параметров модели в общем виде сводится к минимизации некоторого критерия рассогласования р* и р, в качестве которого можно использовать различные критерии математической статистики, в частности сумму нормированных квадратов разностей разноразмерных параметров
. V (Рг-Рг(Р-У\2
Г-1,.:Пр
Для решения задачи (10) применяются различные численные методы - в частности, метод чувствительности, основанный на итерационном поиске компонент искомого вектора эмпирических параметров:
а,+1 = а1 + д • Да,+\ (11)
где д - регуляризационный параметр.
Условием минимума (10) является система уравнений
дйа1к+1
= 0, для к = 1,... па (12)
Функционал (9) на 1+1 - ой итерации представляется в виде линейной составляющей разложения в ряд Тейлора:
па 1
Рг(я,+1) = Рг(й') + £ Р^ДаГ) (13)
¡=1 ^ 1 '
Подставляя (13) в (12) и выполняя ряд преобразований, получаем систему линейных уравнений относительно Да'+1:
Процедура метода чувствительности строится на основе итерационного формирования и решения системы линейных уравнений (14), вычисления поправок Да'+1 к идентифицируемым параметрам модели режима СГ.
Для численной аппроксимации производных в (14) требуется вычисление па + 1 режимов СГ при следующих значениях вектора эмпирических параметров модели: а = (а1,а2,...,ак+,...,аПа); = (я1.а2. ...,ак + 5, ...,а„а),к = 1 ..па (15)
Размерность задачи многократно возрастает, когда имеется временной ряд замеров, и функция цели задачи (10) содержит сумму рассогласований контрольных параметров по всем временным слоям £ = [£0, ¿у].
На каждой внешней итерации минимизации функции цели (10) при соответствующих состояниях вектора идентифицируемых параметров а расчеты режимов СГ могут выполняться независимо, поэтому имеется возможность их распараллеливания. Расчёт даже одного режима СГ с помощью разработанного в данной диссертации вычислительного сервиса полностью использует вычислительные ресурсы отдельного узла среды моделирования. Поэтому необходимо организовать одновременный расчёт множества режимов СГ на нескольких узлах распределённой системы - многоуровневый итерационный вычислительный процесс в распределённой среде.
Схема работы вычислительного сервиса, на примере задачи идентификации эмпирических параметров модели режима, в распределённой вычислительной среде представлена на рисунке 5.
■е-
г
Рисунок 5 - Схема работы вычислительного сервиса идентификации эмпирических параметров модели СГ в распределённой среде
На этапах (1) - (6) осуществляется формирование вычислительной среды: запуск сервиса идентификации, захват им дополнительных вычислительных ресурсов типа «ЦП + С1ЮА» для моделирования режимов СГ при различных значениях вектора эмпирических параметров а.
На этапе (7) реализуется итерационный многоуровневый процесс идентификации параметров модели СГ в распределённой среде.
Сервис идентификации запускает на каждом из захваченных ресурсов сервис расчёта режима СГ и вызывает метод загрузки адаптируемой СГ на каждом из них.
На каждой итерации метода чувствительности сервис идентификации формирует очередь из всех значений вектора идентифицируемых параметров модели (15), которые необходимо рассчитать для вычисления частных производных 1 в (14).
Сервис идентификации выполняет асинхронный запуск расчёта режима СГ на каждом из доступных сервисов моделирования режима СГ. Как только один из вычислительных ресурсов заканчивает свой расчёт СГ, сервис идентификации извлекает из очереди очередную компоненту вектора а и снова загружает его работой.
После исчерпания очереди сервис идентификации формирует систему уравнений (12), решает её с помощью сервиса решения систем уравнений, формирует новое состояние вектора идентифицируемых параметров модели а, проверяет условие завершения алгоритма и переходит к следующей итерации либо завершает работу.
Решающее значение в эффективности описанного алгоритма имеет использование операций с сохранением состояния. На каждом из комплектов вычислительных ресурсов моделируемая СГ загружается только один раз. Для каждого расчёта режима передаётся только новое состояние вектора эмпирических параметров а. Без возможности сохранения состояния удалённого вычислительного ресурса было бы необходимо для каждого расчёта режима загружать СГ целиком, что привело бы к чрезмерным накладным расходам.
В третьей главе «Программная реализация сервисов моделирования систем газоснабжения на основе разработанной вычислительной среды» описываются разработанные управляющие и вычислительные сервисы решения конкретных задач моделирования СГ, приводится анализ проведённых вычислительных экспериментов, рассматриваются механизмы интеграции разработанных вычислительных сервисов с ПВК СППДР.
На основе предложенной в работе вычислительной среды разработаны как управляющие, так и вычислительные сервисы:
— сервис моделирования режимов СГ, сервис идентификации эмпирических параметров модели СГ;
— семейство взаимозаменяемых вычислительных сервисов для решения систем уравнений: на базе Intel MKL для плотных матриц, Intel MKL для разреженных матриц, библиотеки CuSp для разреженных матриц на CUDA;
— обобщённые менеджеры параллельного моделирования произвольных расчётных объектов на центральном процессоре с использованием OpenMP, Intel ТВВ; на СС/Ш-устройствах с использованием библиотеки thrust;
— оптимизированный менеджер параллельного моделирования трубопроводов на CUDA с использованием эффективного для работы GPU расположения данных в памяти.
Выполнено тестирование корректности и производительности разработанных вычислительных сервисов с использованием созданного автором механизма тестирования. В качестве базового тестового примера использовалась схема трубопроводной системы Саратов - Горький, которая включает в себя 155 моделируемых объектов, 48 краевых узлов (поставщики/потребители), 18 идентифицируемых параметров модели
режима Кта,КЭф. На основе базовой схемы построены тестовые примеры размерности, превосходящей исходную до двухсот раз.
Тесты проведены для всевозможных комбинаций вычислительных сервисов, размеров тестовых примеров; взаимного расположения клиента и сервера. Вычислительные сервисы выполнялись на следующий современных системах:
-ноутбук с ЦП Intel Core ¡5 (4 ядра) и CUDA-устройством GeForce GTX 460М; -компьютер с ЦП Intel Core i7 (8 ядер) и двумя GeForce GTX 460; -виртуальная машина в облаке Amazon Web Services (AWS) Elastic Compute Cloud с двумя ЦП Intel ХеопХ5570 (4 ядра) и двумя CUDA-устройствами Tesla М2050;
-кластер из четырёх виртуальных машин в облаке.
Выполненные расчеты показали высокую эффективность разработанных в диссертации архитектурных решений, алгоритмов, методов и их программной реализации.
Основные результаты и выводы
1. Спроектирована и реализована компонентная мультизадачная вычислительная среда, позволяющая осуществить унифицированное вычислительное обеспечение СППДР АСДУ на основе параллельных и распределённых вычислений, стандартных протоколов информационного взаимодействия, что является предпосылкой для создания единого вычислительного пространства АСДУ ЕСГ.
2. Впервые разработана архитектура и программно реализован базовый вычислительный сервис итерационного моделирования режимов систем газоснабжения, на основе распараллеленного расчета режимов объектов СГ, с использованием вычислений общего назначения на графических картах.
3. Разработана архитектура и программно реализован вычислительный сервис, организующий параллельное моделирование множества режимов СГ в распределённой среде, на примере многоуровневой итерационной процедуры решения задачи идентификации эмпирических параметров модели режимов СГ.
4. Разработанные сервисы параллельного и распределенного моделирования впервые предоставили возможность решать задачи совместного моделирования единых технологических режимов не только систем большой размерности (тысячи и десятки тысяч расчетных элементов), примерами которых являются региональные газотранспортные системы, но и систем газоснабжения, объединяющих такие разнородные технологические комплексы, как системы добычи, транспорта, подземного хранения и распределения газа.
5. Выполнено тестирование разработанных вычислительных сервисов в однопользовательском, сетевом, распределённом режимах, на примере реальной системы газоснабжения, показавшее:
• корректность результатов разработанных вычислительных сервисов;
• многократное ускорение этапа моделирования объектов СГ сервисом моделирования режимов СГ за счёт использования вычислений общего назначения на графических картах с использованием технологии CUDA;
• масштабируемость многоуровневых итерационных процессов, основанных на многократном моделировании режимов СГ в распределённой среде — как в локальной сети, так и при использовании удалённых «облачных» вычислительных ресурсов AWS Elastic Compute Cloud, несмотря на заметные накладные расходы удалённого взаимодействия (порядка 10% от общего времени расчёта).
6. Разработаны унифицированные компоненты методологии архитектурной и программной модернизации ПВК моделирования СГ для их последующей интеграции с разработанными вычислительными сервисами, а также в единое информационное и вычислительное пространство АСДУ.
7. В тестовом режиме выполнена интеграция разработанных вычислительных
сервисов с ПВК «Веста», внедрённым в ПДС ООО «Газпром трансгаз Санкт-
Петербург, Саратов, Уфа», ООО «Газпром добыча Ноябрьск».
Публикации по теме диссертации
1. Васильев A.B., Сардаиашвили С.А. Программная архитектура для использования параллельных вычислений при численном балансировании потоков газа на расчётном графе газотранспортной системы // Автоматизация, телемеханизация и связь в нефтяной промышленности. 2012. №1. С. 38-42.
2. Васильев A.B., Леонов Д.Г., Сардаиашвили С.А., Швечков В.А. Архитектурные решения интеграции расчетных комплексов моделирования режимов систем газоснабжения в единое информационное пространство автоматизированной системы диспетчерского управления ОАО «ГАЗПРОМ» // Газовая промышленность. 2012. - Т. 683, № 12. С. 62-66.
3. Васильев A.B. Проектирование и реализация компонентной среды параллельного и распределённого моделирования систем газоснабжения // Автоматизация, телемеханизация и связь в нефтяной промышленности. 2013.-№2. С. 32-38.
4. Васильев A.B., Сардаиашвили С.А. Программная архитектура для эффективного использования гетерогенных параллельных вычислений при численном моделировании газотранспортных систем // Тезисы докладов девятой Всероссийской конференции Новые технологии в газовой промышленности. - 2011. С. 14.
5. Васильев A.B., Сардаиашвили С.А. Программная архитектура расчётно-вычислительного комплекса поддержки диспетчерского управления режимами газотранспортных систем // IX Всероссийская научно-техническая конференция Актуальные проблемы развития нефтегазового комплекса России, тезисы докладов, часть 2. - 2012. С. 92.
6. Васильев A.B. Эффективное численное моделирование транспорта газа многопользовательским сервером с использованием пулов типизированных ресурсов // Сборник тезисов 66-й Международной молодежной научной конференции Нефть и газ 2012. - 2012. С. 8.
7. Васильев A.B., Швечков В.А., Митичкин С.К. Технологии параллельных вычислений в ПВК «Веста» моделирования режимов систем газоснабжения // V Международная научно-техническая конференция ДИСКОМ-2012, тезисы докладов. - 2012. С. 53.
8. Васильев A.B., Леонов Д.Г., Митичкин С.К., Швечков В.А. Архитектурные решения создания единого вычислительного пространства распределённой многоуровневой СППДР, основанные на эволюционном развитии клиент-серверной среды ПВК «Веста» // V Международная научно-техническая конференция ДИСКОМ-2012, тезисы докладов. - 2012. С. 57.
Подписано в печать 18.02.2013 Формат 60x90/16
Объём-1п.л. Тираж 100 экз.
Заказ № 571
119991, Москва, Ленинский просп., 65 Отдел оперативной полиграфии РГУ нефти и газа имени И.М. Губкина
Текст работы Васильев, Алексей Владимирович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
У
Российский государственный университет нефти и газа имени И.М. Губкина
На правах рукописи
Васильев Алексей Владимирович
Разработка методов и программных средств реализации компонентной вычислительной среды для параллельного и распределённого моделирования режимов систем газоснабжения
05.13.11 - Математическое и программное обеспечение вычислительных машин,
комплексов и компьютерных сетей
ДИССЕРТАЦИЯ на соискание учёной степени кандидата технических наук
Научный руководитель д.т.н., доц.
Сарданашвили Сергей Александрович
Москва-2013
Оглавление
Введение...........................................................................................................................3
Глава 1. Анализ проблем в области разработки и развития компьютерных программно-вычислительных комплексов моделирования систем газоснабжения................................................................................................................10
1.1. Общая характеристика автоматизированной системы диспетчерского управления единой системой газоснабжения России...............................................10
1.2. Программно-вычислительные комплексы поддержки принятия диспетчерских решений................................................................................................16
1.3. Проблемы и задачи разработки и развития ПВК СППДР.................................28
Выводы...........................................................................................................................36
Глава 2. Разработка компонентной среды организации параллельного и распределённого вычислительного процесса решения расчётных задач СППДР............................................................................................................................37
2.1. Сравнительный анализ и выбор технологий реализации вычислительной среды...............................................................................................................................37
2.2. Архитектура компонентной среды организации параллельного и распределённого вычислительного процесса решения расчётных задач СППДР............................................................................................................................55
2.3. Проектирование, алгоритмическая и программная реализация
вычислительных сервисов............................................................................................72
Выводы...........................................................................................................................94
Глава 3. Программная реализация сервисов моделирования систем газоснабжения на основе разработанной вычислительной среды...........................95
3.1. Программная реализация вычислительных сервисов........................................95
3.2. Проведение и анализ вычислительных экспериментов...................................109
3.3. Интеграция разработанных вычислительных сервисов с различными программно-вычислительными комплексами..........................................................116
Основные результаты и выводы................................................................................122
Список литературы.....................................................................................................124
Приложение А. Программный код вычислительных сервисов..............................139
Введение
Актуальность темы исследования. Единая система газоснабжения (ЕСГ) России управляется распределённой иерархической Автоматизированной системой диспетчерского управления (АСДУ).
В работе диспетчерских служб (ДС) всех уровней активно применяются многочисленные программно-вычислительные комплексы (ПВК) систем поддержки принятия диспетчерских решений (СППДР), а также компьютерные диспетчерские тренажеры, основанные на моделировании стационарных и нестационарных режимов систем газоснабжения (СГ).
В настоящее время реализуется проект модернизации АСДУ ЕСГ России. Для информационного обеспечения всех подсистем АСДУ создаются централизованные источники актуализированных данных и распределённые средства доступа к ним - единое информационное пространство (ЕИП). Для вычислительного обеспечения потребностей АСДУ создан ряд мощных центров обработки данных (ЦОД).
Новые требования предъявляются и к ПВК СППДР:
- быстрое решение наиболее вычислительно-сложных задач моделирования СГ на основе параллельных и распределённых вычислений и с использованием всех доступных вычислительных ресурсов: от персональных компьютеров ДС до ЦОД;
- работа в многопользовательском, распределённом режиме, соответствующем иерархии АСДУ;
- интеграция с единым информационным пространством;
- обеспечение согласованности результатов работы различных ПВК, организация их взаимодействия на основе стандартных протоколов информационного обмена.
Реализацию перечисленных требований кардинально затрудняет ряд исторически сложившихся факторов:
- использование в каждом ПВК собственного расчётного модуля, взаимодействие с которым осуществляется по закрытому интерфейсу, затрудняет согласование результатов работы различных ПВК, их совместное использование, интеграцию с ЕИП;
- ориентация расчётных модулей на последовательную организацию вычислительных процессов, что не соответствует современным требованиям;
- монолитность архитектуры расчётных модулей - длительная разработка на основе процедурного подхода привела к высокой степени взаимопроникновения между их элементами, что крайне затрудняет осуществление модернизации.
Один из путей преодоления проблем, связанных с перечисленными факторами - разработка унифицированного обеспечения иерархической, распределённой СППДР программно-вычислительными ресурсами для решения задач ДС всех уровней на базе единой вычислительной среды - единого вычислительного пространства (ЕВП) АСДУ ЕСГ.
В настоящей диссертации спроектирована и реализована такая вычислительная среда.
Степень разработанности темы исследования. В работе отмечен и проанализирован вклад в областях науки, связанных с темой диссертационного исследования, следующих отечественных и зарубежных учёных:
- Альтшуль А.Д., Берман Р.Я., Бобровский С.А., Вольский Э.Л., Галиуллин З.Т., Григорьев Л.И., Константинова И.М., Леонов Д.Г., Меренков А.Н., Митичкин С.К., Новицкий H.H., Сарданашвили С.А., Селезнев В.Е., Ставровский Е.Р., Сухарев М.Г., Чарный И.А., Хасилев В.Я., Швечков В.А., Юфин В.А., Яковлев Е.И. и др. в области математических методов, вычислительных алгоритмов моделирования и оптимизации режимов транспорта газа и их программной реализации в ПВК СППДР;
- Воеводин В.В., Таненбаум Э.С., Флинн М., Хоар Т., Хьюит К., Шохам Й., и др. в области теоретических основ и программных технологий программирования параллельных, распределённых, высокопроизводительных вычислений, создания распределённых систем;
- Буч Г., Гамма Э., Дисков Б., МакКоннел С., Мартин Р., Страуструп Б., Фаулер М., и др. в области объектно-ориентированного программирования, принципов, шаблонов и методологий проектирования программного обеспечения.
Цель и задачи диссертационной работы. Целью диссертационной работы является разработка моделей, методов, алгоритмов и программная реализация мультизадачной вычислительной среды комплекса моделирования режимов систем газоснабжения на основе применения технологий параллельных и распределённых вычислений.
Для достижения поставленной цели были решены следующие задачи:
1. Анализ текущего состояния и направлений развития АСДУ ЕСГ России, единого информационного пространства системы диспетчерского управления ЕСГ, архитектур построения ПВК моделирования режимов СГ, технологий программирования параллельных и распределённых вычислений.
2. Проектирование компонентной среды организации параллельных и распределённых вычислительных процессов решения задач моделирования режимов СГ и алгоритмов создания вычислительных сервисов в этой среде.
3. Разработка архитектурных решений и алгоритмов для вычислительных сервисов решения задач численного моделирования режимов СГ, адаптации модели режимов СГ к фактическим режимам.
4. Программная реализация мультизадачной вычислительной среды и вычислительных сервисов ее поддержки.
5. Проверка корректности и измерение производительности разработанного программного обеспечения в однопользовательском, сетевом, распределённом режимах.
6. Разработка методологии перехода ПВК СППДР к использованию вычислительных сервисов, созданных на базе мультизадачной вычислительной среды, осуществление интеграции с одним из ПВК СППДР в тестовом режиме.
При этом задачи, поставленные в данной диссертации, в области программных средств обеспечения систем поддержки принятия диспетчерских решений АСДУ Единой системы газоснабжения России решаются впервые.
Научная новизна. Основные научные результаты работы состоят в следующем.
1. Разработаны архитектурные решения, методы, алгоритмы и программная реализация компонентной вычислительной среды параллельного и распределённого моделирования режимов СГ, обеспечивающей эффективное использование вычислительных ресурсов в однопользовательском, сетевом, распределённом режимах, механизмы интеграции с ПВК СППДР на основе открытого предоставления вычислительных сервисов.
2. Разработаны специализированные сервисы, управляющие вычислительными процессами и ресурсами, вычислительные сервисы моделирования режимов СГ, позволяющие многократно ускорить решение расчётных задач, реализуя параллельные вычисления общего назначения на графических картах.
3. Разработан вычислительный сервис решения многоуровневых итерационных задач, организующий параллельное моделирование множества однородных и разнородных СГ в распределённой среде; показана его эффективность при использовании «облачных» вычислительных ресурсов Amazon Web Services Elastic Compute Cloud.
Практическая ценность работы заключается в создании базовой мультизадачной вычислительной среды для решения наиболее сложных расчётных задач моделирования режимов распределенных СГ большой размерности, позволяющей повысить эффективность организации
вычислительных процессов решения задач СППДР на основе создания единого вычислительного пространства АСДУ.
Разработанная компонентная вычислительная среда параллельного и распределённого моделирования режимов СГ впервые позволяет реализовать решение задач моделирования связанных технологических режимов смежных разнородных технологических комплексов: системы добычи, магистрального транспорта, подземного хранения и распределения газа.
Методология и методы исследования. В работе применены следующие основные методы:
- математического и численного моделирования и решения расчётных задач диспетчерского управления для систем газоснабжения;
- объектно-ориентированного проектирования, программирования гетерогенных параллельных вычислений, создания распределённых систем.
Положения, выносимые на защиту:
- Разработаны архитектурные решения в области построения мультизадачной вычислительной среды, основанной на реализации сервис-ориентированного подхода средствами компонентного программного обеспечения промежуточного уровня и явном управлении вычислительными ресурсами.
- Осуществлена алгоритмическая и программная реализация ядра вычислительной среды - сервисов управления типизированными комплектами вычислительных ресурсов и сервиса диспетчеризации вычислительных ресурсов.
- Разработаны архитектурные решения, осуществлена алгоритмическая и программная реализация вычислительного сервиса моделирования режимов систем газоснабжения (СГ), организующего параллельное
моделирование объектов СГ, в том числе с использованием вычислений общего назначения на графических картах.
- Разработаны архитектурные решения, осуществлена алгоритмическая и программная реализация вычислительного сервиса решения многоуровневых вычислительных итерационных задач ДУ СГ в распределённой среде.
Степень достоверности и апробация результатов. Основные результаты диссертационной работы докладывались на следующих конференциях и семинарах:
1. 9-я Всероссийская конференция молодых учёных, специалистов и студентов по проблемам газовой промышленности «Новые технологии в газовой промышленности» (Москва, РГУ Нефти и газа, 2011 г.).
2.9-я Всероссийская научно-техническая конференция «Актуальные проблемы развития нефтегазового комплекса России» (Москва, РГУ Нефти и газа, 2012 г.).
3. 66-я Международная молодёжная научная конференция «Нефть и газ 2012» (Москва, РГУ Нефти и газа, 2012 г.).
4. Всероссийский научный семинар с международным участием «Математические модели и методы анализа и оптимального синтеза развивающихся трубопроводных и гидравлических систем» (Вышний Волочек, УПЦ Залучье, 2012 г.).
5. 5-я Международная конференция «Компьютерные технологии поддержки принятия решений в диспетчерском управлении газотранспортными и газодобывающими системами Диском 2012» (Москва, ВНИИГаз, 2012 г.).
Публикации. Материалы диссертации опубликованы в 8 печатных работах [15], [16], [17], [18], [19], [20], [21], [40] из них 3 статьи в рецензируемых журналах [15], [16], [20] и 5 тезисов докладов.
Личный вклад автора. Содержание диссертации и основные положения, выносимые на защиту, отражают персональный вклад автора в опубликованные
работы. Подготовка к публикации полученных результатов проводилась совместно с соавторами, причем вклад диссертанта был определяющим. Все представленные в диссертации результаты получены лично автором.
Структура и объем работы. Диссертация состоит из введения, трех глав, выводов, литературы из 160 наименований и 1 приложения. Работа изложена на 123 страницах основного текста и 19 страницах приложения. Текст работы содержит 38 рисунков и 11 таблиц.
Глава 1. Анализ проблем в области разработки и развития компьютерных программно-вычислительных комплексов моделирования систем
газоснабжения
1.1. Общая характеристика автоматизированной системы диспетчерского управления единой системой газоснабжения России
Единая система газоснабжения (ЕСГ) России представляет собой сложный, единый иерархически-управляемый производственно-технологический комплекс, включающий в себя системы добычи, транспорта, подземного хранения газа, трубопроводные распределительные системы. В состав ЕСГ входят 160,4 тыс. км магистральных газопроводов и отводов, 215 линейных компрессорных станций с общей мощностью газоперекачивающих агрегатов в 42 тыс. МВт, 6 комплексов по переработке газа и газового конденсата, 25 объектов подземного хранения газа.
Основные подсистемы ЕСГ и их взаимосвязи представлены на рисунке 1.1.
Газодобывающие комплексы
Скважинное оборудование
Трубопроводные системы
Крановые системы
Дожимные компрессорные станции
Установки предварительной и комплексной подготовки газа
Газотранспортные системы
Трубопроводные системы
Крановые системы
Компрессорные станции
Другое оборудование
I
Системы подземного хранения газа
Газораспределительные системы
Трубопроводные системы
Крановые системы
Газораспределительные станции
Другое оборудование
I
Потребители
Рисунок 1.1— Основные подсистемы ЕСГ и их взаимосвязи
Особенностью ЕСГ как объекта управления является необходимость одновременно и централизованного, и децентрализованного управления.
Высокая концентрация мощностей и технологическая взаимозависимость подсистем ЕСГ требует централизации диспетчерского управления потоками газа с выполнением на верхнем уровне не только балансовых, но и режимно-технологических функций, обеспечивающих системную надёжность газоснабжения.
Структура диспетчерского управления ЕСГ подразделяется на четыре основных уровня.
1. ЦПДД - Центральный производственно-диспетчерский департамент.
2. ПДС ЭО - производственно-диспетчерская служба эксплуатирующей организации.
3. ДП ЛПУ МГ - диспетчерский пункт линейного производственного управления магистральными газопроводами.
4. Комплексы телеизмерений и телеуправлений (SCADA-системы). (SCADA -Supervisory Control and Data Acquisition)
Реализация диспетчерского управления ЕСГ России осуществляется посредством Автоматизированной системы диспетчерского управления (АСДУ),
укрупнённая схема которой представлена на рисунке 1.2.
Рисунок 1.2 - Схема диспетчерского управления ЕСГ
Основное назначение АСДУ - информационная, вычислительная, организационно-управленческая поддержка диспетчерского управления системами газоснабжения с целью выполнения контрактных обязательств с максимальной возможной эффективностью.
Каждый уровень ДУ имеет определённые цели, функциональные задачи и располагает средствами их реализации, основанными на принципе вертикальной подчинённости субъектов диспетчерского управления: субъект ДУ каждого уровня достигает реализации поставленных перед ним целей посредством выдачи диспетчерских заданий и оперативных распоряжений субъекту ДУ нижестоящего уровня.
Процессы, цели и средства диспетчерского управления технологическими процессами в ЕСГ зависят от уровня и представлены в таблице 1.1.
Таблица 1.1- Процессы, цели и средства различных уровней ДУ
Уровень ДУ Процесс ДУ
Цель
Средство
ЦПДЦ
пдс гто
ДС ЛПУ мг
Оперативный персонал
Управление запасами газа в системах г�
-
Похожие работы
- Алгоритмы организации функционирования мультикластерных вычислительных систем с иерархической структурой
- Организация функционирования распределенных вычислительных систем в режиме обработки наборов масштабируемых задач
- Разработка и исследование средств организации функционирования распределённых вычислительных систем и сетей
- Организация функционирования распределенных вычислительных систем в мультизадачных режимах
- Интеллектуальная платформа управления композитными приложениями в распределённых вычислительных средах
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность