Магистр ДонНТУ Середа Олег Эдуардович









|

ДонНТУ   Портал магистров

Перейти к содержимому

Главное меню

Середа Олег Эдуардович

Середа Олег Эдуардович

Факультет компьютерных наук и технологий
Кафедра компьютерной инженерии
Специальность: «Компьютерные системы и сети»


Тема выпускной работы: «Исследование динамического объекта на многопроцессорной системе»

Научный руководитель:
д.т.н., профессор Святный Владимир Андреевич
Консультант: старший преподаватель Иванов Александр Юриевич

Реферат по теме выпускной работы


План

Введение

1. Актуальность темы

2. Цель исследования
3. Обзор исследований и разработок

3.1. Зарубежные исследования по теме
3.2. Отечественные исследования по теме

4. Исследование модели динамического объекта на многопроцессорной системе
Выводы
Список источников



Введение

  Появление компьютеров привело к настоящему взрыву бурной деятельности в различных областях и направления исследований. Прошло уже более полувека с момента появления первых электронных вычислительных машин и они проникли во все сферы жизнедеятельности человечества. Сегодня невозможно представить себе эффективную организацию работы без применения компьютеров в таких областях, как планирование и управление производством, проектирование и разработка сложных технических устройств, издательская деятельность, образование — словом, во всех областях, где возникает необходимость в обработке больших объемов информации. Однако наиболее приориетное направление использования компьютеров это решение глобальных задач, одной из которых является моделирование динамических объектов.
   
Идея параллельной обработки данных как мощного резерва увеличения производительности вычислительных аппаратов была высказана Чарльзом Бэббиджем примерно за сто лет до появления первого электронного компьютера. Однако уровень развития технологий середины 19-го века не позволил ему реализовать эту идею. С появлением первых электронных компьютеров эти идеи неоднократно становились отправной точкой при разработке самых передовых и производительных вычислительных систем. Без преувеличения можно сказать, что вся история развития высокопроизводительных вычислительных систем — это история реализации идей параллельной обработки на том или ином этапе развития компьютерных технологий, естественно, в сочетании с увеличением частоты работы электронных схем.  

1. Актуальность темы

  Разработка программно-аппаратных средств для исследования все более сложных динамических систем обеспечивает модельной поддержкой объекты техники в области механики твердых тел, молекулярной динамики, химических производств, электронных схем и других. При моделировании во временной области системы и объекты чаще всего описываются  системами дифференциальных и дифференциально алгебраических уравнений. Для численного интегрирования жестких систем и полунатурных объектов в реальном времени требуются значительные вычислительные мощности. Одним из способов повышения производительности комплексов моделирования является использование многопроцессорных, в частности кластерных, систем.


2.
Цель исследования

   Целью исследования является разработка специального программного обеспечения планировщика и монитора выполнения MPP системы для многопроцессорных компьютеров.

Основные задачи:

1. Аналитический анализ описания динамической системы.
2. Разработка структурной схемы модели динамической системы и повышение эффективности обмена информацией в этой модели.
3.Реализация ПО управления динамической системой.
4. Исследование временных характеристик вычислений и обменов стандартными средствами программирвоания.
5. Исследование динамической модели объекта и распараллеливающего ПО для дальнейшего расширения клааса решаемых задач.

Объект исследования: сложная динамическая система на многопроцессорной МРР - платформе ДонНТУ.
Предмет исследования: разработка модели и специального программного обеспечения планировщика, расширение класса решаемых задач.
Научная новизна состоит в
разработке собственного ПО для распараллеливания задач на кластерной системе.
В рамках магистерской работы планируется получение актуальных научных результатов по следующим направлениям:

  • Повышение эффективности обмена информацией в параллельной модели динамической системы.

  • Собственная методика распараллеливания процессов по рабочим станциям кластера ДонНТУ.

  • Расширение класса решаемых задач на МРР - платформе.

   Для экспериментальной оценки полученных теоретических результатов и формирования фундамента последующих исследований, в качестве практических результатов планируется разработка и реализация специального программного обеспечения планировщика и монитора выполнения МРР системы многопроцессорных компьютерных систем на базе ОС Linux.


3. Обзор исследований и разработок

   Поскольку вопросы исследования параллельной модели динамической системы и повышения эффективности обмена информацией в этой модели являются важной частью решения сложных вычислительных задач с помощью параллельного моделирования, то проблемы их оптимизации, организации, повышение класса решаемых такими системами были широко исследованы как зарубежными, так и отечественными специалистами.

3.1. Зарубежные исследования по теме

Вопросами исследования многопроцессорной МРР платформы занимаются множество западных ученых.

   Одними из ведущих в США являются J. Kowalik, T. Puzniakowski. Это современные молодые исследватели. В 2012 году они выпустили книгу «Using OpenCL: Programming Massively Parallel Computers», в которой содержится объемный материал раскрывающий основные способы и методы программирования массивно параллельных систем. Данная книга была использована для написаня собственного ПО по распараллеливанию процессов на кластере ДонНТУ.

3.2. Отечественные исследования по теме


   Среди отечественных ученых занимающихся темой моделирования объектов на масивно параллельных системах следует ответить профессора Донецкого национального технического унивесистета Святного Владимира Андреевича и его аспирантов.
Активно этим вопросом занимался аспирант, а теперь старший преподователь кафедры «Компьютерные ситсемы и сети» Иванов Юрий Александрович.
   Также среди преподавателей ДонНТУ работой с численными методами и решением ОДУ для параллельного моделирования занимается доцент Дмитриева Ольга Анатольевна, опубликовавшая более 30 статей в журналах «Математическое моделирование», «Электронное моделирование», сборниках факультета КНТ и др. Для работы над моим дипломным проектом одним из основных пособий для решения дифференциальных уравнений считаю книгу «Чисельні методи в інформатиці» Фельдман Л.П., Дмитриева О.А.


4. Исследование модели динамического объекта на многопроцессорной системе

   Одним из способов повышения производительности комплексов моделирования является использование многопроцессорных, в частности кластерных, систем.
  Кластер
группа компьютеров, объединённых высокоскоростными каналами связи и представляющая с точки зрения пользователя единый аппаратный ресурс. Другими словами кластер является разновидностью параллельной или распределенной системы, которая состоит из нескольких связанных между собой компьютеров и используется, как единый унифицированный ресурс.
  Кластер Донецкого национального технического университета представляет собой вычислительную систему МРР
архитектуры. Особенностью данного типа архитектур является то, что память физически разделена. Однако разделение памяти привносит задержку в вычислительные процессы связанную с увеличением времени обмена между процессорами. Архитектура Кластера ДонНТУ представлена на   рисунке 1.


Рисунок 1 – Структура кластера.

   Анализ системы показывает, что для создания и решения требуемой задачи необходимо контролировать весь процесс решения на самом низком уровне для уменьшения задержки передачи данных по сети. Это говорит о том, что стандарты типа MPI не подходят для решения данной задачи в связи с невозможностью контроля длины пакетов и уровня синхронизации передачи сообщения. Отсюда был сделан вывод, что необходимо разработать открытое программное обеспечение, которое позволит контролировать данные аспекты работы динамической системы.
 На кластере ДонНТУ используется ОС ScientificLinux 5.4. Для передачи и синхронизации обменов использовался протокол UDP и широковещательная рассылка, а в качестве средства передачи
сокеты.
   Для создания программной модели ДО выполняется численное интегрирование системы дифференциальных уравнений, полученных понижением порядка уравнений Вандерполя:



 Как можно заметить приведенная выше система имеет второй порядок. Существуют такие основные группы численных методов решения систем дифференциальных уравнений: численные методы Рунге–Кутты, численные методы Адамса–Бошфорта и численные методы Эйлера. Нами был выбран численный метод Эйлера формула трапеций, из-за простоты программной реализации в виде итерационного цикла. Для нас не является критичной погрешность данного метода. Суть метода изложена на рисунке 2.


Рисунок 2 –
Численный метод Эйлера формула трапеций.


   Для создания программной модели ДО выполняется численное интегрирование системы дифференциальных уравнений, полученных понижением порядка уравнений Вандерполя, каждое из которых после понижения порядка преобразуется в два уравнения первого порядка:


   При получении аналитического решения системы была написана последовательная программа решения на одном процессоре для двух уравнений системы. В итоге получился эталонный график решения системы первого порядка изображенный на рисунке 3. При нахождении решения w1=1.


Рисунок 3 – Эталонное решение двух уравнений системы первого порядка.

   Разработка параллельной модели.

   Для подключения к серверу и отдельным узлам кластера используется протокол SSH. Это  сетевой протокол прикладного уровня, позволяющий производить  удалённое управление операционной системой  и  туннелирование TCP-соединений (например, для передачи файлов). SSH позволяет безопасно передавать в незащищённой среде практически любой другой  сетевой протокол. Таким образом, можно не только удалённо работать на компьютере через  командную оболочку, но и передавать по шифрованному каналу звуковой поток или видео (например, с  веб-камеры). При распараллеливании используется специальная команда Linux nohup, которая запускает указанную команду с игнорированием сигналов потери связи (hangup)таким образом, команда будет продолжать выполняться в фоновом режиме и после того, как пользователь выйдет из системы. Синхронизация запуска вычислений обеспечивается широковещательной рассылкой сообщений [6]. Однако в ОС Linux при создании сокета широковещательная рассылка отключена по умолчанию и пришлось включать ее отдельно с помощью функции setsockopt.
   В системе сделан акцент на том, что получатель сам заботится о принимаемой информации, а передающий ее просто посылает и не проверяет доставки. В качестве протокола передачи используется UDP, что позволило отправлять сообщения на конкретный адрес без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных.   UDP использует простую модель передачи, без неявных «рукопожатий» для обеспечения надёжности, упорядочивания или целостности данных. Таким образом, UDP предоставляет ненадёжный сервис, и дейтаграммы могут прийти не по порядку, дублироваться или вовсе исчезнуть без следа. Благодаря этому возросло быстродействие системы в общем.
   В конечном счете, основная проблема заключалась в том, что в свойствах сокета для передачи дейтаграмм нельзя изменить размер буфера для одновременного хранения сообщений, это справедливо только для UDP протокола, потому что дейтаграммы не буферизируются вообще. В связи с этим, при использовании одного сокета, сервер не успевает обработать большой поток приходящих сообщений и сообщения или затирают друг друга, или вместо корректных результатов сервер получает нулевые значения. Опытным путем было доказано, что сервер в состоянии обработать поток сообщений от 3 процессоров, поэтому для обеспечения корректного приема результатов от 4 процессоров(4 уравнения) потребовалось создать 2 сокета. Каждый сокет был привязан к отдельному порту. Это позволило системе работать корректно, а также закрепить за каждым сокетом прием результатов от попарного решения уравнений, т.е. два уравнения на одном сокете и два на другом. Опытным путем было доказано, что при записи приходящих сообщений сразу в файл скорость обработки сообщений сервером падает в среднем в 3 раза, поэтому сообщения предварительно считываются в отдельные буфера, а затем в надлежащем порядке записываются в файл. Таким образом, можно было бы сказать, что два цикла привносят большую задержку, это так, но основное время решения задачи ускоряется, а задержка начинает быть величиной зависящей от количества шагов решения.
   Было принято решение, что на каждом процессоре решается свое уравнение, дабы показать все возможности разработанной системы, протестировать появление возможных проблем и описать пути их решения. Конечные результаты передаются на сервер, где и формируется выходной файл результатов. Сервер, как приемник сам заботится о правильности принимаемой информации, поэтому для отсеивания мусора или случайно приходящих пакетов каждая дейтаграмма содержит в своей полезной части маркер. Маркер
это число соответствующее ip адресу отправителя. На первых этапах тестирования считается, что процессоров максимум 10, т.е. узел с адресом 1 ставит маркер битовый маркер 0 и так далее. Система маркеров позволила систематизировать принимаемую информацию и записывать каждое принимаемой значение в свой строго предопределенный буфер, т.к. при использовании выбранного протокола передачи сообщения могут приходит не по порядку, что и подтвердилось в ходе экспериментов. Работу ПО и результаты решения системы можно увидеть на рисунках 4 и 5.


Рисунок 4 – Внешний вид работы ПО по распараллеливанию.
(анимация: 11 кадров, 5 циклов повторения, 116кб)


Рисунок 5 – Результаты решения системы на кластере ДонНТУ.

Выводы

  Проведенные исследования показали работоспособность разработанного ПО и доказали возможность синхронного решения нескольких уравнений. Правильность решения выбранной динамической системы можно увидеть на представленных рисунках. Следующим шагом исследования ПО будет добавление пятого уравнения вида:


   Данное уравнение выражает зависимость синусоидальных переменных в гармоническом колебании. Решение системы из 5 уравнений позволит проследить поведение динамической системы в едином пространстве.

При написании данного реферата магистерская работа еще не завершена. Окончательное завершение: декабрь 2013 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.


Список источников

1. Максименко В. Л. Исследование и разработка специальных программных способов для моделирования автоколебаний. Портал магистров ДонНТУ.


2.
Букатов А.А., Дацюк В.Н., Жегуло А.И. «Программирование многопроцессорных вычислительных систем», Ростов-на-Дону, 2003 г.


3. Материалы из свободной энциклопедии «Википедия» — Гармонический осциллятор [Электронный ресурс]. – Рeжим дoступa к ресурсу: http://ru.wikipedia.org/wiki/Гармонический_осциллятор.


4. Магистерская работа Ю.А. Иванова «Исследование и разработка алгоритмов планирования процессов реального времени моделирования сложных динамических систем».


5. Параллельная вычислительная система кластер NeClus[электронный ресурс]. Тип доступа: http://neclus.donntu.ru/

6. Шон Уолтон Создание сетевых приложений в среде Linux. Руководство разработчика: Москва/Санкт-Питербург/Киев, 2001г. 116-213 с., 358-379с.

7.
Информация о преподавателе Дмитриевой О.А.[электронный ресурс] / Сайт кафедры прикладной математики и информатики ДонНТУ, - http://pmi.donntu.ru/text/prepod/dmitrieva.htm




Резюме | Биография | Реферат | Библиотека | Ссылки | Отчет о поиске | Индивидуальный раздел
Назад к содержимому | Назад к главному меню