Электронная библиотека |
|
Реферат Библиотека Ссылки Отчет о поиске Биография Инд. задание |
Параллельные алгоритмы численного моделирования сложных динамических систем с сосредоточенными параметрами на основе неявных методов Рунге-Кутты
Автор: Назарова И.А.
Моделирование сложных динамических систем с сосредоточенными параметрами требует решения систем обыкновенных дифференциальных уравнений большой размерности (СОДУ). Эффективное решение таких систем возможно лишь с использованием высокопроизводительных параллельных вычислительных средств, как нового направления в области компьютерного моделирования [1-3]. В данной статье предлагается решение поставленной задачи в применении к одному конкретному классу методов интегрирования СОДУ, а именно неявным методам Рунге-Кутты, предназначенным для решения жестких задач. Методы Рунге-Кутты с числом стадий равным s в общем виде определяются формулами (1) и (2):
Коэффициенты ai,j,ci,bi определяют уникальный вариант метода Рунге-Кутты и выбираются из соображений точности. Если ai,j = 0, при , то метод Рунге-Кутты является явным. В том случае, если ai,j = 0 при (нижняя треугольная матрица), и хотя бы одно значение ,то ki определяются неявно из уравнения:
такой метод называют диагонально неявным (ДНРК-метод). Если в диагонально-неявном методе Рунге-Кутты все диагональные элементы одинаковы: , то такой метод называют однократно диагонально неявным (ОДНРК-метод). Во всех остальных случаях имеем полностью неявный метод Рунге-Кутты. Для неявных методов шаговые коэффициенты ki i=1,..,s, нельзя вычислить последовательно, так как (2) представляют собой систему уравнений, определяющих величины ki неявным образом. Для полностью неявных методов РК все m • s неизвестных должны определяться одновременно, что существенно усложняет задачу (всего шаговых коэффициентов s и размерность каждого вектора равна m). В случае ДНРК имеем последовательность систем размерности m: для k1, затем для k2 и так далее. Для системы из m ОДУ:
полностью неявный метод Рунге-Кутты (ПНМРК) имеет вид:
Рассмотрим параллельный алгоритм численного решения СОДУ полностью неявным методом Рунге-Кутты на основе квадратурных формул Радо и Лобатто[4]. Именно эти неявные методы имеют оптимальное сочетание характеристик устойчивости и точности. Так например, s-стадийный метод РадоIA имеет порядок практически в 2 раза больше, чем число стадий и обладает A-устойчивостью. Применение полностью неявного метода Рунге-Куты требует определения шаговых ,i=1,..,s, коэффициентов, которые связаны системой нелинейных уравнений. Для решения такой системы используем метод последовательных итераций:
Анализ эффективности полученных параллельных алгоритмов производился на основе следующих показателей:
Вычислительные схемы параллельных алгоритмов получены с помощью аппарата графов влияния путем отыскания максимально-независимого множества вершин на минимальном остове[5]. Для неявных методов Рунге-Кутты время интегрирования в основном определяется числом обращений к функции правой части уравнения (1) и соотношением между временем вычисления функции f и флопом. Проведенные эксперименты показали, что для сложных функций правой части (1)(время вычисления функции Tf значительно превышает время одного флопа) коэффициент ускорения практически равен числу процессоров, а коэффициент эффективности — единице:
Для оценки времени выполнения операции передачи одного сообщения объемом n байт между двумя задачами локализованными на различных процессорах ("точка-точка") при распределенной памяти использовалась следующая модель[6-7]:
где tн — латентность, длительность подготовки сообщения для передачи; l — длина маршрута; tк— время передачи одного байта; у — число байт в слове; B — пропускная способность канала передачи данных (байт/секунда). Эта модель подразумевает использование способа передачи неделимых блоков информации, т.е. сообщений, поскольку объемы пересылаемых данных невелики (слово или 4 байта). При реализации параллельных алгоритмов исследовались топологии: линейка/кольцо, решетка/тор и гиперкуб и оптимальные алгоритмы покоординатной маршрутизации. Выбор оптимальной топологии производился при анализе множества характеристик Tобм, Tвыч, Z, Kуск, E, как некоторых функций на основе так называемой функции изоэффективности [8], позволяющей исследовать масштабируемость параллельного алгоритма. Определе¬ние характеристик параллелизма осуществлялось с помощью пакета Mathematica(Wolfram Research Inc.). Численный эксперимент и проведенный сравнительный анализ динамических характеристик параллельных алгоритмов на основе неявных методов Рунге-Кутты показал, что достаточно большая по сравнению с явными методами вычислительная сложность этих методов не является препятствием для использования их в высокопроизводительных мультипроцессорных системах. Однако требуется тщательный учет всех составляющих параллельной системы для того, чтобы такое решение было масштабируемым и эффективным. В частности практически линейное ускорение и близкая к единичной эффективность достигаются при использовании синхроннной передачи данных в топологии гиперкуб.
|