Реферат по теме выпускной работы
Подсистема обмена данными в распределенной параллельной моделирующей среде
Введение
Актуальность темы
Сложными динамическими системами (СДС) называются такие технологические объекты, параметры которых целенаправленно изменяются с течением времени и математически могут быть описаны системой обыкновенных дифференциальных уравнений и нелинейных алгебраических уравнений.
В современных инженерных приложениях очень часто появляется необходимость быстрого моделирования сложных динамических систем. Однако эта задача является одной из самых ресурсоемких из всех вычислительных операций. Во многих отраслях науки и техники увеличение скорости моделирования при умеренных затратах на оборудование имеет очень важное значение. Это может быть достигнуто при введении в эксплуатацию многопроцессорных компьютерных систем с параллельной технологией обработки данных. Главной проблемой параллельного моделирования в таком случае становится разработка и построение распределенной параллельной моделирующей среды (РПМС).
Эффективная работа параллельной моделирующей среды предполагает передачу больших объемов информации между компонентами системы, а также внутри самих компонентов. Это требует разработки быстрой и надежной подсистемы обмена данными (ПОД) в РПМС.
Цели и задачи работы
Целью данной магистерской работы является разработка и исследование подсистемы обмена данными в распределенной параллельной моделирующей среде (РПМС).
Для реализации указанной подсистемы необходимо выполнить следующие задачи:
- Проанализировать работы, которые ведутся в направлении распределенных параллельных моделирующих сред (РПМС) и подсистемы обмена данными в частности.
- Дать определение и обозначить функции ПОД в РПМС.
- Разработать математическую модель, а также структуры аппаратного и программного обеспечения ПОД в РПМС.
- Разработать оптимальные структуры данных, с помощью которых реализовать передачу информации.
- Определить принципы взаимодействия с другими подсистемами и функционирования в качестве составной части РПМС.
- Исследовать зависимость процессов передачи информации от характера решаемых задач, а также экспериментально проверить результаты работы разработанной ПОД в РПМС.
Предполагаемая научная новизна
- Разработка подсистемы обмена данными как новейшей составляющей РПМС.
- Интеграция подсистемы обмена данными в РПМС в качестве независимого программного модуля с обеспечением взаимодействия с другими подсистемами.
- Разработка математических моделей и алгоритмов для определения параметров обмена информацией между компонентами РПМС и внутри самих компонентов.
- Разработка и реализация эффективного и оптимального алгоритма обмена данными в РПМС.
- Разработка структур данных для передачи.
- Реализация полной совместимости подсистемы обмена данными с другими подсистемами РПМС.
Практическая ценность работы
Разработка ПОД в РПМС осуществляется для достижения важной цели – нахождения оптимальных алгоритмов обмена данными для максимального сокращения времени передачи информации между компонентами в составе РПМС. Если разработанные алгоритмы будут успешно реализованы на практике и это приведёт к минимизации времени, затрачиваемого на обмен информацией в РПМС, то практическая ценность данной подсистемы, безусловно, существует. Исследования разработанной подсистемы, а также результаты её работы и взаимодействия с другими подсистемами будут проведены на кластере ДонНТУ – MIMD-системе с распределенной памятью.
Обзор исследований и разработок по теме
Локальный уровень (по материалам преподавателей, аспирантов и магистрантов ДонНТУ). Рассмотрением проблем, связанных с реализацией распределённых параллельных моделирующих сред и виртуальных параллельных моделей в их составе, занимались:
Научные сотрудники ДонНТУ: Фельдман Л.П., Святный В.А., Аноприенко А.Я., Молдованова О.В., Солонин А.М., Надеев Д.В. и др.
Магистры ДонНТУ: Хамылов А.А., Кушнаренко В.Г, Мирошниченко К.В., Волков В.П., Войтов А.В., Войтенко А.В., Меренков А.В., Ковтун Н.О., Терентьев В.Ю., Габрова А.В., Пронькин В.Г., Стародубцев Д.Н., и др.
Национальный уровень исследований в области параллельных вычислений представлен в подавляющем большинстве работами сотрудников и студентов ДонНТУ. ДонНТУ занимает лидирующую позицию в области научных исследований и разработок, связанных с параллельными моделирующими средами, а также является одним из первопроходцев на мировом уровне.
Мировой уровень разработок и исследований параллельных моделирующих сред и сложных динамических объектов представлен большим количеством работ ученых из таких стран, как США, Германия и Россия. Особо хотелось бы отметить работы Виктора Малышкина – заведующего лабораторией синтеза параллельных программ (Новосибирск, Россия). Под его руководством уже долгое время ведутся разработки в области параллельных компьютерных технологий, параллельного программного синтеза, а также архитектуры параллельных систем. Разрабатываются приложения для работы на кластерах. Между институтом высокопроизводительных вычислений HLRS в Штуттгарте (Германия) и факультетом компьютерных наук и технологий ДонНТУ ведётся долгосрочное и плодотворное сотрудничество.
Несмотря на большое количество работ в области параллельного моделирования, исследования подсистемы обмена данными представлены слабо либо не представлены вообще.
Концепция РПМС и ее декомпозиция на подсистемы
Распределенная параллельная моделирующая среда (РПМС) - это такая системная организация совместного функционирования параллельных аппаратных ресурсов, системного и моделирующего программного обеспечения, которая поддерживает все этапы разработки, реализации и применения параллельных моделей СДС в соответствии с определенными требованиями [1,2].
Характерной особенностью РПМС является способность выполнять вычисления отдельных частей объекта одновременно и независимо друг от друга, т.е. параллельно. Распараллеливание позволяет значительно ускорить процесс моделирования. Аппаратными средствами для этого выступают распределенные системы: компьютерные кластеры, Grid, параллельные структуры с использованием GPU[3].
Основную концепцию распределенной параллельной моделирующей среды для сложных динамических систем с сосредоточенными и распределенными параметрами сформировали и предложили в 1992 году сотрудники факультета КНТ (тогда ВТИ) и института параллельных и распределенных систем (IPVS) Штуттгартского университета. Изложена она в 1994 году в докладе на ASIM-симпозиуме [5] и развита позднее в работах [6, 7].
Научные сотрудники и студенты факультета КНТ (ВТИ), используя теледоступ к параллельным вычислительным системам Штуттгартского университета, смогли приобрести ценный практический опыт работы с параллельными моделями на системах MasPar (16 000 процессорных элементов), CRAY T3E и Intel Paragon. С января 2005 РПМС подключена к высокопроизводительной системе NEC SX8 (576 узлов).
Главным положением РПМС-концепции является необходимость полнофункциональной разработки параллельных методов и алгоритмов функционирования моделирующего программного обеспечения (Modeling and Simulation Software) для ДССП, ДСРП. Анализ показывает, что параллельные системы SIMD-и MIMD-структур 90-х годов имели фирменные языки параллельного программирования, основанные на языках Fortran, C, C++, Modula-2 и др. Интенсивное развитие параллельных вычислительных систем MIMD-архитектуры, объектно-ориентированных подходов стимулировало стандартизацию средств параллельного и распределенного программирования. Так, ANSI и ISO определили С++-стандарты с библиотеками MPI, PVM и Pthreads [8].
Концепция предусматривает обеспечение пользователей и разработчиков параллельных моделей языковыми и системно-организационными средствами, которые по уровню сервиса будут превосходить системы и языки моделирования пятого поколения.[4]
В статье [7] освещалась структура РПМС, которая рассматривалась как сложная hardware/software–система. Разделение РПМС на относительно независимые параллельно работающие подсистемы согласно функциям и задачам, которые они выполняют, представляет декомпозицию системы.[10]
Ученые предлагают рассматривать РПМС как систему, состоящую из следующих десяти подсистем:
- Подсистема диалога (ПД) предназначена для взаимодействия с внешним миром. Она обеспечивает диалог системы и разработчика, а также обеспечивает согласование задач симулирования, планирования и управления.
- Подсистема топологического анализа (ПТА) обеспечивает ввод заданной топологии динамической системы, ее представление во внутреннем формате, преобразование топологической информации в вид, удобный для генерации системы уравнений, вывод результатов анализа заданной топологии.
- Подсистема генерирования уравнений (ПГУ) взаимодействует с подсистемой топологического анализа, преобразовывая результаты ее работы в векторно-матричный вид, а также генерирует дискретные модели симулирования для решения поставленных перед системой задач.
- Подсистема параллельных виртуальных симуляционных моделей (ППВСМ) отвечает за интерактивное представление иерархии виртуальных параллельных моделей в зависимости от возможных подходов к распараллеливанию. Составление топологий ВПМ с помощью средств подсистемы топологического анализа. Формирование уравнений по ВПМ уровням с помощью подсистемы генерирования уравнений. Априорный анализ дискретных ВПМ всех уровней. Интерактивное представление в распоряжение других подсистем дискретных ВПМ, готовых к имплементации. [10]
- Подсистема параллельного решателя уравнений (ППРУ) осуществляет взаимодействие с подсистемами топологического анализа и подсистемой виртуальных параллельных моделей. В этой системе производится решение систем уравнений с помощью параллельных библиотек, определение сходимости, стабильности, точности и оптимизации параметров, а также формирование результатов решения для представления в виде, удобном для пользователя.
- Подсистема обмена данными (ПОД) включает полный список компонент и ресурсов РПМС. Определяет структуру данных для обмена, а также осуществляет обмен информацией между подсистемами. По запросу пользователя может выводить содержание потоков данных внутри системы.
- Подсистема балансировки нагрузки (ПБН) определяет и оценивает загрузку виртуальных процессов. Осуществляется сравнительный анализ подходов распараллеливания по критериям распределения нагрузки.
- Подсистема визуализации (ПВ) предоставляет возможность подсистеме диалога выводить результаты работы РПМС в удобном для пользователя виде (топология и графики моделирования в виде графических объектов).
- Подсистема базы данных (ПБД) осуществляет взаимодействие со всеми подсистемами РПМС и хранит данные каждого этапа моделирования, а также информацию о пользователях, их запросах и задачах. С определенным интервалом осуществляет резервное копирование данных.
- Подсистема информационных технологий (ПИТ) предоставляет веб-ориентированный подход к параллельному моделированию. Предоставляет возможность использования «внешних» вычислительных ресурсов.
Только ПД и ПОД взаимодействуют с внешней по отношению к РПМС внешней средой (пользователем и кластерами) и реализуют интерфейс для работы с РПМС.
Структура взаимодействия подсистем изображена на рисунке 1.
Рисунок 1 – Декомпозиция РПМС на подсистемы
Разработка подсистемы обмена данными в РПМС
Подсистема обмена данными представляет собой централизованную структуру, на которую возлагается задача обеспечения обмена данными между компонентами РПМС. Одними из главных требований, предъявляемых к данной системе, являются высокая скорость работы и корректная синхронизация обмена.
ПОД будет состоять из главной программы, осуществляющей взаимодействие с другими подсистемами, и внутренних подпрограммах, отвечающих за определенный круг задач. Когда происходит вызов подсистемы – вызов принимает главная программа, передавая затем управление нужной подпрограмме. После завершения работы подпрограммы главная программа получает и анализирует результаты и выдает их наружу. ПОД взаимодействует с другими подсистемами в составе РПМС. Взаимодействие ПОД с другими подсистемами изображено на рисунке 2.
Рисунок 2 – Взаимодействие ПОД с другими подсистемами РПМС
Анимация: объем - 17,3 Кб, размер - 640х278, количество кадров - 13, циклов повторения - 6.
При проектировании ПОД необходимо реализовать синхронизацию обмена данными, т.к. при условии параллельного выполнения задач возникают две проблемы:
- два узла хотят обменяться данными в один момент времени;
- если есть общая разделяемая память, то необходимо предусмотреть вариант, при котором 2 процесса пытаются получить доступ к одному участку памяти в один момент времени.
Первая проблема решается при добавлении синхронизации каждому узлу. Перед началом обмена узлы должны послать друг другу сигналы синхронизации и начать обмен только тогда, когда они оба будут в состоянии готовности.
Вторую проблему можно решить с применением блокировок на определенные участки памяти. В момент, когда один процесс ставит блокировку на записываемый/читаемый участок – другой процесс не может получить к нему доступ. Функция синхронизации ПОД должна обеспечивать синхронизацию, обнаруживать ошибки и рекомендовать варианты исправления этих ошибок.
При выборе программной платформы для реализации ПОД к ней ставятся следующие требования:
- высокая скорость выполнения кода;
- простота и высокая надежность;
- модульность;
- развитый инструментарий.
Выводы
Подсистема обмена данными, как новейшая часть распределенной параллельной моделирующей среды, представляет собой очень большую задачу для дальнейшего изучения, исследования и разработки. Данная магистерская работа определяет основные функции, структуру и алгоритмы функционирования подсистемы, и предоставляет возможности для дальнейшего развития ПОД отдельно и РПМС в целом. Эта работа имеет практическую ценность для дальнейших исследовании и наработок, связанных с РПМС.
Литература
- Абрамов Ф.А., Фельдман Л.П., Святный В.А. Моделирование динамических процессов рудничное Аэрология.- К.: Наук. Мысль, 1981.-284с.
- Святный В.А. Моделирование аэрогазодинамических процессов и разработка систем управления проветривание систем шахт. Докт. дисс, Донецк, ДПИ, 1986
- Мирошниченко К.В. Разработка и исследование подсистемы топологического анализа сетевых динамических систем как объектов моделирования [Электронный ресурс] / Портал магистров ДонНТУ, 2011 - http://masters.donntu.ru/2011/fknt/myroshnychenko/diss/index.htm
- Schmidt B. Simulationssyteme der 5. Generation – SiP, Heft 1, 1994, S. 5–6.
- Anoprienko A.J., Svjatnyj V.A., Braunl T., Reuter A., Zeitz M.: Massiv parallele Simulationsumgebung fur dynamische Systeme mit konzentrierten und verteilten Parametern. 9. Symposium ASIM’94, Tagungsband, Vieweg, 1994, S. 183-188.
- Святний В.А. Паралельне моделювання складних динамічних систем // Моделирование – 2006: Международная конференция. Киев, 2006г. – Киев, 2006. – С. 83–90.
- L. P. Feldmann, V. A. Svjatnyj (FRTI DonNTU, Ukraine); M. Resch, M. Zeitz (Universitat Stuttgart, Deutschland) Forschungsgebiet: parallele Simulationstechnik [Электронный ресурс] / Национальная библиотека Украины имени В.И. Вернадского, - http://www.nbuv.gov.ua/portal/natural/Npdntu/Pm/2008/08flpfps.pdf
- Svjatnyj V., Moldovanova O., Smagin A., Resch M., Keller R.: Rabenseifner R. Virtuelle Simulationsmodelle und ein Devirtualisierungsvorgang fur die Entwicklung der parallelen Simulatoren von komplexen dynamischen Systemen / 9. Symposium ASIM 2006, Tagungsband, 2006, S. 416 - 421.
- Хамылов А.А. Разработка и исследование подсистемы виртуальных параллельных моделей РПМС [Электронный ресурс] / Портал магистров ДонНТУ, 2011 - http://masters.donntu.ru/2011/fknt/khamylov/diss/index.htm
- Кушнаренко В.Г. Разработка и исследование подсистемы параллельных решателей уравнений распределенной параллельной моделирующей среды (РПМС) [Электронный ресурс] / Портал магистров ДонНТУ, 2011 - http://masters.donntu.ru/2011/fknt/kushnarenko/diss/index.htm
Примечание
При написании данного реферата магистерская работа еще не завершена. Окончательное завершение: декабрь 2012. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.