УДК 004.942
РАЗРАБОТКА ПАРАЛЛЕЛЬНОГО MIMD-СИМУЛЯТОРА СЕТЕВОГО ДИНАМИЧЕСКОГО ОБЪЕКТА С РАСПРЕДЕЛЕННЫМИ ПАРАМЕТРАМИ
Новикова А.А., Святный В.А.
Донецкий национальный технический университет
Кафедра компьютерной инженерии
В данной статье приводится обзор компонентов процесса разработки параллельного MIMD-симулятора сетевого динамического объекта с распределенными параметрами. Рассматривается понятие распределенной параллельной моделирующей среды.
Введение
В настоящее время активно используются методы параллельного и распределенного программирования для решения различного рода задач. Таким образом, возникает необходимость в программном обеспечении, которое бы корректно и эффективно работало как на одном, так и на нескольких компьютерах, при условии, что некоторые задачи будут выполняться параллельно. Такой подход позволяет использовать программные и аппаратные ресурсы удаленных вычислительных систем, а также такая система является отказоустойчивой.
Распределенная параллельная моделирующая среда (РПМС)
РПМС является составной частью распределенных компьютерных систем (РКС). Каждый узел РКС представляет собой процессор с памятью. Выход одного узла из строя не приводит к отказу всей системы, поэтому такие системы являются отказоустойчивыми. Все компоненты параллельного программирования поддерживаются РПМС. Ее структура приведена на рисунке 1.
Рисунок 1 – Структурная организация параллельной моделирующей среды [1]
Минимальные требования к моделирующей среде
Процесс проектирования должен включать три составляющих: декомпозиция, связи, синхронизация.
Декомпозиция – это процесс разбиения задачи и ее решения на части [2]. Декомпозиция программных модулей определяет, какие функции они должны выполнять. Процесс моделирования составляет процесс перевода формул и алгоритмов в набор инструкций. Целью моделирования является копирование характеристик объекта и анализ его состояний при различных условиях. Декомпозиция определяет связи отдельных частей задачи. Для корректной работы моделируемого объекта части задачи должны быть связаны и синхронизированы.
Важной составляющей процесса разработки симулятора является выбор уровня распараллеливания.
Топологический анализ СДОРП
Сетевые динамические объекты бывают двух типов: с распределенными параметрами (СДОРП) и концентрированными (СДОКП). СДОРП может представлять собой гидравлическую, электрическую или вентиляционную сеть. Топология динамического объекта представляется в виде графа G(u,v) с множеством узлов u=n и ветвей v=m. Аэродинамические процессы могут характеризироваться токами или давлениями и описываться системой уравнений. В качестве примера на рисунке 2 представлена топология сетевого динамического объекта вентиляционной сети.
где Bj –узлы, Qj – воздушные потоки, H(Q1) - вентилятор
Рисунок 2 – Топология СДОРП
Дискретной Simulation-моделью (DSM) ветви любого объекта является система уравнений, которая получается в результате применения некоторого численного метода для решения системы уравнений. Симулятор – это программно-аппаратная реализация DSM. Для j-ветви сети (рис. 3) можно составить DSM (формула 1).
Рисунок 3 – Граф СДОРП в линейном виде
|
(1) |
где
MIMD-процесс минимальной гранулярности для динамических систем представляет собой процесс, ответственный за решение задачи Коши относительно одной искомой переменной.
|
(2) |
Распараллеливание вычислений правой части вектора Х задачи Коши нецелесообразно в связи с увеличением объема операций обмена. Виртуальная параллельная DSM – это совокупность MIMD-процессов минимальной гранулярности. Проблемой является отображение 1:1 процессов минимальной гранулярности на целевой параллельной вычислительной системе.
Уровни распараллеливания
Параллельную модель можно представить на четырех уровнях, которые изображены на рисунке 4.
Рисунок 4 – Уровни распараллеливания
Уровень 1: 1 уравнение – 1 процесс
Минимальная гранулярность виртуальной модели может быть задана на данном уровне. Вычисление системы уравнений (1) показано на рисунке 4.
Рисунок 4 – DSM на первом уровне распараллеливания
Уровень 2: 1 элемент ветви – 1 процесс
На рисунке 5 представлена схема DSM на втором уровне распараллеливания.
Рисунок 5 – DSM на втором уровне распараллеливания
Уровень 3: 1 ветвь – 1 процесс
На рисунке 6 представлена схема DSM на третьем уровне распараллеливания.
Рисунок 6 - DSM на третьем уровне распараллеливания
Уровень 4: 1 подграф – 1 процесс
Граф разбивается на подграфы. Существует два подхода к разбиению графа:
o аналитический с применением теории оптимизации разбиения.
o теоретически-технологический
Девиртуализация
Частью моделирования является разработка параллельного решателя уравнений. Этапы разработки параллельного решателя уравнений:
o Построение виртуальной модели (ВМ)
o Выбор численного метода
o Разработка алгоритма решения для выбранного численного метода
o Выбор целевой параллельной вычислительной среды
o Априорный анализ ВМ
o Процесс модификации ВМ
o Параллельное программирование ВМ в среде ЦПВС
o Тестирование симулятора
o Отладка симулятора
o Применение симуляторов в ПМС.
o Анализ результатов
Список использованной литературы:
[1] Святний В.А. Проблеми паралельного моделювання складних динамічних систем.
[2] Хьюз Т., Хьюз К. Параллельное и распределенное программирование на С++. : Пер. с англ. – М. : Издательский дом «Вильямс», 2004 – 672с.
[3] L. P. Feldmann, V. A. Svjatnyj Forschungsgebiet: parallele simulationstechnik
[4] Бройнль Т. Паралельне програмування (переклад з німецької мови В.А. Святного), Київ: ВШ, 1997, 358с.