Научная статья на тему 'ЖЫЛУӨТКІЗГІШТІК ТЕҢДЕУІ ҮШІН ЯНЕНКО ӘДІСІН ПАРАЛЕЛЬДІ ЖҮЗЕГЕ АСЫРУ'

ЖЫЛУӨТКІЗГІШТІК ТЕҢДЕУІ ҮШІН ЯНЕНКО ӘДІСІН ПАРАЛЕЛЬДІ ЖҮЗЕГЕ АСЫРУ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
80
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПАРАЛЛЕЛЬ ЕСЕПТЕУ / АЙқЫН ЕМЕС СХЕМА / қУАЛАУ әДіСі / ЯНЕНКО әДіСі / MPI ТЕХНОЛОГИЯСЫ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Семятова А. Н., Кенжебек Е. Ғ.

Бұл мақалада екі өлшемді жылу теңдеуі үшін Яненко алгоритмінің параллель орындалуы қарастырылады, жылу өткізгіштік теңдеуін сандық шешу үшін қуалау әдісі қолданылды. Тізбекті бағдарлама жүзеге асырылуы бойлық-көлденең қуалау әдісімен екі бөлшектік қадамда қарапайым жүзеге асырылады, алайда, айқын емес сұлбамен орындалатын екі бөлшектік қадамды параллельдеу деректердің процесаралық коммуникация жасауына байланысты қиын болып табылады. Зерттеу жұмсысында жылу өткізгіштік есебі үшін Яненко әдісін қолдануда деректерді бір өлшемді декомпозициямен параллельді үлестірілуі бейнеленген. 1D декомпозициясын қолдана отырып, осы тапсырманы параллельдеу нәтижелері алынды және параллельді бағдарламаны бағалау мақсатында үдеу және тиімділік суреттері талданды. Қазіргі кезде процестерді дифференциалдық теңдеулерді сандық шешу арқылы модельдеу ғылымның әр саласында кең қолданылады, ең көп таралған әдістер дифференциалдық есепті сызықтық алгебралық теңдеулер жүйесіне келтіреді, осындай жүйелерді шешетін әдістерге іске қосудың түрлі нұсқалары кіреді. Көп ядролы процессорлар мен графикалық үдеткіштерді қолдана отырып, есептеу жүйелерінің пайда болуы мен дамуы іске қосу параллельдеу мәселесін өзекті етеді; зерттеу нәтижелері ғылыми-зерттеу институттары мен университеттерде сабақ беру үшін қолданылады.

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

PARALLEL IMPLEMENTATION OF THE YANENKO METHOD FOR SOLVING THE HEAT EQUATION

In this article, we will consider the parallel implementation of the Yanenko algorithm for the two-dimensional heat equation, and the sweep method was used to numerically solve the heat equation. The implementation of the sequential program is carried out simply in two-part steps by the longitudinal-transverse run, however, parallelization of two fractional steps with an indefinite scheme is difficult due to the creation of inter-process communication of data. In the course of the study, a parallel data distribution with one-dimensional decompositions is shown in the application of the Yanenko method for calculating heat conductivity. The results of parallelization of this task using the 1D decomposition were obtained and acceleration and efficiency images were analyzed in order to evaluate the parallel program. Currently, modeling of processes by numerical solution of differential equations is widely used in every field of Science, the most common methods bring the differential problem to a system of linear algebraic equations, methods that solve such systems include various startup options. The emergence and development of computing systems using Multi-Core processors and graphics accelerators make the problem of startup parallelization relevant; the results of the study are used for teaching in research institutes and universities.

Текст научной работы на тему «ЖЫЛУӨТКІЗГІШТІК ТЕҢДЕУІ ҮШІН ЯНЕНКО ӘДІСІН ПАРАЛЕЛЬДІ ЖҮЗЕГЕ АСЫРУ»

ҒТАХР 50.07.05

DOI: 10.52512/2306-5079-2021-86-2-127-135

ЖЫЛУӨТКІЗГІШТІК ТЕҢДЕУІ ҮШІН ЯНЕНКО ӘДІСІН ПАРАЛЕЛЬДІ ЖҮЗЕГЕ АСЫРУ

А.Н. Семятова*, Е.Ғ. Кенжебек

Әл-Фараби атындағы Қазақ Ұлттық Университеті, Алматы, Қазақстан E-mail*: [email protected]

Бұл мақалада екі өлшемді жылу теңдеуі үшін Яненко алгоритмінің параллель орындалуы қарастырылады, жылу өткізгіштік теңдеуін сандық шешу үшін қуалау әдісі қолданылды. Тізбекті бағдарлама жүзеге асырылуы бойлық-көлденең қуалау әдісімен екі бөлшектік қадамда қарапайым жүзеге асырылады, алайда, айқын емес сұлбамен орындалатын екі бөлшектік қадамды параллельдеу деректердің процесаралық коммуникация жасауына байланысты қиын болып табылады. Зерттеу жұмсысында жылу өткізгіштік есебі үшін Яненко әдісін қолдануда деректерді бір өлшемді декомпозициямен параллельді үлестірілуі бейнеленген. 1D декомпозициясын қолдана отырып, осы тапсырманы параллельдеу нәтижелері алынды және параллельді бағдарламаны бағалау мақсатында үдеу және тиімділік суреттері талданды. Қазіргі кезде процестерді дифференциалдық теңдеулерді сандық шешу арқылы модельдеу ғылымның әр саласында кең қолданылады, ең көп таралған әдістер дифференциалдық есепті сызықтық алгебралық теңдеулер жүйесіне келтіреді, осындай жүйелерді шешетін әдістерге іске қосудың түрлі нұсқалары кіреді. Көп ядролы процессорлар мен графикалық үдеткіштерді қолдана отырып, есептеу жүйелерінің пайда болуы мен дамуы іске қосу параллельдеу мәселесін өзекті етеді; зерттеу нәтижелері ғылыми-зерттеу институттары мен университеттерде сабақ беру үшін қолданылады.

Түйін сөздер: параллель есептеу, айқын емес схема, қуалау әдісі, Яненко әдісі, MPI технологиясы.

Кіріспе

Қазіргі уақытта дифференциалдық теңдеулерді сандық шешу арқылы процестерді модельдеу ғылымның әртүрлі салаларында кеңінен қолданылады. Өйткені, есептеу техникасы мен сандық әдістердің дамуы осындай теңдеулерді шешуге ықпал етеді. Ең көп таралған әдістер дифференциалдық есепті сызықтық алгебралық теңдеулер жүйесіне (САТЖ) азайтады. Мұндай жүйелерді шешетін әдістерге әртүрлі қуалау және редукция әдістерін жатқызуға болады.

Қуалау әдісі бұл тікелей әдіс және оны тізбекті шешімде жүзеге асырудың қарапайымдылығымен ерекшеленеді. Көп ядролы процессорлар мен графикалық үдеткіштерді қолданатын есептеу жүйелерінің пайда болуы мен дамуы параллелизация мәселесін өзекті етеді. Бұл жұмыста жылу өткізгіштік теңдеуінің сандық шешімі мен Яненко әдісін қолдана отырып осы теңдеуді параллелизациялау әдістері келтірілген, оның екінші кезеңінде әдеттегі қуалау әдісі жұмыс істейді. Параллель процестермен есептеу жүйесінде жұмыс істеу үшін, оларды жүзеге асырудың ерекшеліктері де келтірілген.

Параллельді таратылатын компьютерлер үшін ең таралған бағдарламалау технологиясы MРІ болып табылады. Осындай жүйелердегі параллель процестер өзара әрекеттесуінің басты жолы -хабарларды бір-біріне беру. MРІ параллель бағдарламалауда деректер алмасу интерфейсінің ең кең тараған стандарты болып табылады, оны көптеген компьютерлік платформалар үшін іске асырады. Кластерлер мен суперкомпьютерлерге арналған бағдарламаларды әзірлеу кезінде қолданылады. MРІ-дің процестері арасындағы қарым-қатынастың негізгі құралы - бір-біріне хабарлама жіберу.

MРІ стандарттау MРІ Fоrum айналысады. MРІ стандарты платформаға да, қолданушы қолданбаларына да қолдау көрсетілетін хабар алмасу интерфейсін сипаттайды. Қазіргі уақытта MРІ-дің көптеген тегін және коммерциялық іске асырылуы бар. Fоrtrаn 77/90, Jаvа, С және С++ тілдеріне арналған бағдарламалар бар [1].

Қазіргі уақытта физикалық процестерді сипаттайтын көптеген есептер сызықтық алгебралық теңдеулер жүйесін (САТЖ) сандық шешу қажеттілігін туындатады. Айырымдық сұлбаларды шешу мен конвергенциясы туралы көптеген жұмыстар бар, олардың арасында [2] жұмысты атап өтуге болады. Осындай САТЖ шешімдерін табу үшін қуалау әдісі және циклдік редукция әдісі сияқты әдістер қолданылады. Циклдік редукция әдісін жүзеге асыру қиынырақ, бірақ дөңгелектеу қателіктері оған аз әсер етеді [3].

Қазіргі уақытта осы тақырып бойынша көптеген мақалалар шығып жатыр. Олардың ішінде келесі жұмыстарды бөліп көрсетуге болады: [4, 5] жұмыстарда параллелизм мен есептеу күрделілігін қамтамасыз ету үшін параллель циклді азайту [6] және оң жақ қуалау әдісі ұсынылады.

Келесі [7-10] еңбектерінде графикалық үдеткіштері бар есептеу жүйесінде Яненко әдісін қолдану көрсетілген, [11, 12] жұмыстарда параллель конвейер әдісі мен Яненко әдісін салыстыру көрсетілген, оның екінші кезеңінде оң жақ қуалау әдісі қолданылды, параллелизация тиімділігінің нәтижелері де келтірілген.

Келесі [13] жұмыста SPIKE алгоритміне негізделген есептеу шешімі ұсынылған [14]. Ал [15] жұмыста қарама-қарсы қуалау әдісімен САТЖ шешу үшін параллель алгоритмдер тұжырымдалған және талданған. Сонымен қатар, Н.Н. Яненко ұсынған әдіс те белгілі [16], мұнда процессорлар санына тең белгісіздердің саны бар жүйеге оның көп саны бар бастапқы жүйені азайтуға мүмкіндік береді. Параметрлік шекаралық-процессорлық нүктелерден тұратын мұндай жүйе қуалау әдісімен шешіледі. Сондай-ақ, қарама-қарсы қуалау әдісі, параллель-циклді редукция әдісі және параллель-конвейер әдісі сияқты әдістерді қолдануға болады [17].

Материалдар мен әдістер

Яненко әдісі. Қарастырылып отырған есептің мақсаты Яненко әдісі арқылы екі өлшемді жылу теңдеуін шешетін айқын емес сұлбаны параллельдеу болып табылады. Н.Н. Яненко ұсынған қуалау әдісі параметрлік қуалау деп аталды. Параметрлік қуалау әдісі торлы теңдеулер жүйесін үлестіру арқылы жүзеге асырылады, мұнда процессор элементтерінің шекарасында орналасқан элементтер параметрлік белгісіздер деп аталады.

Келесі түрдегі сызықтық теңдеулер жүйесін қарастырайық:

aiXi-i + biXi + CiXi+i = di, i = 1,..., n 1,

b0x0 + c0x1 d0, anxn-1 + bnxn dn"

(1)

Әр процессорде бірдей есептеу нүктелері m = n/size болсын, мұндағы n - белгісіздер саны, ал size - процессорлар саны. Осылайша, j саны бар процессорда (j-1) * m + 1 ден j * m-ге дейінгі сандары бар жүйенің (1) теңдеулерінің тек белгілі бір бөлігі болады, мұндағы j - процессор номері.

Декомпозиция әр процессор m = n / size + 1 теңдеулерін өңдейтіндей етіп үлестіреді:

Xi = Xj+^*m = xj; i = 0,. , n; j = 0,... ,ш;ц = 0,... , size - 1.

Осылайша, осы әдісті жүзеге асыру үшін мыналар қажет:

- Xi шекаралық бастапқы белгісіздерін параметрлік ретінде белгілеу, оларды x_par^ деп белгілейміз;

- осы белгісіздер үшін сызықтық теңдеулер жүйесін құру және сол жүйені шешу;

- x_par^ анықтамасы;

- x_par^ шекаралық мәндері бойынша қалған белгісіздерді табу.

Бастапқы белгісіздерді табу келесі түрде келтіріледі:

xj = vjx_par^ + zjx_par^ + wj; j = 0,... , m; ц. — 0,... , size — 1. (2)

j j j r ■ • •

мұндағы, Vj , zj , Wj - үшдиагональ матрицасы бар келесі сызықтық теңдеулер жүйесінің шешімдері:

"aj + j*mvj.

-1 +b

j + j*mvj

Cj+j*mVjj+i = 0; j = 1, ...,m— 1;

vj = 1, vm = 0"

(3)

"aj + j*mzj-i + bj + j*mzj

j____c ■ zj — 0 ■ і — 1 m _________________ 1 ■

cj + j*mzj+i 0; j 1,,,,,AAA 1;

,j — 0 zj = 1

J0 0, zm 1"

“aj + |i*mwj-i + b

U _

j + U*mwj cj + u*mwj+1

j + U*m;

j = 1,..., m — 1;

w,

u - 0, wm = o.

Келесі (3) - (5) теңдеулердің коэффициенттерін есептеу қуалау әдісімен әрбір ішкі облыс үшін параллель жүргізіледі. Осы коэффициенттерді есептегеннен кейін, келесі формадағы параметрлік x_par^ белгісіздері үшін сызықтық теңдеулер жүйесі құрылады:

a^*mvm-1xpar^-1

+ (bu*m a

u

Z^ і — c

lU*m^m-1

vu )Xr

U*m v1y par

u r , u-1 і

cU*m Z1X_paru+1 = fu*m + au*mwm-1 + ^1*™ w

u

U*m vv1;

u

(6)

Осы жүйені (6) қуалау әдісімен шешу арқылы параметрлік белгісіздерді x_paru анықтаймыз. Әрі қарай, (2) формуланы қолдана отырып, әр MPI процесте қалған белгісіздер параллельді есептеліп табылады.

Бұл есептеу алгоритмі параллелизмнің жоғары дәрежесіне ие, өйткені формулалар (3) - (5) бойынша есептеулер әр процессорда параллель орындалады, бірақ жүйенің параметрлік белгісіздерді табатын (6) шешімін бір ғана процессор орындайды. Үлестірілген жады бар есептеу жүйелерінде параметрлік белгісіздіктерді (6) және (2) бойынша белгісіздердің мәнін есептеу кезінде қосымша байланыс шығындарын туындатады, мұнда процессорлардың локальді жадысынан қажетті мәліметтерді өзге процессорларға жіберу операциялары орындалады. Жүйенің (6) коэффициенттері мен шешімін табу үшін 6*size сандарды осы процессордың локальді жадысына жеткізіліп, алынған параметрлік белгісіздерді (2*size) қалған процессорларға тарату қажеттілігі жүзеге асырылады.

Яненконың әдісі үш кезеңнен тұрады: 1) алғашқы шешімдерін табу, 2) шекаралық-процессорлық шешімдерді табу, 3) шешімді қалпына келтіру.

Бұл жұмыста шекаралық процессор нүктелерінен тұратын Яненко әдісінің екінші кезеңін шешу үшін оң қуалау әдісі қолданылды (1-сурет).

1-сурет - Қуалау әдісі

Оң қуалау әдісінің формулалары келесідей көрсетілген:

Со

ао = —һ“' b0

d0

во =b0, b0

аі =

Ci di — aipi-1 i = 1,.

bi + aiai-1' Mi bi + aiai-1'

dsize — asizePsize-1

xsize = 1 І , xi = aixi+1 + Pi,

bsize + asizeasize-1

size — 1,

І = size — 1, .,0.

Қуалау әдісін параллельдеу

Бағдарламаның орындалуы параллельдеуге арналған MPI технологиясын қолдану арқылы жүзеге асырылды. Бойлық-көлденең қуалау әдісін қолдана отырып, екі өлшемді есептер шығарғанда көптеген үш нүктелі теңдеулер жүйесі пайда болатыны көбісіне мәлім. Осындай жүйелердің шешімдерін табу үшін Яненко әдісі қолданылады, оның екінші кезеңінде оң жаққа қуалау әдісі қолданылды.

Бұл тапсырма бір өлшемді декомпозцияны қолдану арқылы орындалды. Бір өлшемді декомпозицияны қолданған кезде тор ауданы көлденең жолақтарға бөлінеді (2-сурет).

Сондықтан, бірінші бөлшектік қадамда j = const болғандағы тор сызықтары бойынша қуалау орындалады, қуалау әдісін жүзеге асырған кезде процессор элементтері арасында мәліметтер алмасуды қажет етпейді. Ал екінші бөлшек қадамда үшнүктелі теңдеулерді i = const тор сызықтары бойынша шешу қажет болғандықтан, Яненко әдісі қолданылады. Мысалға, белгісіздерді үш процеске үлестіріп тарату үшін MPI технолоиясының MPI_Scatter функциясы қолданылады (3-сурет). Әр процеске таратылған белгісіздердің шекаралық мәндері Яненко әдісінің екінші қадамымен орындалады. Атап өткендей, Яненко әдісінің екінші қадамы үшін қарапайым оң қуалау әдісі қолданылды.

3-сурет - Белгісіздерді үш процеске декомпозиациялау мысалы

MPI процессорларының торлы облыстарының шекарасындағы жалпы түйіндерімен байланысқан «параметрлік» белгісіздер ерекшеленеді. Осы параметрлік белгісіздіктер үшін үш нүктелі теңдеулер құрастырылады, олар әр MPI процессорында қуалау әдісінің көмегімен параллельді түрде шешіледі. Содан кейін, айқын формуланы пайдаланып, шешім мәндері бөлек MPI процессор элементіне жататын аралық тор түйіндерінде қалпына келтіріледі және есептеулер бір уақытта орындалады.

Зерттеу нәтижелері мен тұжырымы

Жүзеге асырылған алгоритмдер 4 ядролы Intel Core І7-5775 CPU процессорында сыналды. Жылу өткізгіштік теңдеуінің әртүрлі матрица өлшемдері үшін есептеу тестері жүргізілді. Параллельді бағдарлама MPI технологиясының көмегімен орындалып, жүзеге асырылды. Келесі кестеде параллельді бағдарлама уақыттары көрсетілген (1-кесте).

1-кесте - Параллельді бағдарламаның орындалу уақыты (сек)

Тор өлшемі Процестер саны

1 2 4 8

512x512 1,16 0,65 1,7 4,5

1024x1024 3,25 2,1 1,6 2,9

2048x2048 14,3 8,2 5,75 4,8

Параллельді бағдарлама процестер саны артқан сайын уақыты оңтайланып, төмендейтіні байқалады. Алайда, тор өлшемі төмен матрицаларда 8 процесс санын қолданған жағдайда уақыт мәнінің жоғарылағанын байқауға болады. Бұл орындалып жатқан процесс үшін берілген тор өлшемі төмен және процесаралық коммуникацияға кететін қосымша шығындардың болуымен сипатталады. Келесі суреттерде алынған үдеу және тиімділік нәтижелері сипатталған (4-сурет).

ҮДЕУ

—♦—512x512

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

1024x1024

2048x2048

3,5

3

2,5

2

1,5

1

0,5

0

4 - сурет - Параллельді бағдарлама үдеуі

Параллельді бағдарлама үдеуі суретінде есептеуіш нүктелер санын арттырған сайын, үдеудің өсуі байқалады. Алайда, матрицаның кіші өлшемдерінде 4 және 8 процесс қолданылған жағдайда үдеу төмендегенін байқауға болады. Бұл процестер санын арттырған кездегі Яненко әдісінің екінші қадамына кететін қажетті коммуникациялық шығындардың өсуімен сипатталады.

Келесі 5-суретте әртүрлі процесс сандарын қолданған кездегі параллельді бағдарлама тиімділігі бейнеленген. Процестер саны артқан сайын тиімділіктің мәндері төмендегені байқалады. Бұл процесс санын көбейткенде тор өлшемін де көбейтіп отырудың қажеттілігімен сипатталады. Тиімділіктің жақсы нәтижелері 2 және 4 процестер санын қолданған кезде байқалады.

ТИІМДІЛІК

—♦—512x512

1024x1024

2048x2048

1,2

1

* 0,8 5

^ 0,6 х

0,4

0,2

0

Талқылау

Т.Н. Биярова, Вальдемар Вуйцик профессорлардың 70 жылдық және профессор Е.Н.Әмірғалиевтің 60 жылдығы мерейтойларына арналған "Информатика және қолданбалы математика" атты IV Халықаралық ғылыми-практикалық конференция бойынша мақала алынып қарастырылды. Мақала шығарылған уақыты 25-29 қыркүйек 2019, Алматы, Қазақстан

Мақала тақырыбы: «Жылу өткізгіштіктің 2D теңдеуі үшін қуалау әдісін параллель іске асыру», авторлары Кенжебек Е.Г.,Иманкулов Т.С.,Маткерим Б.,Ахмед-Заки Д.Ж.

Бұл жұмыс жылу өткізгіштіктің 2D теңдеуін шешу үшін қуалау әдісін параллель жүзеге асыруға арналған екен. Екі өлшемді жылу өткізгіштік есебінің сандық шешімі бойлық-көлденең қуалау әдісі арқылы шешуі қарастырылған. 1D және 2D деректерді декомпозициялау кезінде Яненко әдісін қолдана отырып, жылу өткізгіштік теңдеуін шешу үшін параллельді қуалау әдісі жүзеге асырылуын көрсетеді.. Атап айтқанда, 2D декомпозициясымен, қуалаудың әр бағыты бойынша Яненко әдісі қолданылған. 1D ыдырауға арналған параллель бағдарлама шағын MPI процестерін қолдануда тиімді екендігі, ал 2D декомпозициясының параллельдік бағдарламасы үлкен есептеуіш жүйелерді үлкен көлемдегі тапсырмалар үшін қолданған кезде тиімдірек болатынын есептеп көрсетілген [18].

Қорытынды

Бұл мақала екі өлшемді жылу өткізгіштік теңдеуі үшін Яненко әдісінің көмегімен параллельдеуге арналған. Яненко әдісінің қадамдарында оң қуалау әдісі қолданылды. Қуалау әдісін параллельдеуге арналған 1D декомпозицялы параллельді бағдарлама құрылды. Параллельді бағдарлама 2 және 4 процестер санымен жүзеге асырылғанда тиімді болып саналады. Сонымен қатар, бұл бағдарлама кіші өлшемді матрицаларда жұмыс жасағанда тиімді болып табылатыны анықталды.

Параллелизация технологиясы ретінде MPI таңдалған. MPI сапаны жүзеге асырудың барлық жиынтығына ие. Бұл бағдарлама асинхронды байланысты, хабар буферін тиімді басқаруды, тиімді топтарды және бай функционалдылықты қамтамасыз етеді. MPI ұжымдық байланыс операцияларының үлкен жиынтығын, виртуалды топологияны және әртүрлі байланыс әдістерін қамтиды, сонымен қатар MPI кітапханалар мен гетерогенді желілерді қолдайды. MPI портативті, стандарттауды, өнімділікті және функционалдылықты қолдайтын бірнеше жоғары сапалы енгізулерге ие.

Қазіргі кезде процестерді дифференциалдық теңдеулерді сандық шешу арқылы модельдеу ғылымның әр саласында кең қолданылады. Өйткені, компьютерлік технологиялар мен сандық

5 - сурет - Параллельді бағдарлама тиімділігі

әдістердің дамуы осындай теңдеулерді шешуге ықпал етеді. Ең көп таралған әдістер дифференциалдық есепті сызықтық алгебралық теңдеулер жүйесіне келтіреді. Осындай жүйелерді шешетін әдістерге іске қосудың түрлі нұсқалары кіреді. Көп ядролы процессорлар мен графикалық үдеткіштерді қолдана отырып, есептеу жүйелерінің пайда болуы мен дамуы іске қосу параллельдеу мәселесін өзекті етеді. Зерттеу нәтижелері ғылыми-зерттеу институттары мен университеттерде сабақ беру үшін қолданылады.

Пайдаланылған әдебиеттер

1. Волосова А.В. (2020) Параллельные методы и алгоритмы. Учебное пособие. М.: МАДИ. - 176 с.

2. Самарский А.А., Николаев Е.С. (1987) Методы решения сеточных уравнений. М.: Наука. - 561 с.

3. Самарский А.А. (2005) Введение в численные методы. СПб.: Лань - 288 с.

4. Davidson A., Zhang Y., D. Owens J. (2011) An auto-tuned method for solving large tridiagonal systems on the GPU. Conference Parallel & Distributed Processing Symposium (IPDPS), 2011 IEEE International, P. 956-965

5. Kim H.-S., Wu S., Chang L.-W., Hwu W.-M. (2011) A scalable tridiagonal solver for GPUs. In Parallel Processing (ICPP), 2011 International Conference. P. 444 -453.

6. Hockney R. W., Jesshope C. R. (1986) Parallel computers: architecture, programming and algorithm. Hilger. Bristol. P. 274-280.

7. Быков А.Н., Ерофеев А.М., Сизов Е.А., Федоров А.А. (2013) Метод распараллеливания прогонки на гибридных ЭВМ // Вычислительные методы и программирование. Т. 14. Раздел 2. С. 43-47.

8. Jeffers J., Reinders J. (2013) Intel Xeon Phi Coprocessor High-Performance Programming. Morgan Kaufmann Publishers Inc. San Francisco. 432 p.

9. Goddeke D., Strzodka R. (2011) Cyclic reduction tridiagonal solvers on GPUs applied to mixed-precision multigrid. IEEE Transactions on Parallel and Distributed Systems. Vol. 22. P. 22-32.

10. Старченко А.В., Берцун В.Н. (2013) Методы параллельных вычислений. Томск: Изд-во Том. ун-та. - 223 c.

11. Ильин С.А. Старченко А.В. (2015) Распараллеливание схемы покомпонентного расщепления для численного решения уравнения теплопроводности // Параллельные вычислительные технологии (ПаВТ’ 2015): Труды международной научной конференции (Екатеринбург, 31 марта - 2 апреля 2015 г.). Челябинск: Издательский центр ЮУрГУ. С. 399-402.

12. Быков А.Н., Веселов В.А., Воронин Б.Л., Ерофеев А.М. (2008) Методика РАМЗЕС-КП для расчета пространственных движений многокомпонентных теплопроводных сред в эйлерово-лагранжевых координатах. Вып. 13. Саров. C. 50-57.

13. Chang L.-W., Stratton J.A., Kim H.-S., Hwu W.-M. (2012) A scalable, numerically stable, highperformance tridiagonal solver using GPUs. High Performance Computing, Networking, Storage and Analysis (SC), 2012 International Conference for. IEEE Computer Society Press. 11 p.

14. Polizzi E., Sameh A. (2006) A parallel hybrid banded system solver: The SPIKE algorithm. Parallel Computing. Vol. 32, No. 2. P. 177-194.

15. Головашкин Д.Л. (2002) Применение метода встречных прогонок для синтеза параллельного алгоритма решения сеточных уравнений трехдиагонального вида // Компьютерная оптика. N24. С. 33-39

16. Яненко Н.Н., Коновалов А.Н., Бугров А.Н., Шустов Г.В. (1978) Об организации параллельных вычислений и “распараллеливании” прогонки // Численные методы механики сплошной среды. Т. 9. №7. С. 139-146.

17. Сапронов И.С., Быков А.Н. (2009) Параллельно-конвейерный алгоритм // Атом. № 44. С. 24- 25

18. Кенжебек Е.Г., Иманкулов Т.С., Маткерим Б., Ахмед-Заки Д.Ж. (2019) Жылу өткізгіштіктің 2D теңдеуі үшін қуалау әдісін параллель іске асыру // Биярова Т. Н., Вальдемар Вуйцик профессорлардың 70 жылдық және профессор Е. Н. Әмірғалиевтің 60 жылдығы мерейтойларына арналған "Информатика және қолданбалы математика" атты IV Халықаралық ғылыми-практикалық конференция, 25-29 қыркүйек 2019, Алматы, Қазақстан. №1, С. 261-269.

References

1. Volosova A.V. (2020) Parallel'nye metody i algoritmy. Uchebnoe posobie. [Parallel methods and algorithms. Textbook]. M.: MADI. - 176 s. [in Russian]

2. Samarskij A.A., Nikolaev E.S. (1987) Metody resheniya setochnykh uravnenij. [Methods for solving grid equations]. M.: Nauka. - 561 s. [in Russian]

3. Samarskij A.A. (2005) Vvedenie v chislennye metody [Introduction to numerical methods]. SPb.: Lan. - 288 s. [in Russian]

4. Davidson A., Zhang Y., D. Owens J. (2011) An auto-tuned method for solving large tridiagonal systems on the GPU. Conference Parallel & Distributed Processing Symposium (IPDPS), 2011 IEEE International, P. 956-965

5. Kim H.-S., Wu S., Chang L.-W., Hwu W.-M. (2011) A scalable tridiagonal solver for GPUs. In Parallel Processing (ICPP), 2011 International Conference. P. 444 -453.

6. Hockney R. W., Jesshope C. R. (1986) Parallel computers: architecture, programming and algorithm. Hilger. Bristol. P. 274-280.

7. Bykov A.N., Erofeev A.M., Sizov E.A., Fedorov A.A. (2013) Metod rasparallelivaniya progonki na gibridnykh EVM // Vychislitel'nye metod' i programmirovanie. T. 14. Razdel 2. S. 43-47. [Method of parallelization of the run on hybrid computers // Computational methods and programming. Vol. 14. Section 2. pp. 43-47]. [in Russian]

8. Jeffers J., Reinders J. (2013) Intel Xeon Phi Coprocessor High-Performance Programming. Morgan Kaufmann Publishers Inc. San Francisco. 432 p.

9. Goddeke D., Strzodka R. (2011) Cyclic reduction tridiagonal solvers on GPUs applied to mixed-precision multigrid. IEEE Transactions on Parallel and Distributed Systems. Vol. 22. P. 22-32.

10. Starchenko A.V., Berczun V.N. (2013) Metody parallel'nykh vychislenij [Methods of parallel computing].. Tomsk: Izd-vo Tom. un-ta. - 223 s. [in Russian]

11. Ilyin S.A., Starchenko A.V. (2015) Rasparallelivanie skhemy pokomponentnogo rasshhepleniya dlya chislennogo resheniya uravneniya teploprovodnosti // Parallel'nye vychislitel'nye tekhnologii (PaVT' 2015): Trudy mezhdunarodnoj nauchnoj konferenczii (Ekaterinburg, 31 marta - 2 aprelya 2015 g.). Chelyabinsk: Izdatelskij czentr YuUrGU. S. 399-402. [Parallelization of the component-by-component splitting scheme for the numerical solution of the heat equation // Parallel computing Technologies (PaVT’ 2015): Proceedings of the International Scientific Conference (Yekaterinburg, March 31 - April 2, 2015). Chelyabinsk: SUSU Publishing Center. pp. 399402]. [in Russian]

12. Bykov A.N., Veselov V.A., Voronin B.L., Erofeev A.M. (2008) Metodika RAMZES-KP dlya rascheta prostranstvennykh dvizhenij mnogokomponentnykh teploprovodnykh sred v ejlerovo-lagranzhevykh koordinatakh. Vyp. 13. Sarov. C. 50-57. [The RAMSES-KP method for calculating the spatial motions of multicomponent heat-conducting media in Eulerian-Lagrangian coordinates. Vol. 13. Sarov. C. 50-57]. [in Russian]

13. Chang L.-W., Stratton J.A., Kim H.-S., Hwu W.-M. (2012) A scalable, numerically stable, highperformance tridiagonal solver using GPUs. High Performance Computing, Networking, Storage and Analysis (SC), 2012 International Conference for. IEEE Computer Society Press. 11 p.

14. Polizzi E., Sameh A. (2006) A parallel hybrid banded system solver: The SPIKE algorithm. Parallel Computing. Vol. 32, No. 2. P. 177-194.

15. Golovashkin D.L. (2002) Primenenie metoda vstrechnykh progonok dlya sinteza parallel'nogo algoritma resheniya setochnykh uravnenij trekhdiagonal'nogo vida // Kompyuternaya optika. N24. S. 33-39 [Application of the method of counter pregonar for the synthesis of parallel algorithms for the solution of the difference equations is tridiagonal form // Computer optics. N24. P. 33-39] [in Russian]

16. Yanenko N.N., Konovalov A.N., Bugrov A.N., Shustov G.V. (1978) Ob organizaczii parallel'nykh vychislenij i “rasparallelivanii” progonki // Chislennye metody mekhaniki sploshnoj sredy. T. 9. #7. S. 139-146. [The organization of parallel computing and “parallel” run // Numerical methods of continuum mechanics. Vol. 9. No. 7. pp. 139-146] [in Russian]

17. Sapronov I.S., Bykov A.N. (2009) Parallel'no-konvejernyj algoritm [Parallel-pipeline algorithm] // Atom. # 44. S. 24-25 [in Russian]

18. Kenzhebek E.G., Imankulov T.S., Matkerim B., Akhmed-Zaki D.Zh. (2019) Zhylu otkizgishtiktin 2D tendeuiushin kualau adisin parallel iske asyru // Biyarova T. N., Valdemar Vujczik professorlardyn 70 zhyldyk zhane professor E. N. Amirgalievtin 60 zhyldygy merejtojlaryna arnalgan "Informatika zhane ^ldanbaly matematika" atty IV Khalykaralyk gylymi-praktikalyk konferencziya, 25-29 қyrkujek 2019, Almaty, Kazakstan. #1, S. 261-269.[Parallel implementation of the pursuit method for the 2D equation of thermal conductivity // IV International Scientific and practical conference "Informatics and Applied Mathematics", dedicated to the 70th anniversary of the birth of professors Biarova T. N., Valdemar Vuytsik and the 60th anniversary of Professor E. N. Amirgaliyev, September 25-29, 2019, Almaty, Kazakhstan. No. 1, pp. 261-269] [in Kazakh].

Параллельная реализация метода Яненко для решения уравнения теплопроводности

А.Н. Семятова*, Е.Ғ. Кенжебек

Казахский национальный университет имени аль-Фараби, Алматы, Казахстан E-mail*: salinura661 @gmail. com

В данной статье рассматривается параллельная реализация алгоритма Яненко для двумерного уравнения теплопроводности, для численного решения уравнения теплопроводности был использован метод прогонки. Выполнение последовательной программы осуществляется в простом двухэтапном шаге методом продольно-поперечной прогонки, однако распараллеливание двух дробных шагов с неявной схемой затруднено из-за межпроцессного обмена данными. В исследовании показано параллельное распределение данных с одномерной декомпозицией при использовании метода Яненко для расчета теплопроводности. Получены

результаты распараллеливания данной задачи с использованием декомпозиции 1D и проанализированы изображения ускорения и эффективности с целью оценки параллельной программы. В настоящее время моделирование процессов путем численного решения дифференциальных уравнений широко используется в различных областях науки, наиболее распространенные методы приводят дифференциальную задачу в систему линейных алгебраических уравнений, методы, решающие такие системы, включают различные варианты запуска. Появление и развитие вычислительных систем с использованием многоядерных процессоров и графических ускорителей актуализируют проблему пускопараллеливания; результаты исследования используются для преподавания в научно-исследовательских институтах и университетах.

Ключевые слова: параллельная реализация, неявная схема, метод прогонки, метод Яненко, технология

MPI.

Parallel implementation of the Yanenko method for solving the heat equation

A. N. Semyatova*, E.G. Kenzhebek al-Farabi Kazakh National University, Almaty, Kazakhstan E-mail*: salinura661 @gmail. com

In this article, we will consider the parallel implementation of the Yanenko algorithm for the two-dimensional heat equation, and the sweep method was used to numerically solve the heat equation. The implementation of the sequential program is carried out simply in two-part steps by the longitudinal-transverse run, however, parallelization of two fractional steps with an indefinite scheme is difficult due to the creation of inter-process communication of data. In the course of the study, a parallel data distribution with one-dimensional decompositions is shown in the application of the Yanenko method for calculating heat conductivity. The results of parallelization of this task using the 1D decomposition were obtained and acceleration and efficiency images were analyzed in order to evaluate the parallel program. Currently, modeling of processes by numerical solution of differential equations is widely used in every field of Science, the most common methods bring the differential problem to a system of linear algebraic equations, methods that solve such systems include various startup options. The emergence and development of computing systems using Multi-Core processors and graphics accelerators make the problem of startup parallelization relevant; the results of the study are used for teaching in research institutes and universities.

Keywords: parallel implementation, implicit scheme, sweep method, Yanenko method, MPI technology.

АВТОРЛАР ТУРАЛЫ АҚПАРАТ

Семятова Алинура Наримановна, магистрант, Әл-Фараби атындағы ҚазҰУ, Алматы, Қазақстан; [email protected]

Кенжебек Ержан Ғ., докторант, Әл-Фараби атындағы ҚазҰУ, Алматы, Қазақстан; [email protected]

ИНФОРМАЦИЯ ОБ АВТОРАХ

Семятова Алинура Наримановна, магистрант, Казахский национальный университет им. Аль-Фараби, Казахстан, Алматы; [email protected]

Кенжебек Ержан Г., докторант, Казахский национальный университет им. Аль-Фараби, Алматы, Казахстан; [email protected]

INFORMATION ABOUT THE AUTHORS

Alinura N. Semyatova, masters degree, Al-Farabi Kazakh National University, Almaty, Kazakhstan; salinura661 @gmail.com

Erzhan G. Kenzhebek, doctoral student, Al-Farabi Kazakh National University, Almaty, Kazakhstan; [email protected]

Редакцияға түсті / Поступила в редакцию / Received 04.03.2021 Жариялауға қабылданды / Принята к публикации / Accepted 15.06.2021

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