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









|

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

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

Главное меню

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

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

Факультет комп'ютерных наук і технологій (КНТ)
Кафедра комп'ютерної інжинерії (КІ)
Спеціальність: «Комп'ютерні системи та мережі» (КСМ)


Тема випускної роботи: «Дослідження динамічного об'єкту на багатопроцесорній системі»

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

Реферат за темою випускної роботи


План

Введення

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.


Зовнішній вигляд роботи ПЗ по розпаралелюванню.
(анімація: 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

Резюме | Біографія | Реферат
Назад к содержимому | Назад к главному меню