Факультет обчислювальної техніки та інформатики
Кафедра електронних обчислювальних машин
Спеціальність: Системне програмування
Автореферат: Русский | Українська | English
Автореферат магістерскої роботи за темою «Розробка паралельного MIMD-симулятора, 2 рiвень розпаралелювання»
Вступ
У багатьох сучасних галузях науки та техніки, при розробці технологій, зокрема біотехнологій та технологій довкілля, значну роль відіграє поняття складних динамічних систем (СДС). До СДС можна віднести автоматизовані технічні об’єкти, технологічні установки, лінії та ін. Таким чином, прогрес в цих галузях залежить від рівня теорії та практичної реалізації методів проектування складних динамічних систем. У переліку факторів безумовного вирішення проблеми гарантування новизни та якості проектних рішень чільне місце займають методи та засоби моделювання динамічних систем, які можуть використовуватись на всіх етапах проекту СДС - від формулювання техніко-економічних вимог, розробки ТЗ і системного проектування до випробувань та початку дослідної експлуатації.
Актуальною проблемою сучасної обчислювальної математики є розробка паралельних методів та алгоритмів для вирішувачів СДС-рівнянь.
Застосування паралельних ресурсів відкриває принципово нові можливості побудови моделей реальної складності та модельної підтримки СДС-проектів, але потребує нової системної організації засобів моделювання СДС. Останнім часом формуються нові напрямки розробок та досліджень – паралельне моделювання, розподілене теріторіально моделювання на базі GRID-технологій. Центральною проблемою паралельного моделювання складних динамічних систем є побудова розподілених паралельних моделюючих середовищ (РПМС) універсального та спеціалізованого призначення.
Аналіз показує, що паралельні системи SIMD- та MIMD-структур 90 х років мали фірмові мови паралельного програмування, що базуються на мовах Fortran, C, C++, Modula-2 та ін. З інтенсивним розвитком паралельних обчислювальних систем MIMD-архітектури та об’єктно-орієнтованих підходів з’явилась необхідність в стандартизації засобів паралельного та розподіленого програмування. Так, ANSI та ISO визначили С++-стандарти з бібліотеками MPI, PVM та Pthreads. Необхідність будувати паралельні моделі динамічних систем з зосередженими та розподіленими параметрами вимушує розробників працювати на рівні наявних мов паралельного, послідовного програмування та їх бібліотек, а це означає, що програмні засоби побудови паралельних моделей знаходяться на рівні систем моделювання не вище другого покоління. [2] Тому зараз для повнофункціональної розробки моделюючого та симулюючого програмного забезпечення РПМС є доцільною та актуальною розробка мовних та системно-організаційних засобів, які будуть забезпечувати користувача можливостями, що перевершують системи та мови моделювання п’ятого покоління.
Стан проблеми побудови РПМС
Масивно паралельна SIMD-компонента РПМС була запропонована в 1992р. Було розроблено структуру моделюючого програмного забезпечення; досліджено паралельні алгоритми моделювання ДСЗП, ДСРП; розроблено підсистему діалогу, вирішено ряд тестових задач, узагальнено досвід паралельного моделювання на рівні мови програмування та сформульовано задачу розробки SIMD-мови моделювання у взаємозв’язку з побудовою підсистеми діалогу та аспектами об'єктно-орієнтованого підходу; побудовано бібліотеки паралельного моделювання ДСЗП, ДСРП.
Було експериментально досліджено проблемно орієнтоване моделююче SIMD-середовище для мережних динамічних систем. Паралельні SIMD-моделі було застосовано в гірничій галузі та навчальному процесі. Імплементацію алгоритмів виконано на SIMD-мові паралельного програмування Parallaxis, а експериментальні дослідження – на SIMD-системі MasPar (16К ПЕ). Результати цих розробок опубліковані як доповіді на симпозіумах ASIM’94, EUROSIM’95, ASIM’96-97. [2]
Розробка паралельного програмного забезпечення для MIMD-систем відбувалася в двох напрямках – для моделювання динамічних систем із зосередженими параметрами (ДСЗП) та для моделювання динамічних систем із розподіленими параметрами (ДСРП).
MIMD-паралельне моделююче програмне забезпечення для ДСЗП складається з декількох частин.
Взаємодію з користувачем здійснює підсистема діалогу, яка складається з системної та модельно-орієнтованої частин, що виконують функції презентації РПМС, побудови моделей, моделювання, реєстрації результатів моделювання, навчання користувачів та ін.
В програмному забезпеченні використовуються MIMD-паралельні мови моделювання; серед них розрізняють блоково-орієнтовані, рівняння-орієнтовані та об'єктно-орієнтовані мови. Програма, написана на одній з цих мов, перетворюється за допомогою компілятору в програму цільової ЕОМ. Компілятор повинен вирішувати задачі генерування віртуальної моделі завантаження процесорів, побудови графів процесів, девіртуалізації моделей завантаження процесорів, генерування кодів програм процесів, розподілу процесорів між процесами та балансування завантаження процесорів.
Для роботи системи також необхідна бібліотека, що містить:
- засоби підтримки мов моделювання (блоки для блоково-орієнтованих мов, оператори для рівняння-орієнтованих та об'єкти для об'єктно-орієнтованих);
- паралельні чисельні методи вирішування алгебраїчних та диференціальних рівнянь;
- програми візуалізації;
- допоміжні програми.
Паралельне моделююче програмне забезпечення для ДСРП є складнішим. В цьому програмному забезпеченні використовуються рівняння-орієнтовані мови специфікації ДСРП, які здатні описувати рівняння ДСРП різних типів, топологію системи, крайові та початкові умови та ін. Процес побудови ДСРП-моделі включає в себе аналіз топології системи, генерування різницевих рівнянь методом апроксимації, генерування віртуальної моделі, побудову графа процесів, балансування завантаження процесорів на основі статичного планування обчислень, генерування кодів програм та розподілення процесів між процесорами. Після побудови моделі відбувається її відлагодження та реалізація на MIMD-ресурсах.
Бібліотека, що використовується в програмному забезпеченні для ДСРП, включає в себе всі засоби, що містить бібліотека ДСЗП, підсистему візуалізації та допоміжні програми, специфічні для ДСРП, і засоби для підтримки різних типів ДСРП:
- параболічних;
- гіперболічних;
- еліптичних;
- спеціальних, відмінних від вищенаведених. [2]
Розробка паралельного MIMD-симулятору для СДОРП
Основнi використовуванi поняття:
- математична модель – це формальний опис об’єкта досліджень;
- симмодель – модель у формі, придатній до застосування засобів чисельного розв’язання рівнянь;
- симулятор - апаратно-програмна реалізація симмоделі;
- моделювання та паралельне моделювання - всі види розробок та досліджень, спрямовані на побудову та обгрунтування послідовних і паралельних симуляторів;
- дослідження ДСРП з застосуванням симуляторів будемо називати модельними експериментами або моделюванням. [2]
Розробка паралельного MIMD-симулятору для СДОРП починається зі структурного аналізу СДС як об'єкта дослідження та моделювання. Цей аналіз включає в себе аналіз фізичних процесів, що перебігають в об'єкті, топологічний аналіз об'єкта, автоматизовану декомпозицію та кодування тощо.
Наступний етап розробки – побудова математичної моделі, що включає в себе топологію об'єкта та систему алгебраїчних і диференціальних рівнянь. Для складних ДСЗП і ДСРП процес генерування системи рівнянь автоматизовано.
Математична модель СДОРП
Математичну модель складного динамічного об’єкту з розподіленими параметрами можна представити у вигляді сукупності графу об’єкту та системи диференціальних рівнянь, що описують кожну гілку цього графу. Наприклад, якщо розглядати модель, що описує аеродинамічні процеси у вентиляційній системі шахти, система рівнянь матиме наступний вигляд:
(1)
де:- P(x,t) - тиск в і-й гілці системи;
- Q(x,t) - розхід повітря в і-й гілці системи;
- r - питомий аеродинамічний опір;
- r' - питомий аеродинамічний опір, що регулюється;
- x - просторова координата;
- F - площа поперечного перетину виробки;
- а - швидкість звуку в повітрі;
- p - густина повітря. [1]
У загальному вигляді система диференціальних рівнянь в часткових похідних для всієї системи матиме вигляд:
(2)
Анімація 1. Математична модель мережного динамічного об’єкту з розподіленими параметрами (gif-анімация, 6 слайдів)
де n – загальна кількість гілок в системі.
Симмодель СДОРП
Розробка симмоделі СДОРП відбувається за допомогою апроксимації системи рівнянь в часткових похідних системою звичайних диференціальних рівнянь на основі методу прямих. Сутність методу полягає в тому, що кожна гілка об’єкту представляється у вигляді прямої, розділеної на частини довжиною dx, як показано на рис.1:
Рисунок 1 - Представлення однієї гілки об’єкту при апроксимації методом прямих
Приводячи математичну модель, наведену вище, до вигляду, придатному для застосування чисельних методів розв’язання рівнянь, отримуємо систему вигляду:
(3)
У загальному вигляді система диференціальних рівнянь в звичайних похідних для однієї гілки системи матиме вигляд:
(4)
Апріорний аналіз віртуальної паралельної моделі другого рівня розпаралелювання
На другому рівні розпаралелювання один елемент гілки (2 рівняння) відповідає одному процесу. Співвідношення «один елемент гілки - один процес» означає, що система рівнянь для k-ого елемента (1 <= k <= n) гілки розв'язується у відповідному k-ому MIMD-процесі. Віртуальна паралельна модель для однієї гілки показана на рис.2:
Рисунок 2 - Віртуальна паралельна модель для однієї гілки
З рисунку виходить, що k-й процес гілки (QP)k виконує такі допоміжні операції:
- введення P(k) з сусіднього (k-1)-ого процесу;
- введення Q(k+1) з сусіднього (k+1)-ого процесу;
- посилання Q(k) сусідньому (k-1)-ому процесу;
- посилання P(k+1) сусідньому (k+1)-ому процесу.
Таким чином, на кожному кроці циклу в кожному процесі повинно виконуватися по 4 операції обміну.
Віртуальна паралельна модель рівня 2 вимагає для СДОРП наступну кількість віртуальних процесів:
(5)
При відомій кількості процесорів N маємо можливий крок:
(6)
Заключення
Існує багато галузей практичного застосування РПМС. До таких галузей можна віднести моделювання шахтних вентиляційних мереж та систем керування ними, моделювання хімічних технологічних процесів, моделювання паливних елементів та установок та інші.
Для розробки симуляторів РПМС можна застосовувати гібридні моделі паралельного програмування (MPI+OpenMP); для розв’язання цієї задачі також можуть бути залучені географічно-розподілені обчислювальні структури – GRID-системи, що відіграє значну роль в міжнародній співпраці.
Список літератури
- Svjatnyj V.A.: Virtuelle parallele Simulationsmodelle und Devirtualisierungsvorgang der Entwicklung von parallelen Simulatoren fur dynamische Netzobjekte mit verteilten Parametern / V.A.Svjatnyj.
- Святний В.А. Стан та перспективи розробок паралельних моделюючих середовищ для складних динамічних систем з розподіленими та зосередженими параметрами / В.А.Святний, О.В.Молдованова, А.М.Чут.
- Абрамов Ф.А. Моделирование динамических процессов рудничной аэрологии / Ф.А.Абрамов, Л.П.Фельдман, В.А.Святный. - К.: Наук. думка, 1981.
- Корнеев В.В. Параллельные вычислительные системы / В.В.Корнеев. - С. Пб.: "Нолидж", 1999.
- Святний В.А. Проблемно орієнтоване паралельне моделююче середовище для динамічних мережних об’єктів / В.А.Святний, О.В.Молдованова, А.О.Перерва. // Наукові праці ДонДТУ, серія «Інформатiка, кибернетика та обчислювальна технiка», вип. 29. – Донецьк, 2001.
- Гусєва Г.Б. MIMD-паралельний вирішувач рівнянь для мережного динамічного об’єкту з розподіленими параметрами / Г.Б.Гусєва, О.В.Молдованова. // Проблемы моделирования и автоматизации проектирования динамических систем: Сб. научн. тр. ДонНТУ, вып.6, Донецк, 2007.
- Масюк А.Л. Підсистема діалогу паралельного моделюючого середовища, орієнтованого на шахтні вентиляційні мережі / А.Л.Масюк. // Наукові праці ДонНТУ. Випуск 70. Серія ІКОТ: - Донецьк: ДонНТУ, 2003.
- Фельдман Л.П. Чисельні методи в інформатиці / Л.П.Фельдман, А.І.Петренко, О.А.Дмитрієва. К.:Видавнича група ВНV, 2006.
- PARALLEL.RU - Информационно-аналитический центр по параллельным вычислениям [Електронний ресурс]. http://parallel.ru/
- MPI Documents [Електронний ресурс]. http://www.mpi-forum.org/docs/
Автореферат: Русский | Українська | English