Факультет
Специальность
Тема выпускной работы
Научный руководитель
> Предполагаемая научная новизна
> Практическая ценность работы
> Обзор исследований и разработок по теме
> Описание РПМС и ее декомпозиции на подсистемы
> Разработка подсистемы виртуальных параллельных моделей РПМС
> Список использованной литературы
В современном мире самые стремительно развивающиеся направления человеческой деятельности – это бесспорно наука и техника. И, как следствие, - появление различного рода высоких технологий. Любая высокотехнологичная разработка нуждается в экспериментальном подтверждении своих результатов. Очень часто проведение испытаний и экспериментов невозможно или экономически не целесообразно. И в этом случае незаменимым инструментом является моделирование - построение и изучение моделей реально существующих объектов, процессов или явлений.
Однопоточные моделирующие среды не всегда могут справляться с возложенными на них задачами в силу последовательного выполнения операций, что приводит к колоссальным временным затратам и иногда нецелесообразности применения моделирования.
Решение данной проблемы было найдено в распределении вычислительных ресурсов на отдельные узлы так, чтобы они могли выполнять задачи параллельно с минимальной зависимостью друг от друга или вовсе независимо. Внедрение новых концепций моделирования и привело к появлению РПМС (Распределенная параллельная моделирующая среда).
Целью данной магистерской работы является разработка и исследование подсистемы виртуальных параллельных моделей распределенной параллельной моделирующей среды (РПМС).
За данной подсистемой закреплены следующие задачи и функции:
1. Интерактивное представление иерархии виртуальных параллельных моделей (ВПМ) в зависимости от возможных подходов к распараллеливанию.
2. Составление топологий ВПМ-уровней с помощью средств подсистемы топологического анализа.
3. Формирование уравнений по ВПМ-уровням с помощью подсистемы генератора уравнений.
4. Априорный анализ дискретных ВПМ всех уровней.
5. Интерактивное представление в распоряжение других подсистем дискретных ВПМ, готовых к имплементации.
Как уже упоминалось во введении, моделирование и симулирование сложных динамических систем является сложным процессом, который при использовании последовательного подхода зачастую приводит к неприемлемым временным затратам. И применение новых методов параллельного моделирования гораздо более эффективно.
Разработки и исследования в области распределенных параллельных моделирующих сред являются актуальными и перспективными. Благодаря возможности декомпозиции (замены решения одной большой задачи решением серии меньших задач) сложной структуры РПМС, разработка каждой из ее подсистем представляет независимое направление с собственными научными исследованиями.
Параллельное моделирование, несмотря на все свои преимущества, должно уместно и грамотно использоваться, т. к. неправильное применение этого подхода может привести к еще большим временным затратам по сравнению с последовательным моделированием. Эти замечания стали причиной внедрения в РПМС такой отдельной вспомогательной подсистемы, как подсистема виртуальных параллельных моделей РПМС. Основная ее задача – оценка требуемой производительности при разных уровнях распараллеливания и выбор оптимального подхода, при котором моделирование имеющимися вычислительными ресурсами будет произведено максимально быстро и корректно. Учитывая практическую ценность выполняемых данной подсистемой задач, ее можно считать одной из самых важных в распределенной параллельной моделирующей среде.
Следовательно – разработка и исследование подсистемы виртуальных параллельных моделей РПМС является актуальной и необходимой задачей.
Новизной данной работы является реализация подсистемы виртуальных параллельных моделей РПМС, взаимодействующей с такими подсистемами, как “генератор уравнений” и “топологический анализатор”, но функционирующая самостоятельно. Благодаря независимой структуре модуля подсистемы виртуальных параллельных моделей, которая просчитывает все возможные уровни распараллеливания в рамках сетевого динамического объекта, данный модуль можно считать универсальным для подобного рода задач. Таким образом, в паре с еще одной подсистемой распределенной параллельной моделирующей среды, как “балансирование загрузки”, данные модули отвечают за оптимальное использование распределенных вычислительных ресурсов.
Одной из главных преследуемых целей всего проекта РПМС является его реализация в рамках реальной распределенной вычислительной системы, состоящей из кластера, расположенного в ДонНТУ и кластера вычислительного центра Штуттгартского университета в Германии.
Разрабатываемая подсистема виртуальных параллельных моделей в структуре РПМС в целом была включена для достижения очень важной цели – нахождения оптимального уровня распараллеливания для максимального сокращения временных затрат выполнения поставленных перед РПМС задач. Если данная цель на практике будет достигнута, то, несомненно, практическая ценность данной подсистемы существует и ее сложно будет переоценить.
Локальный уровень (по материалам преподавателей, аспирантов и магистрантов ДонНТУ). Рассмотрением проблем, связанных с реализацией распределённых параллельных моделирующих сред и виртуальных параллельных моделей в их составе, занимались:
Научные сотрудники ДонНТУ: Фельдман Л.П., Святный В.А., Аноприенко А.Я., Молдованова О.В., Солонин А.М., Надеев Д.В.
Магистры ДонНТУ: Степанов И.С., Скворцов П.В., Зима К.М., Назаренко К.С., Войтов А.В., Войтенко А.В., Меренков А.В., Стародубцев Д.Н., Васьковцов К.А.
Национальный уровень, помимо работ ДонНТУ, также представлен публикациями по темам моделирования киевских научных сотрудников Томашевского В.Н., Ждановой Е.Г. и Жолдакова А.А, рассматривающие практические задачи компьютерного моделирования
На мировом уровне большая часть разработок, исследований и соответственно публикаций принадлежит научным сотрудникам таких развитых стран как США, Великобритания, Китай, Германия и другие. Научные работники института высокопроизводительных вычислений HLRS в Штуттгарте (Германия), такие как М.Resch, M.Zeitz и другие, активно сотрудничают с факультетом компьютерных наук и технологий ДонНТУ и помогают развиваться в этом направлении.
Стоит заметить, что в своих работах выше представленные авторы, как правило, исследуют проблемы параллельного моделирования или моделирующих сред в целом или их какую-либо отдельную ветвь в этом направлении. Однако тема разработки и исследований подсистемы виртуальных параллельных моделей РПМС отдельно ранее не исследовалась.
Основная публикация, используемая при написании магистерской работы работа, которая затрагивает проблемы виртуальных параллельных моделей РПМС - это совместная статья профессоров ДонНТУ Фельдмана Л.П. и Святного В.А., а также немецких коллег - профессора Михаэля Реша и професора Михаэля Цайтца под названием «Forschungsgebiet: parallele Simulationstechnik». В статье рассматривается декомпозиция РПМС на подсистемы, одной из которых является подсистема виртуальных параллельных моделей РПМС. Здесь описаны основные функции и задачи данной подсистемы, среди которых: интерактивное представление иерархии виртуальных параллельных моделей (ВПМ) в зависимости от возможных подходов к распараллеливанию; составление топологий ВПМ-уровней с помощью средств подсистемы топологического анализа; формирование уравнений по ВПМ-уровням с помощью подсистемы генератора уравнений; априорный анализ дискретных ВПМ всех уровней; интерактивное представление в распоряжение других подсистем дискретных ВПМ, готовых к имплементации.
Основная концепция распределенной параллельной моделирующей среды для сложных динамических систем с сосредоточенными и распределенными параметрами была сформулирована и предложена в 1992 году общими силами научных сотрудников факультета КНТ (тогда ВТИ) и института параллельных и распределенных систем (IPVS) Штуттгартского университета. Изложена она в 1994 году в докладе на ASIM-симпозиуме [1] и развита позднее в работах [2, 3].
Моделирование сложных динамических систем [2] в полной мере поддерживается РПМС, благодаря ее системной организации совместного функционирования параллельных аппаратных ресурсов, системного и моделирующего программного обеспечения.
Научные сотрудники и студенты факультета КНТ (ВТИ) благодаря доступу к параллельным ресурсам Штуттгартского университета приобрели практический опыт реализации параллельных моделей на системах MasPar (16 000 процессорных элементов), CRAY T3E и Intel Paragon,. С января 2005 года имеется доступ к ресурсам высокопроизводительной системы NEC SX8 (576 узлов). Планируется, что разрабатываемая версия РПМС будет использовать ресурсы локального кластера, расположенного в 4-м учебном корпусе ДонНТУ, а также ресурсы вычислительного центра HLRS.
В статье [3] освещалась структура РПМС, которая рассматривалась как сложная hardware/software–система. Разделение РПМС на относительно независимые параллельно работающие подсистемы согласно функциям и задачам, которые они выполняют, представляет декомпозицию системы.
Декомпозированное программное обеспечение РПМС представлено в виде следующих десяти подсистем:
Подсистема диалога предназначена для презентации РПМС. Она осуществляет диалог пользователя и системы, а также взаимодействует со всеми ресурсами среды. Производится согласование задач симулирования, планирования и управления.
Подсистема топологического анализа. Вербальное и графическое представление, соответствующее кодированию исходных топологий – технологические схемы, структуры системы автоматизации, динамические сетевые объекты. Декомпозиция и аппроксимация полученных вторичных топологий. Формирование связанных с топологиями векторов и матриц. Преобразование топологических данных в форму, пригодную для генерирования уравнений и выдача результатов топологического анализа.
Подсистема генерирования уравнений. Коммуникация с подсистемой топологического анализа, представление исходных уравнений (моделей) в векторно-матричной форме. Генерирование дискретных моделей симулирования для решения средствами, которыми обладает среда. Преобразование аппроксимированных уравнений в векторно-матричную форму, генерирование дискретных симуляционных моделей для заданного численного метода.
Подсистема виртуальных параллельных моделей отвечает за интерактивное представление иерархии виртуальных параллельных моделей в зависимости от возможных подходов к распараллеливанию. Составление топологий ВПМ с помощью средств подсистемы топологического анализа. Формирование уравнений по ВПМ уровням с помощью подсистемы генерирования уравнений. Априорный анализ дискретных ВПМ всех уровней. Интерактивное представление в распоряжение других подсистем дискретных ВПМ, готовых к имплементации.
Подсистема параллельного решателя уравнений взаимодействует с подсистемами топологического анализа и подсистемой виртуальных параллельных моделей. Здесь выполняется решение систем уравнений с помощью параллельных библиотек. Определяется сходимость, стабильность, точность и оптимизация варьируемых параметров, а также формирование результатов решения для визуализации.
Подсистема обмена данными включает полный список компонент и ресурсов РПМС. Данная подсистема выполняет обмен данными по запросу от компонент, а также отображение потоков данных по запросу пользователя. Содержит тестовую задачу для получения реальных параметров операций обмена в сетях связей целевых вычислительных систем.
Подсистема балансировки нагрузки оценивает загрузку виртуальных процессов по ВПМ уровням. Осуществляется сравнительный анализ подходов распараллеливания по критериям распределения нагрузки. Возможно статическое выравнивание загрузки РПМС всех уровней.
Подсистема визуализации интегрируется с подсистемой диалога и подсистемой параллельного решателя уравнений и прочими подсистемами, требующими визуализацию результатов. Выполняет подготовку и структурирование результатов моделирования к двумерному или трехмерному виду отображения. Также производит составление графиков во время и после проведения экспериментов.
Подсистема базы данных взаимодействует со всеми подсистемами и хранит данные о hardware и software РПМС, данные о пользователях, исходные и преобразованные данные моделирования сложных динамических систем всех топологий, данные о тестах, запланированных экспериментах и выполняет архивацию их результатов. Также регулярно проводится резервное копирование данных.
Подсистема IT поддержки занимается организацией режимов работы распределенных вычислительных, коммуникационных и моделирующих ресурсов на основе современных сетей. Подсистема предоставляет веб-базированный подход к параллельному моделированию и симуляции. Обеспечивает функционирование цепей “веб-клиент (разработчик модели) -> веб-сервер -> параллельный симулятор” и “веб-клиент -> веб-сервер -> сервер базы данных”.
Первый этап работы подсистемы виртуальных параллельных моделей – определение уровней распараллеливания для сложного динамического объекта с распределенными параметрами. В разрабатываемой РПМС реализуются все четыре уровня:
Первый уровень– уровень процессов минимальной зернистости виртуальной параллельной модели РПМС. Данный уровень определяется соотношением “один процесс – одно уравнение”. Например, на этом уровне в сетевом динамическом объекте можно выделить Р-процессы и Q-процессы.
На втором уровне распараллеливания каждому k-му элементу ветви ставится в соответствие один процесс. Для данного уровня характерно соотношение “один процесс – два уравнения”. Здесь вводятся PQ процессы.
Третий уровень описывается соотношением “один процесс – одна ветвь”.
Четвертый уровень – декомпозиция графа сетевого динамического объекта (СДО) на подграфы. Граф задач T (P, M), в котором вершины представляют вычисления, а рёбра – обмен данными между этими вершинами, проецируется на граф C (PE, K), представляющий структуру распределенных вычислительных ресурсов РПМС.
На рисунке 1 изображены все уровни распараллеливания на примере графа сетевого динамического объекта.
Определив все возможные уровни распараллеливания, следует провести априорный анализ уравнений. При этом основными сравнительными критериями являются такие характеристики, как:
1. Степень загрузки процессов (под загрузкой следует понимать работу программы, которая реализует данный процесс). Оптимальное решение задачи моделирования определяет равномерная загрузка процессов.
2. Соотношение между объемами вычислительных и вспомогательных операций.
3. Схема связи между виртуальными процессами. Организация виртуального коммутатора, который обеспечивает минимальное время обмена между процессами.
4. Соотношение процесс – процессор.
В данной работе рассмотрена концепция распределенной параллельной моделирующей среды для моделирования сложных динамических систем с распределенными параметрами. Можно сделать вывод о радужных перспективах использования современных параллельных вычислительных ресурсов для комплексного решения проблемы [4].
Основной же темой работы является разработка и исследование подсистемы виртуальных параллельных моделей как отдельного модуля РПМС. Данная подсистема не является независимой, она выполняет больше вспомогательную роль. Однако, в рамках параллельного подхода к моделированию, функции данной подсистемы являются одними из самых важных, т.к. определяется оптимальный уровень распределения решаемых уравнений на вычислительные узлы. Данная подсистема актуальна не только в рамках данной РПМС, но и может быть использована в прочих проектах моделирования параллельных вычислений.
1. Anoprienko A.J., Svjatnyj V.A., Bräunl T., Reuter A., Zeitz M.: Massiv parallele Simulationsumgebung für dynamische Systeme mit konzentrierten und verteilten Parametern. 9. Symposium ASIM’94, Tagungsband, Vieweg, 1994, S. 183-188.
2. Святний В.А. Паралельне моделювання складних динамічних систем // Моделирование – 2006: Международная конференция. Киев, 2006г. – Киев, 2006. – С. 83–90.
3. L. P. Feldmann, V. A. Svjatnyj (FRTI DonNTU, Ukraine); M. Resch, M. Zeitz (Universität Stuttgart, Deutschland) Forschungsgebiet: parallele Simulationstechnik [Электронный ресурс] / Национальная библиотека Украины имени В.И. Вернадского, - http://www.nbuv.gov.ua/portal/natural/Npdntu/Pm/2008/08flpfps.pdf
4. Святний В.А., Молдованова О.В., Чут А.М. Стан та перспективи розробок паралельних моделюючих середовищ для складних динамічних систем з розподіленими та зосередженими параметрами // «Паралельне моделювання 2008» [Электронный ресурс] / Национальная библиотека Украины имени В.И. Вернадского, - http://www.nbuv.gov.ua/portal/natural/Npdntu/2008/ikot/08svasgt.pdf
5. Аноприенко А.Я., Святный В.А. Универсальные моделирующие среды / Сборник трудов факультета вычислительной техники и информатики. Вып.1. — Донецк: ДонГТУ. — 1996. — С. 8-23.
6. Войтенко А.В., Чихиро Д.М., Якушик Л.Ю. Уровни распараллеливания сетевых динамических объектов с распределенными параметрами / Статья с конференции, 2008г.
7. Меренков А.В. Разработка и организация подсистемы баз данных распределенной параллельной моделирующей среды (РПМС) [Электронный ресурс] / Портал магистров ДонНТУ, 2009 - http://masters.donntu.ru/2009/fvti/voitov/diss/index.htm
8. Скворцов П.В.Разработка и исследование решателя уравнений параллельной моделирующей среды на основе OpenMP-стандарта [Электронный ресурс] / Портал магистров ДонНТУ, 2007 - http://www.masters.donntu.ru/2007/fvti/skvortsov/diss/index.htm
9. Молдованова О.В. Способи організації паралельних обчислень в задачах математичного моделювання шахтних вентиляційних мереж [Текст] : дис. … канд. наук : 01.05.02 / Молдованова Ольга Володимирівна. – К., 2008. – 152 с.
10. Чайка М.А. Топологический анализатор, генератор и решатель уравнений сетевого динамического объекта для комбинированной целевой MIMD-архитектуры [Электронный ресурс] / Портал магистров ДонНТУ, 2007 - http://masters.donntu.ru/2007/fvti/chayka/diss/index.htm