Научная статья на тему 'Проблеми ефективного розв’язування систем нелінійних рівнянь на багатопроцесорних комп’ютерах MIMD-архітектури'

Проблеми ефективного розв’язування систем нелінійних рівнянь на багатопроцесорних комп’ютерах MIMD-архітектури Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
259
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОМПЬЮТЕРЫ MIMD-АРХИТЕКТУРЫ / СИСТЕМЫ НЕЛИНЕЙНЫХ УРАВНЕНИЙ / МОДИФИЦИРОВАННЫЙ ИТЕРАЦИОННЫЙ МЕТОД / ЭФФЕКТИВНОСТЬ РАСПАРАЛЛЕЛИВАНИЯ / MIMD-ARCHITECTURE COMPUTERS / SYSTEM OF NON-LINEAR EQUATIONS / MODIFIED ITERATIVE METHOD / PARALLELIZATION EFFICIENCY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Яковлєв М. Ф., Нестеренко А. Н., Бруснікін В. М.

В работе предлагаются модифицированный метод и алгоритм решения систем нелинейных уравнений (СНУ) для компьютеров MIMD-архитектуры. Приведены времена решения СНУ разных порядков, определены коэффициенты ускорения и эффективности использования предложенного метода.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Яковлєв М. Ф., Нестеренко А. Н., Бруснікін В. М.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The paper deals both with modified method and algorithm intended for the solving of non-linear systems (NLS) for MIMD-architecture computers. Times required for the solving of NLSs of various orders are given; acceleration and efficiency coefficients for the proposed method are determined, as well.

Текст научной работы на тему «Проблеми ефективного розв’язування систем нелінійних рівнянь на багатопроцесорних комп’ютерах MIMD-архітектури»

УДК 519.6

М.Ф. ЯКОВЛЄВ*, А.Н. НЕСТЕРЕНКО**, В.М. БРУСНІКІН*

ПРОБЛЕМИ ЕФЕКТИВНОГО РОЗВ’ЯЗУВАННЯ СИСТЕМ НЕЛІНІЙНИХ РІВНЯНЬ НА БАГАТОПРОЦЕСОРНИХ КОМП’ЮТЕРАХ MIMD-АРХІТЕКТУРИ

Інститут проблем математичних машин і систем НАН України, Київ, Україна

Інститут кібернетики імені В.М. Глушкова НАН України, Київ, Україна____

Анотація. У роботі пропонуються модифікований метод та алгоритм розв ’язування систем нелінійних рівнянь (СНР) для комп’ютерів MIMD-архітектури. Наведені часи розв’язування СНР різних порядків, визначені коефіцієнти прискорення та ефективності використання запропонованого методу.

Ключові слова: комп ’ютери MIMD-архітектури, системи нелінійних рівнянь, модифікований іте-раційний метод, ефективність розпаралелювання.

Аннотация. В работе предлагаются модифицированный метод и алгоритм решения систем нелинейных уравнений (СНУ) для компьютеров MIMD-архитектуры. Приведены времена решения СНУ разных порядков, определены коэффициенты ускорения и эффективности использования предложенного метода.

Ключевые слова: компьютеры MIMD-архитектуры, системы нелинейных уравнений, модифицированный итерационный метод, эффективность распараллеливания.

Abstract. The paper deals both with modified method and algorithm intended for the solving of non-linear systems (NLS) for MIMD-architecture computers. Times required for the solving of NLSs of various orders are given; acceleration and efficiency coefficients for the proposed method are determined, as well. Keywords: MIMD-architecture computers, system of non-linear equations, modified iterative method, parallelization efficiency.

1. Вступ

На практиці досить часто доводиться розв’язувати рівняння з частинними похідними. Для цього методом скінченних різниць або скінченних елементів їх зводять до систем нелінійних рівнянь зі стрічковою матрицею Якобі (частіш за все блочно тридіагональною або блочно п’ятидіагональною). Отже, сьогодні виникає потреба у створенні методів, націлених на швидке та ефективне розв’язування таких систем.

Основні алгоритми розв’язування систем нелінійних рівнянь (СНР) [1, 2] вимагають обчислення наближеного значення матриці Якобі системи та розв’язування системи лінійних алгебраїчних рівнянь (СЛАР). На розв’язування СЛАР або знаходження оберненої матриці витрачається значний час. Цей час можна суттєво скоротити, якщо при обчисленні елементів матриці Якобі і при розв’язуванні СЛАР або знаходженні оберненої матриці виконання всіх арифметичних операцій розпаралелити на вибрану кількість процесів. Розпа-ралелювання всіх обчислень реалізуються на багатоядерному комп'ютері MIMD-архітектури. Кількість процесів для обчислень обирається автоматично, виходячи з вимог рівномірної завантаженості процесорів, оптимізації та синхронізації кількості обмінів інформацією між процесорами [3].

У цій роботі пропонується чисельний модифікований алгоритм, спрямований на скорочення часу розв’язування СЛАР.

2. Постановка задач з наближеними вихідними даними для систем нелінійних рівнянь

Нехай дана система n нелінійних рівнянь:

12

© Яковлєв М.Ф., Нестеренко А.Н., Бруснікін В.М., 2014 ISSN 1028-9763. Математичні машини і системи, 2014, № 4

f(x ) = 0,

(1)

де f (x)=(f1 (x), f 2 (x),..., fn (x)) T - n -вимірна вектор-функція, a x = (x1, xxn)T -n -вимірний вектор, причому f (x ) = 0 є деяким наближенням до точної системи нелінійних рівнянь j( x) = 0 , і для цих вектор-функцій виконується нерівність

\\f (u )-j(u )||£d

(2)

на будь-якому n -вимірному векторі u. Для розв’язування задачі (1) задається початкове наближення xo та визначається область D = \al < x1 < Ь (і = 1, 2,., n)}, в якій шукається розв’язок, і необхідна точність Є отримання наближення до розв’язку системи. При цьому початкове наближення належить визначеній області xo є D . Верхнім індексом у формулах позначені номери компонент векторів, а нижнім - номери ітерацій.

n

— матриця Якобі системи (1) (або деяке наближення до неї),

і, j=1

то ітераційний процес методу Ньютона знаходження розв’язку при заданому початковому наближенні записується у вигляді

Hkwk =- f (xk), (3)

Якщо H =

dxJ

де Wk = xk+1 - xk - поправка, k = 0, 1, ... - номер ітерації і xk+1 = xk + Wk . Як видно з фо-

рмули (3), на кожній ітерації необхідно розв’язувати систему лінійних алгебраїчних рівнянь, обчислюючи значення вектор-функції і матрицю Якобі.

У випадку стрічкової матриці Якобі матриця представляється у блочному вигляді:

" H11 H12 0 ... 0

H 21 H 22 H23 ... 0

H (x) = 0 H31 H33 - 0

0 HP-1,p HP

Відповідно до представлення матриці Якобі у блочному вигляді представляються вектор правої частини та вектор невідомих:

f (x) = " f1" f2 , xk = xk xk

_fp _ _ xp _

3. Модифікований метод Ньютона

Модифікований метод Ньютона можна записати у такому вигляді:

H11 (xk+1 - x\)+ f 1 (xk) + Hl2(xl - x2-1) = ^

ISSN 1028-9763. Математичні машини і системи, 2014, № 4

13

H22 (х2+1 - )+ f 2 (xk ) + H21 (x[ - x[_!)+ H23(xk - Xfr_i) - 0,

H" (xk+1 _ xk)+ f (xk) + £ H" [x{ - xj-1)- 0.

j-1

j*l

Hpp (xk+1 - xp)+ fp (xk) + Hp-1,p (xp-1 - xti)-0

При цьому наступне наближення обчислюється за формулами:

xk+1

x'k -H11-1 (f1 (xk) + H 12(xk -xi,)),

x2+1 - xl -H22-1 (f2 (xk)+H21 (xk -xk-1)+ H23(x| - xk-1))

xk+1 - xk

H7

,-1

f (xk)+£HlJ (xk- xj-1)

j-1 j &

(4)

(5)

xk+1 - xpk - Hpp-1 f (xk)+ Hp-1,p (xp-1 - xg)). Якщо позначити в загальному вигляді матрицю G:

G11 -[о, H12 ],

G" -[Hi,i-1,0,Hi!+1 ], 7=2,3,....,p-1,

Gpp -[hpp-1,0_,

то для збіжності ітераційного процесу, тобто для того, щоб поправка прямувала до нуля, необхідно виконання нерівності

max

!<;'< p

H" G7

< 1.

Паралельний алгоритм наведеного методу на MIMD-комп’ютері з використанням p процесів реалізується за такою обчислюваною схемою:

• Проводиться автоматичний розподіл обчислення значень компонент вектор-функції системи нелінійних рівнянь на p блоків, який виконується таким чином: обчислю-

ється відношення

n

p

q, де \a \ - ціла частина числа a, n - порядок системи рівнянь.

Обчислюється величина s - p(q +1)- n ; тоді останні s процесів будуть обробляти блоки по m - q рівнянь, а перші p - s процесів - блоки по m - (q +1) -ому рівнянню.

• У кожному з p процесорних елементів обчислюються по m компонент вектор-функцп f (x0 ).

14

ISSN 1028-9763. Математичні машини і системи, 2014, № 4

• У кожному з p процесорних елементів обчислюється відповідний діагональний

блок матриці Якобі Ип (х0) розміру m X m .

• Для модифікованого методу Ньютона замість СЛАР, заданих формулою (3), розв’язується СЛАР, задана формулою (4), відносно похибки wk = xk+1 - xk з використанням, наприклад, паралельного варіанта методу Г ауса.

• Обчислюються відповідні компоненти наступного наближення до розв’язку хк+і за формулами (5). Потім у кожному з p процесів збираються отримані частини компонент вектора наближеного розв’язку, обчислюються компоненти вектор-функції f (х^+і) і перевіряються умови закінчення ітераційного процесу.

Обчислення похибки отриманого наближення розв’язку системи з наближеними даними відносно точного розв’язку системи з точними даними проводиться за формулою [4]

\хк - х < 8 +

H

5,

де х - точний розв’язок точної системи рівнянь. Зауважимо, що у кожному з p процесів обчислюються відповідні блоки матриці Якобі H к та обернені до них H к-1.

4. Порівняння звичайного та модифікованого методів Ньютона

Нижче наведено порівняння часів розв’язку системи нелінійних рівнянь зі стрічковою матрицею Якобі звичайним та модифікованим методами на багатоядерних комп’ютерах з використанням p процесів.

У наведеній нижче таблиці представлені часи розв’язування системи нелінійних рівнянь:

(з-їх1 У -2хі+1 +1 = 0, і = 0,

(з-2хіУ -2хі+1 -хі-1 +1 = 0, і = 1,2,...,n-2,

(з - 2хі У - хі-1 +1 = 0, і = n -1,

Починаючи з початкового наближення, х =-1 в області D={/ <х <Ь}

і = 0,1,2,.,n-1, при n = 4000 та n = 6000, /7=100, ep5=1x10"10, Je/=1x10"10, аі = -1000,

b =1000. у стовпчику під номером «1» подані часи розв’язування нелінійної системи модифікованим методом Ньютона, а у стовпчику під номером «2» - звичайним методом.

Таблиця 1. Часи розв’язування СНР

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

n = 4 о о о n = 6000

np 1 2 1 2

1 395,38 385,69 1220,25 1223,67

2 185,40 277,19 603,58 828,00

3 55,11 212,42 204,06 619,52

4 20,80 178,45 76,03 533,95

5 8,56 159,04 36,28 468,79

6 4,89 144,20 19,46 420,18

7 3,12 135,39 11,42 392,36

8 2,08 127,34 7,02 367,75

ISSN 1028-9763. Математичні машини і системи, 2014, № 4

15

З табл. 1 видно, що використання модифікованого методу Ньютона суттєво скорочує час розв’язування задачі. Коефіцієнти прискорення (рис. 1) та ефективності (рис. 2) для даної СНР 6000 порядку представлені на наступних діаграмах.

□ Модифікований метод Ньютона ■ Стандартний метод Ньютона

1 2 3 4 5 6 7 8

Кількість процесів

Рис. 1. Коефіцієнт прискорення

□ Модифкований метод Ньютона ■ Стандартний метод Ньютона

Кількість процесів

Рис. 2. Коефіцієнт ефективності

----n=20000

----n=30000

----n=40000

----n=50000

кількість процесів

Рис. 3. Часи розв’язування СНР різних порядків

Отримана ефективність (в %)

Sp

(Ep = -*-) відображена на діаграмі

F np

(рис. 2).

Отже, з діаграми видно, що зі збільшенням кількості процесів, використаних для знаходження розв’ язку задачі, коефіцієнт ефективності збільшується для модифікованого методу, в той час як для стандартного - дещо зменшується.

Іншою важливою особливістю запропонованого методу є зменшення обсягу пам’ яті, необхідної для реалізації алгорит-

му, що дає можливість розв’язувати СНР більш високих порядків. На графіку (рис. 3) представлені часи розв’язування наведеної вище системи нелінійних рівнянь при n = 20000, 30000, 40000 та 50000 на кількості процесів від 16 до 32.

Зі збільшенням порядку системи швидкість зменшення часу розв’язування від кількості процесів зростає.

У подальшому будуть розглянуті реалізації паралельного алгоритму на багатоядерному комп’ ютері з графічними прискорювачами.

5. Висновки

Модифікований метод Ньютона скорочує час розв’язування задачі та вимагає меншого об’єму пам’яті. Зі збільшенням кількості процесів, використаних для знаходження розв’язку задачі, коефіцієнт ефективності збільшується для модифікованого методу. Модифікований метод легко масштабується на різну кількість процесів.

СПИСОК ЛІТЕРАТУРИ

1. Параллельные алгоритмы решения задач вычислительной математики / [Химич А.Н., Молчанов И.Н., Попов А.В. и др.]. - Киев: Наукова думка, 2008. - 248 с.

16

ISSN 1028-9763. Математичні машини і системи, 2014, № 4

2. Яковлев М.Ф. Особливості розв’язування систем нелінійних та диференціальних рівнянь на паралельних комп’ютерах / М.Ф. Яковлев, Т.О. Герасимова, А.Н. Нестеренко // Питання оптимізації обчислень (ПОО - XXXV): праці міжнар. симпозіуму. - Київ: Інститут кібернетики ім. В.М. Глушкова НАН України, 2009. - Т. 2. - С. 435 - 439.

3. Численное программное обеспечение интеллектуального MIMD-компьютера Инпарком / А.Н. Химич, И.Н. Молчанов, В.И. Мова [и др.]. - Киев: Наукова думка, 2007. - 216 с.

4. Нестеренко А.Н. Некоторые вопросы решения систем нелинейных уравнений на многопроцессорных вычислительных системах с распределенной памятью / А.Н. Нестеренко, А.Н. Химич, М.Ф. Яковлев // Вестник компьютерных и информационных технологий. — 2006. — № 10. — С. 54 -56.

Стаття надійшла до редакції 19.08.2014

ISSN 1028-9763. Математичні машини і системи, 2014, № 4

17

i Надоели баннеры? Вы всегда можете отключить рекламу.