У сучасних умовах темпи технічного прогресу й успіхи у вирішенні фундаментальних наукових проблем багато в чому визначаються рівнем розвитку обчислювальної техніки. У цей час загальновизнаним є клас фундаментальних наукових і інженерних проблем Grand challenges, ефективний розв'язок яких можливо тільки з використанням потужних обчислювальних ресурсів із продуктивністю сотень Gflops (~1012 операцій у секунду) і вище.
Щоб обґрунтувати потребу у вказаній продуктивності, наприклад, для завдань аерогазодінаміки, можна привести порівняно простий приклад розрахунку аеродинамічних характеристик ізольованого крила. Можна показати, що для здобуття стаціонарного вирішення рівнянь Навьє-Стокса необхідно виконати порядку 2•1013 арифметичних операції. При використанні сучасних персональних комп'ютерів на це буде потрібно десятки годин. На практиці аеродинамічного проектування зазвичай потрібний не окремий розрахунок, а систематичний перебір і аналіз багатьох варіантів. Звідси ясно, що лише за наявності ЕОМ з продуктивністю, що істотно перевищує показники персональних комп'ютерів, чисельне моделювання може стати реальним інструментом проектування літальних апаратів. Єдиним способом досягнення необхідної продуктивності в даний час є використання багатопроцесорних обчислювальних систем.
Однак, у випадку багатопроцесорних обчислювальних систем досягти високої продуктивності при розв'язку реальних прикладних завдань виявляється значно складніше, чим для традиційних ЕОМ. Основною вимогою до алгоритму є наявність внутрішнього паралелізму. Це означає, що алгоритм повинен складаються з деякої кількості частин, які можуть виконуватися одночасно й незалежно друг від друга. Наступний принциповий факт багато в чому визначає можливість ефективної паралельної реалізації алгоритмів. Для багатопроцесорних систем час обміну повідомленнями між процесорами суттєво перевищує час доступу до своєї локальної пам'яті й, тим більше, час виконання арифметичних операцій. Звідси виникає умова локальності алгоритму - на кожному процесорному елементі (ПЕ) звертання до локальної пам'яті й виконання арифметичних операцій повинні відбуватися значно частіше, ніж обміни з другими ПЕ. Нарешті, потрібно відзначити досить бажану вимогу масштабованості, яка означає здатність алгоритму працювати на довільному числі процесорів. На практиці ця властивість забезпечує високу ефективність паралельної реалізації й для конкретного числа ПЕ.
На сьогодні, завдяки використанню нової високопродуктивної техніки, отримане значне просування у вирішенні обчислювальних проблем механіки, сучасної фізики, квантової хімії, біології й по інших напрямках науки.
Моделювання СДС набуває все більшу актуальність. Для реалізації моделей СДС використовуються багатопроцесорні системи при чому слід зауважити, що вся потенційна обчислювальна потужність такої системи використовується не повністю. Для досягнення більшої продуктивності системи розробники паралельного програмного забезпечення вирішують проблему розпаралелювання програм.
При паралельному моделюванні Мережних Динамічних Об’єктів з Розподіленими Параметрами (МДОРП) розв’язуються системи з великою кількістю рівнянь. При цьому виникає проблема розподілу обчислювального навантаження між процесами.
Мережні динамічні об'єкти поширені в різних галузях науки й техніки як клас об'єктів дослідження, проектування, спостереження й керування. Реальні мережі мають велика кількість елементів, сильна взаємодія керованих змінних, нелінійність параметрів. При розробці й дослідженні динамічних систем за допомогою обчислювальних машин пред'являються певні вимоги [1] до математичних моделей. У зв'язку із цим на перший план виходить питання про побудову паралельних моделюючих середовищ [2], що задовольняють поставленим вимогам, що мають інтерфейс користувача й здатних вирішувати задані завдання в тісній взаємодії з користувачем.
Концепцію розподіленого паралельного моделюючого середовища (РПМС) для складних динамічних систем з зосередженими та розподіленими параметрами запропоновано в 1992 р. в рамках наукового співробітництва факультету ОТІ ДонНТУ та інституту паралельних і розподілених систем (IPVS) Штуттгартського університету (Німеччина), опубліковано в ASIM-доповіді [3]. РПМС названо таку системну організацію сумісного фукціонування паралельних апаратних ресурсів, системного та моделюючого програмного забезпечення, яка підтримує всі етапи розробки, реалізації та застосування паралельних моделей СДС [4].
Головним положенням РПМС-концепції є необхідність повнофункціональної розробки паралельних методів та алгоритмів функціонування моделюючого програмного забезпечення (Modeling and Simulation Software) для ДСЗП, ДСРП. Аналіз показує, що паралельні системи SIMD- та MIMD-структур 90-х років мали фірмові мови паралельного програмування, що базуються на мовах Fortran, C, C++, Modula-2 та ін. Інтенсивний розвиток паралельних обчислювальних систем MIMD-архітектури, об’єктно-орієнтованих підходів стимулював стандартизацію засобів паралельного та розподіленого програмування. Так, ANSI та ISO визначили С++-стандарти з бібліотеками MPI, PVM та Pthreads. Концепція передбачає забезпечити користувачів та розробників паралельних моделей мовними та системно-організаційними засобами, які за рівнем сервісу будуть перевершувати системи та мови моделювання п’ятого покоління [5]. В цьому напрямку проведено розробки стосовно узагальнення топологій СДС, а комплекси „топологічні аналізатори – генератори рівнянь-вирішувачі” транслюють описи СДС рівня предметної області в паралельні програми [4].
Існує 2 варіанти реалізації третього рівню розпаралелювання [3]. Їх порівняння наведене в таблиці 1 за наступними крітеріями:
Рівномірність завантаження
Співвідношення Nоо/Nобм
Віртуальне прискорення з врахуванням операцій обміну
Схема зв’язку між процесами
Кількість Q- та P-процесів
Таблиця 1. Порівняння двох варіантів третього рівня розпаралелювання.
Крітерій | 1 варіант | 2 варіант |
Рівномірність завантаження | Завантаження (QP)j Lj=2Mj=lj/Δξ залежіть від кількості вирішуваних рівнянь і розбросу довжин lj гілок. Нерівномірність ΔL=Lmax-Lmin=2(Mjmax-Mjmin) з огляду на діапазон довжин виробок ШВМ буде суттєвою. | Кожен з Npj+1 процесів вирішує не менш ніж Mmin=ljmin/Δξ пар рівнянь. Досягнуто формалізації планування та рівномірного розподілу завантажень процесів по запропонованому алгоритму. Алгоритм узагальнює дані щодо процесів всіх гілок ШВМ. |
Співвідношення Nоо/Nобм | 2Mj≤Nоо/Nобм≤4Mj | 2Mmin≤Nоо/Nобм≤4Mmin |
Віртуальне прискорення з врахуванням операцій обміну | ||
Схема зв’язку між процесами | Запропановано віртуальні PQ- та QP-комутатори, работа яких організується таким чином: схема зв’язків між процесами реалізується до початку роботи і залишається незмінною на весь період моделювання; в i-му циклі обчислень запам’ятовіються компоненти векторів Qj(ih) Pj(ih) і записуються в вихідні регістри Q- і P-процесів; всі процеси синхронізуються по моменту завершення самого довгого процесу, синхронно для всіх Q- і P-процесів активуються команди обміну, в один такт на входах Q- і P-процесів з’являються актуальні значення змінних і наступним тактом записуються в пам’ять; запускається i+1-й цикл обчислень. На всіх рівнях комутатори реалізуються однотипно на базі перемикачів 2х2. | |
Кількість Q- та P-процесів | NВПМЗ=m |
Розробка симмоделі СДОРП відбувається за допомогою апроксимації системи рівнянь в часткових похідних системою звичайних диференціальних рівнянь на основі методу прямих. Сутність методу полягає в тому, що кожна гілка об’єкту представляється у вигляді прямої, розділеної на частини довжиною Δx:
Математична модель виглядає таким чином [7]:
P(x,t) - тиск в і-й гілці системи;
Q(x,t) - розхід повітря в і-й гілці системи;
r - питомий аеродинамічний опір;
r’- питомий аеродинамічний опір, що регулюється;
x - просторова координата;
F - площа поперечного перетину виробки;
a - швидкість звуку в повітрі;
ρ - густина повітря.
Для того щоб було зручно використовувати чисельний метод, потрібно записати систему рівнянь в такому вигляді [8]:
Така система рівнянь є зручною для використання будь якого чисельного метода, наприклад метода Рунге-Кути або Адамса-Башфорта.
Незважаючи на досягнуті успіхи в розвитку й впровадженні ПМС, вона залишається ще мало дослідженим об'єктом розробки й реалізації. Створення паралельного середовища, орієнтованої на моделювання мережних динамічних об'єктів із зосередженими параметрами дозволить підвищити дружність засобів моделювання до користувачів і забезпечити ефективну модельну підтримку дослідження, проектування й автоматизації МДОРП.
В даному рефераті досліджений поточний стан проблеми магістерської роботи. Також означені напрямки подальшої роботи, які будуть опрацьовані в магістерській роботі (розробка MIMD-симулятора). Детально роздивлені питання актуальності та поточного стану розподілених паралельних моделюючих середовищ (РПМС).
Основные понятия и термины параллельного программирования [Электронный ресурс]
http://www.computerbase.de/lexikon/Parallele_Programmierung
Святний В.А. Паралельне моделювання складних динамічних систем // Моделирование - 2006: Международная конференция. Киев, 2006 г. - Киев, 2006. - С. 83-90.
Святний В.А., Молдованова О.В.,Чут А.М.: Стан та перспективи розробок паралельних моделюючих середовищ для складних динамічних систем з розподіленими та зосередженими параметрами.
Schmidt B. Simulationssyteme der 5. Generation - SiP, Heft 1, 1994, S. 5-6.
Бройнль Т. Паралельне програмування: Початковий курс: Навч. посiбник / Переклад з нiм. В. А. Святного. - К.: Вища шк., 1997. - 358 с.
Хьюз К., Хьюз Т. Параллельное и распределенное программирование на С++ / Пер. с англ. – М.: Издательский дом «Вильямс», 2004. – 672 с.: ил.
Moldovanova O.V., Svjatnyj V.A., Feldmann L., Resch M., Küster U.: Problemorientierte parallele Simulationsumgebung. // Научные труды ДонНТУ, серия «Информатика, кибернетика и вычислительная техника», вып. 93. – Донецк, 2005. – С. 145–150.
Святний В.А. Паралельне моделювання складних динамічних систем // Моделирование – 2006: Международная конференция. Киев, 2006 г. – Киев, 2006. – С. 83–90.
Гусєва Г.Б., Молдованова О.В. MIMD-паралельний вирішувач рівнянь для мережного динамічного об’єкту з розподіленими параметрами // Проблемы моделирования и автоматизации проектирования динамических систем: Сб. научн. тр. ДонНТУ, вып.6, Донецк, 2007.
Бондарева Е. С. Генератор уравнений параллельной моделирующей среды для технологических процессов // Проблемы моделирования и автоматизации проектирования динамических систем: Сб. научн. тр. ДонНТУ, вып.6, Донецк, 2007.