Научная статья на тему 'Параллельные решатели СЛАУ в пакетах программ Российского федерального ядерного центра - Всероссийского научно-исследовательского Института экспериментальной физики'

Параллельные решатели СЛАУ в пакетах программ Российского федерального ядерного центра - Всероссийского научно-исследовательского Института экспериментальной физики Текст научной статьи по специальности «Математика»

CC BY
448
81
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМЫ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ / МНОГОСЕТОЧНЫЙ МЕТОД / МЕТОД ШВАРЦА / OPENMP / MPI / МАСШТАБИРУЕМОСТЬ / ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ВЫЧИСЛЕНИЯ / SYSTEMS OF LINEAR ALGEBRAIC EQUATIONS / MULTIGRID METHOD / SCHWARTZ METHOD / SCALABILITY / HIGH PERFORMANCE COMPUTING

Аннотация научной статьи по математике, автор научной работы — Алейников А. Ю., Барабанов Р. А., Бартенев Ю. Г., Ерзунов В. А., Карпов А. П.

Современные суперкомпьютеры содержат тысячи вычислительных узлов и сопроцессоров. Для того чтобы использовать такие мощности, необходимо разрабатывать эффективные параллельные методы и программы, в том числе и для решения систем линейных алгебраических уравнений. В статье представлен обзор библиотеки PMLP/Parsol и пакета «ЛОГОС.Аэрогидромеханика», позволяющих проводить подобные вычисления с использованием распараллеливания средствами MPI и OpenMP. Представлены результаты экспериментов на модельных задачах распространения тепла, обтекания вязким турбулентным газом, задачах деформации твердого тела, диффузии жидкости в пористой среде и расчете дебита нефтяного пласта. Количество задействованных вычислительных ядер при этом достигало ~104. К основным методам параллельного решения СЛАУ, реализованным и используемым в комплексе LParsol, относятся параллельный метод Шварца (варианты MPI и OpenMP) и алгебраический многосеточный метод (AMG, селективный и агрегативный). В качестве итерационных решателей используются предобусловленные решатели CG и BiCGStab. Предобусловливателями могут выступать различные многопоточные варианты неполного ILU/IC-разложения. Одним из преимуществ библиотеки PMLP/Parsol является возможность использования имеющихся конструкций, сохраняющихся на потоке СЛАУ, что позволяет снизить затраты при вычислениях, например на построение предобусловливателя. Кроме того, имеется возможность адаптивной подстройки решателя к изменяющимся по сложности СЛАУ в потоке. Результаты представленных экспериментов показывают, что библиотека PMLP/Parsol пригодна для решения СЛАУ, возникающих в задачах из различных областей вычислительной математики. Комплекс библиотек LParsol используется во многих пакетах программ Российского федерального ядерного центра Всероссийского научно-исследовательского института экспериментальной физики.

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

Похожие темы научных работ по математике , автор научной работы — Алейников А. Ю., Барабанов Р. А., Бартенев Ю. Г., Ерзунов В. А., Карпов А. П.

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

PARALLEL SLAE SOLVERS IN PROGRAM PACKAGES OF Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics

It is widely known, that modern supercomputers contain thousands of computational nodes and co-processors. Making this power work for our needs requires exploiting effective parallel methods and programs, including programs for solving systems of linear algebraic equations. This article presents a review of PMLP/Parsol library and “LOGOS.Aerohydromechanics” package, which allow such computations, using MPI and OpenMP facilities. The results of experiments in problems of heat diffusion, viscid turbulent gas flow, solid body distortion, fluid diffusion in porous medium, production rate simulations are shown. The number of utilized computational cores is approximately 104. The main methods of parallel SLAE solving, which are implemented in LParsol, are parallel Schwartz method (MPI and OpenMP variants) and algebraic multigrid method (AMG, selective and aggregative). Preconditioned solvers like CG and BiCGStab are used as iterative solvers. Different versions of incomplete ILU/IC factorization are used as preconditioners. One of the main advantages of PMLP/Parsol library is the ability of utilizing structures, which remain the same on the flow of SLAEs. This allows reducing computational overhead for building a preconditioner, for example. Moreover, there is an option of adaptive solver adjustment for SLAEs in the flow, while their difficulty is changing. The results of experiments presented show, that PMLP/Parsol library is suitable for solving SLAEs, which arise from problems of different computational mathematics fields. LParsol library complex is used in lots of program packages of Russian Federal Nuclear Center All-Russian Research Institute of Experimental Physics.

Текст научной работы на тему «Параллельные решатели СЛАУ в пакетах программ Российского федерального ядерного центра - Всероссийского научно-исследовательского Института экспериментальной физики»

DOI: 10.15593/2224-9982/2016.47.04 УДК 004.42:512.644

А.Ю. Алейников, Р.А. Барабанов, Ю.Г. Бартенев, В.А. Ерзунов, А.П. Карпов, В.Ю. Кузнецов, Д.А. Петров, В.Ю. Резчиков, А.Н. Стаканов, Е.Б. Щаникова

Российский федеральный ядерный центр - Всероссийский научно-исследовательский институт экспериментальной физики,

Саров, Россия

ПАРАЛЛЕЛЬНЫЕ РЕШАТЕЛИ СЛАУ В ПАКЕТАХ ПРОГРАММ РОССИЙСКОГО ФЕДЕРАЛЬНОГО ЯДЕРНОГО ЦЕНТРА -ВСЕРОССИЙСКОГО НАУЧНО-ИССЛЕДОВАТЕЛЬСКОГО ИНСТИТУТА ЭКСПЕРИМЕНТАЛЬНОЙ ФИЗИКИ

Современные суперкомпьютеры содержат тысячи вычислительных узлов и сопроцессоров. Для того чтобы использовать такие мощности, необходимо разрабатывать эффективные параллельные методы и программы, в том числе и для решения систем линейных алгебраических уравнений. В статье представлен обзор библиотеки PMLP/ParSol и пакета «ЛОГОС.Аэрогидро-механика», позволяющих проводить подобные вычисления с использованием распараллеливания средствами MPI и OpenMP. Представлены результаты экспериментов на модельных задачах распространения тепла, обтекания вязким турбулентным газом, задачах деформации твердого тела, диффузии жидкости в пористой среде и расчете дебита нефтяного пласта. Количество задействованных вычислительных ядер при этом достигало ~104.

К основным методам параллельного решения СЛАУ, реализованным и используемым в комплексе LParsol, относятся параллельный метод Шварца (варианты MPI и OpenMP) и алгебраический многосеточный метод (AMG, селективный и агрегативный). В качестве итерационных решателей используются предобусловленные решатели CG и BiCGStab. Предобусловливателя-ми могут выступать различные многопоточные варианты неполного ILU/IC-разложения.

Одним из преимуществ библиотеки PMLP/ParSol является возможность использования имеющихся конструкций, сохраняющихся на потоке СЛАУ, что позволяет снизить затраты при вычислениях, например на построение предобусловливателя. Кроме того, имеется возможность адаптивной подстройки решателя к изменяющимся по сложности СЛАУ в потоке.

Результаты представленных экспериментов показывают, что библиотека PMLP/ParSol пригодна для решения СЛАУ, возникающих в задачах из различных областей вычислительной математики. Комплекс библиотек LParSol используется во многих пакетах программ Российского федерального ядерного центра - Всероссийского научно-исследовательского института экспериментальной физики.

Ключевые слова: системы линейных алгебраических уравнений, многосеточный метод, метод Шварца, OpenMP, MPI, масштабируемость, высокопроизводительные вычисления.

A.Yu. Aleynikov, R.A. Barabanov, Yu.G. Bartenev, V.A. Erzunov, A.P. Karpov, V.Yu. Kuznetsov, D.A. Petrov, V.Yu. Rezchikov, A.N. Stakanov, E.B. Shchanikova

Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics, Sarov, Russian Federation

PARALLEL SLAE SOLVERS IN PROGRAM PACKAGES OF RUSSIAN FEDERAL NUCLEAR CENTER - ALL-RUSSIAN RESEARCH INSTITUTE OF EXPERIMENTAL PHYSICS

It is widely known, that modern supercomputers contain thousands of computational nodes and co-processors. Making this power work for our needs requires exploiting effective parallel methods and programs, including programs for solving systems of linear algebraic equations. This article presents a review of PMLP/ParSol library and "LOGOS.Aerohydromechanics" package, which allow such computations, using MPI and OpenMP facilities. The results of experiments in problems of heat diffusion, viscid turbulent gas flow, solid body distortion, fluid diffusion in porous medium, production rate simulations are shown. The number of utilized computational cores is approximately 104.

The main methods of parallel SLAE solving, which are implemented in LParSol, are parallel Schwartz method (MPI and OpenMP variants) and algebraic multigrid method (AMG, selective and aggregative). Preconditioned solvers like CG and BiCGStab are used as iterative solvers. Different versions of incomplete ILU/IC factorization are used as preconditioners.

One of the main advantages of PMLP/ParSol library is the ability of utilizing structures, which remain the same on the flow of SLAEs. This allows reducing computational overhead for building a pre-conditioner, for example. Moreover, there is an option of adaptive solver adjustment for SLAEs in the flow, while their difficulty is changing.

The results of experiments presented show, that PMLP/ParSol library is suitable for solving SLAEs, which arise from problems of different computational mathematics fields. LParSol library complex is used in lots of program packages of Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics.

Keywords: systems of linear algebraic equations, multigrid method, Schwartz method, OpenMP, MPI, scalability, high performance computing.

Введение

В пакетах параллельных программ «ЛОГОС.Аэрогидромеханика», «ЛОГОС.Прочность», «НИМФА» [1-3], ряде программ моделирования задач ядерной энергетики применяются неявные методы и, соответственно, решатели разреженных СЛАУ. Предшествующие работы по теме доклада отражены в статьях [4-6].

Если ранее основным средством достижения параллелизма являлось использование MPI, то в последнее время повысилась актуальность использования добавочно возросшего многопоточного и векторного параллелизма современных и будущих процессоров.

Представлены отвечающие этой тенденции реализации алгебраического многосеточного метода, аддитивного метода Шварца, симметричного метода Гаусса-Зейделя, неполного разложения ILU0/IC0, итерационных решателей CG и BiCGStab, выполненные в библиотеке PMLP/ParSol комплекса библиотек LParSol и пакете «ЛОГОС. Аэрогидромеханика». В комплекс библиотек LParSol помимо PMLP/ParSol входят также библиотеки параллельных многопоточных решателей СЛАУ TParFBSS [7] и массивно-параллельных решателей VC RAN SLAU [8]; интерфейсы вызовов мультипоточного решателя Intel PARDISO [9] и параллельного предобусловливателя AMG библиотеки Hypre [10] в качестве предобусловливателей итерационных решателей PMLP/ParSol. В LParSol входит также некоторый инструментарий1.

Постановка задачи и общие сведения о библиотеке

Для распределенной СЛАУ Axx = b, где A - NxN матрица, b -вектор, найти вектор

- хп итерационно: || b - Axxn || < е || b ||, e <<1; n << N, tn ~ O(N), xn, x0 - векторы;

- x прямым методом; далее х при необходимости уточнить итерационно.

В PMLP/ParSol комбинация Mx(Axx = b) - preconditionerxsolver выполняет решение СЛАУ в подпространствах Крылова (r0, Axr0, A2xro,..., Anxr0). В PMLP/ParSol реализованы параллельные многопоточные итерационные решатели2:

- CG_mpiomp(A,b,x,preconditioner,crit, е, ierr) - сопряженных градиентов,

- BiCGStab_mpiomp(...) - бисопряженных градиентов стабилизированный,

- BiCGStab2_mpiomp(...) - дважды бисопряженных градиентов стабилизированный;

1 Тестовая система и средства анализа СЛАУ, параллельная библиотека графов ParMatruz (разбиение графа, сужение ленты матрицы [11], раскраска графа), параллельный спектральный решатель SPD-матриц VC_RAN_Eigen [12].

2 Обозначим ..._seq или ..., ..._mpi, ..._omp, ..._mpiomp - последовательную, параллельную, многопоточную и параллельную многопоточную функцию., где для распараллеливания использованы средства MPI [13], OpenMP [14].

последовательные предобусловливатели:

- lCo(A,M,Ab,Ax), ILU0(...), ICt(...,r), ILUt(...,T) - неполные разложения матрицы [15],

- IC2(..., т1, т2) - второго порядка точности разложение симметричной матрицы [16],

- AMG(..., smooth, ...) - селективный алгебраический многосеточный [17];

многопоточные предобусловливатели (на общей памяти):

- ILU0_omp(...), ILUt_omp(..., т) ,

- AMG_omp(..., smooth_omp, ...),

- Schwartz_omp(..., precond_seq, cross, ...) - блочный с перекрытием метод Шварца [15];

параллельные (на распределенной памяти) многопоточные пре-добусловливатели:

- AMG_mpiomp( ..., smooth, ...),

- Schwartz_mpi( precond_omp, cross, ...),

- CGC_mpi(A,Mc,coarse_cells_nums) x Schwartz_mpi(A,M,precond_ omp, . ) - усилитель блочного предобусловливателя коррекцией поправки на грубой сетке4.

Охарактеризуем перечисленные методы. Блочные методы действуют в каждом домене (подобласти) СЛАУ независимо, полусквозные - в группе доменов, сквозные - во всей СЛАУ. Так, итерационные решатели CG_mpiomp, BiCGStab_mpiomp, точечный предобусловлива-тель Якоби (обратная диагональ), предобусловливатель AMG_mpiomp являются сквозными методами; предобусловливатели ILU0_omp, ILUt_omp(T), AMG_omp являются сквозными в узле с общей памятью и полусквозными при использовании в Schwartz_mpi. Последовательные предобусловливатели становятся блочными многопоточными при использовании в Schwartz_omp. Многопоточные предобусловливатели становятся полусквозными или дважды блочными параллельными при использовании в Schwartz_mpi , который, в свою очередь, становится подобным сквозному с усилителем CGC_mpi.

3 Полное разложение с отсечением по малости значения пока только для блочно-трехдиагональной части матрицы.

4 Coarse Grid Correction [18].

5 Например, Schwartz_mpi(IC0_omp, ...) - полусквозной, а Schwartz_mpi(Schwartz_omp (IC0, ...), ... ) - дважды блочный.

Многопоточный режим решения СЛАУ в PMLP/ParSol используется на гомогенных параллельных ЭВМ и находится в стадии оптимизации к гетерогенным параллельным ЭВМ.

В «ЛОГОС.Аэрогидромеханика» реализованы сквозные MPIxOMP решатели:

- SGS_mpiomp(A,b,x,rtol) - многоцветный и конвейерный решатель Гаусса-Зейделя,

- DILU_mpiomp(...) - многоцветный и конвейерный диагональный ILUо,

- AgAMG_mpiomp(..., nAggCell, smootherf, smootherс, nStepRconst) -агрегативный AMG для нескольких неизвестных с одной ведущей неизвестной в каждой ячейке сетки, где

- А - распределенная матрица с перекрытиями между MPI-областями в один слой;

- nAggCell - число агрегируемых ячеек в одну грубую ячейку;

- smootherf - сглаживатель SGS_mpiomp / DILU_mpiomp подробных уровней;

- smootherс - сглаживатель грубых уровней (=smootherf или многоцветный DILU/SGS);

- nStepRconst - число СЛАУ с постоянным агрегированием ячеек.

Планируется включение AgAMG в PMLP/ParSol в качестве параллельного многопоточного решателя и предобусловливателя для использования в других приложениях.

Особенности решения СЛАУ в библиотеке PMLP/ParSol

Библиотека PMLP/ParSol позволяет воспользоваться некоторыми структурами, общими для нескольких СЛАУ, использовать одинарную и двойную точность предобусловливания, что способствует сокращению затрат на решение СЛАУ, задавать разные решатели для решения СЛАУ разного типа в одной задаче на одном и разных множествах процессоров, адаптивно подстраиваться к сложности СЛАУ, что позволяет «подогнать» решатель к стадии счета задачи, физическому процессу [19]. Например, в задаче газовой динамики с лучистой теплопроводностью применение CGC_mpi(...) x Schwartz_mpi(...) x BiCGStab_mpi(...) для решения только первых двух СЛАУ и Schwartz_mpi(.)xBiCGStab_mpi(.) для остальных СЛАУ в итерациях

по нелинейности на каждом временном шаге ускорило счет в 1,4 раза. Другой пример приведен в табл. 1 для БСО5?аЪ_шр1 с разными предо-бусловливателями.

Таблица 1

*

Затраты решателей СЛАУ в задаче распространения тепла

Предобусловливатель Время решения (с) (процент от общего времени задачи) Число итераций: общее / среднее / максимальное

ЛМО_шр1(О5, ...). 151 (88 %) 1140 / 30 / 35

ЛМО_шр1(О5, Р = сош1, .) 140 (89 %) 1145 / 30 / 36

1асоЫБ1оск_щ>\(!Ьи0) 464 (98 %) 13101 / 345 / 381

* Решение 38 СЛАУ в «ЛОГОС.Тепло» на 12 ядрах, 1,6 млн ячеек.

Использование ЛМО здесь экономичнее блочного 1Ьи0. Применение матрицы пролонгации Р (и матрицы рестрикции) на всем потоке 38 СЛАУ с одинаковым портретом матриц, вычисленных при решении первой СЛАУ, заметно ускорило счет задачи.

Пользователь подает решателю из библиотеки РМЬР/РагБо1 свою (локальную) часть распределенной матрицы, вектора правой части и начального приближения, и решатель СЛАУ выдает решения в распределенный вектор начального приближения. Распределение строк матрицы и векторов по процессам должно совпадать. В блоке решателя СЛАУ комплекса «ЛОГОС.Аэрогидромеханика» локальная часть матрицы МР1-процесса дополнена строками в конце, которые соответствуют граничащим неизвестным соседних подобластей. Характеристики матриц СЛАУ пакетов Российского федерального ядерного центра -Всероссийского научно-исследовательского института экспериментальной физики (РФЯЦ-ВНИИЭФ), решаемых решателями:

- вещественные, разреженные, невырожденные, распределенные, размером N - до 1010;

- нерегулярные и регулярные, хорошо и плохо обусловленные;

- несимметричные и симметричные, не обязательно положительно определенные;

- точечные и мелкоблочные (с постоянным размером блока ненулевых коэффициентов).

Примеры решения СЛАУ в гражданских пакетах РФЯЦ-ВНИИЭФ

Далее продемонстрируем возможности решателей СЛАУ на кластере в задачах: аэродинамики; прочности; сжатия мишени рентгеновским излучением в лазерной установке; гидрогеологии; нефтедобычи.

В задаче аэродинамики (пакет ЛОГОС.Аэрогидромеханика) показано применение AgAMG_mpiomp для решения мелкоблочной (блоки 5 х 5) СЛАУ с адаптивной техникой переиспользования структур грубых матриц. На рис. 1 представлены результаты ЭБ-расчета стационарных АДХ крыла: тест ОМЕЯА Мб, обтекание вязким турбулентным газом, модель турбулентности - БА; расчетная сетка ~1,9 млн ячеек; число неизвестных и размер СЛАУ ~10 млн.

Число потоков

в

Полное построение пирамиды матриц

Частичное построение пирамиды матриц

Адаптивное: 2 шага -

-Д- 0

полное, 8 - частичное

Рис. 1. Фрагмент сетки теста ONERA M6 (a), потребление памяти при использовании средств MPI и OpenMP (б) и эффективность распараллеливания при адаптивном перестроении пирамиды матриц AgAMG (в)

а б

Рис. 2. Эффективность (а) решения СЛАУ большой модельной задачи турбулентного обтекания конуса с цилиндром (б) вязким сжимаемым газом: 264,5 млн ячеек сетки с пятью неизвестными, 1,3 млрд уравнений

Отметим: 1) снижение потребления оперативной памяти (рис. 1, б) при замене MPI-процессов OpenMP-потоками в многоядерном вычислителе с общей памятью благодаря сокращению окаймлений; 2) повышение экономичности решения потока СЛАУ с одинаковым портретом матриц (рис. 1, в) за счет использования структуры всей пирамиды матриц от предыдущей СЛАУ6; 3) решение больших СЛАУ (~1,3х109 уравнений, рис. 2, б) с высокой эффективностью распаралле-

3

ливания (не менее 92 %, рис. 2, а) на (0,5.. .4)х10 процессорных ядрах.

Задачи стационарной прочности (~10 DOF, пакет «ЛОГОС.Проч-ность», рис. 3), СЛАУ которых не решались из-за ресурсных ограничений прямым решателем Intel CPARDISO [9], решены итерационным решателем CG, предобусловленным методом Шварца с локальным неполным разложением IC2(tau1, tau2) и локальным полным разложением Intel PARDISO.

При решении линейной задачи деформирования вращающегося вентилятора (рис. 3, а) использовалось: 6 млн узлов сетки, три неизвестных в узлах сетки, СЛАУ ~1,3 млрд коэффициентов (декомпозиция раскрашена). Решены на 128 MPI х 1 нить (16node х 8mpi х 1omp): 1) Schwartz_mpi( IC2(1e-3), ...) х CG_mpi(e-7); 2) Schwartz_mpi (PARDISO, ...) х CG_mpi(e-7). Решены на 128MPI х 2нити (16node х 8mpi х 2omp): 3) Schwartz_mpi( PARDISO_omp, ...^CG^piomp^^)

6 Это соответствует пролонгации агрегирующей силы связи ячеек с одной СЛАУ на не-

сколько следующих.

на 128МР1 х 4нити (32поёе х 8шр1 х 4отр); 4) Schwartz_шpi (РЛЕО^О_ошр, .. ,)хСС_трютр(е-7).

При решении задачи упругопластического деформирования бруса, закрепленного с левого торца и нагружаемого поверхностным давлением, приложенным к верхней грани (напряжения раскрашены), выполнено восемь решений СЛАУ до достижения статического равновесия (число СЛАУ = 8), которые решались Schwartz_шpi( 1С2(\зи), ...) х х СС_шр1(е-7) на 1-256 ядрах (1 х 16 узлов): количество узлов КЭ-мо-дели 1 828 288, количество 6-гранных 8-узловых элементов 1 766 010; размер прочностной - СЛАУ 5 470 080.

Ускорение

б

Рис. 3. Решение большеразмерных модельных задач прочности вентилятора (а),

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

бруса (б)

Отметим: 1) большие задачи стационарной прочности решены в параллельном многопоточном режиме; 2) применение Intel PARDISO и IC2 в предобусловливателе Шварца обеспечило решение СЛАУ, недоступное прямому параллельному решателю Intel CPARDISO.

В задаче моделирования (пакет «ЛАСМ», рис. 4, 5) обжатия рентгеновским излучением термоядерной мишени в будущей лазерной установке УФЛ-2М расчет температуры электронов и ионов модели неравновесного излучения выполняется с применением решателей СЛАУ. Использовалась сетка цилиндрическая: 200 строк, 200 столбцов, 30 плоскостей - 1,2 млн ячеек; 27-точечный шаблон. Считалось 19 временных шагов с постоянным шагом. Выполнялось 7-15 нелинейных итераций на шаге.

в

Рис. 4. Распределение температур в капсуле: а - фотонов; б - электронов;

в - ионов

Метод решения (число процессов

а

Число процессов б

Рис. 5. Сравнение разных методов решения (й) и масштабирование наилучших

в этой задаче (б)

В одной из задач испытывались следующие решатели СЛАУ:

1) JacobiBlock_mpi( ЛШ_Аоа1 )xBгCGStab_mpi(e-7);

2) Schwartz_mpi(.. .,cross=4,ILU0_float)xBгCGStab_mpi(e-7);

3) Schwartz_mpi(...,cross=4,ILUt_float(tau=0,001))xCG_mpi (е-7);

4) Schwartz_mpi(_,cross=4,IC2(tau1=0.01,tau2=0001))xCG_mpi(e-7);

5) Schwartz_mpi (...,cross=4,IC0_float)xCG_mpi(e-7);

на каждой итерации решались две 27-точечных СЛАУ для нахождения

Tions, Тelectrons.

Отметим: 1) возможность предобусловливания с разной точностью (float - одинарной или double - двойной); 2) разнообразие неполных разложений, дающих возможность выбора оптимального для задачи или стадии счета; 3) ускорение решения СЛАУ с увеличением числа процессоров в режиме строгого масштабирования (до 2500 уравнений по 27 коэффициентов на каждое процессорное ядро).

В задаче гидрогеологии (пакет «НИМФА», ~109 уравнений, рис. 6) показано решение на ~104 ядрах большой СЛАУ диффузии жидкости в пористой среде. Использовалась модель однофазной фильтрации. Тестовая задача SPE1 общества Petroleum Engineers. Решение искалось неявно по давлению и явно по насыщенности; сетка -нерегулярная; число ячеек 350-1100 млн; одна неизвестная в ячейке; шаг по времени (т) 0,01-1,0 сут.

а

б

nMegaEqs т, days nMPI nMegaEqs/s niters Speedup

346,8 1 1800 5,8 560 1,0

346,8 1 3600 18,3 499 3,2

693,6 1 3600 8,3 777 1,4

1109,0 1 21600 36,9 1118 6,4

1109,0 0,1 21600 92,4 435 -

1109,0 0,01 21600 112,0 123 -

в

Рис. 6. Распределение давления (а), вид сетки (б), производительность (млн уравнений/с) решения СЛАУ (в)

Здесь СЛАУ получена на первом шаге (самая трудная), использовался параллельный однопоточный решатель JacobiBlock_ тр^Ли0_йоа1;) х BiCGStab_mpi(1e-5) на 1800-21 600 процессорных ядрах. Отметим: 1) использование одинарной точности в ILU0 по сравнению с двойной сократило время решения на 1/4; 2) данный предобу-словливатель неудовлетворительно откликается на увеличение временного шага.

Приведем также характеристики расчета дебита (табл. 2) нефтяного пласта (рис. 7) с использованием трехфазной модели (~0,75 млн уравнений).

Таблица 2

Характеристики решения СЛАУ на разном числе ядер

nCore tExec, sec Speedup nNonLinlt nLinIt ExecTask, %

1 668,2 1 6 56 82,5

4 231,8 2,9 6 76 85,5

8 147,9 4,5 6 80 87,9

16 77,5 8,6 6 83 88,4

24 51,9 12,9 6 79 87,9

Здесь пСоге - число ядер; tExec - ¿-решения всех СЛАУ; п^пЬтЬ - число СЛАУ на шаге; пЬтП - среднее число итераций решателя; ЕхесТаък - процент решателя СЛАУ в задаче.

Scientific

View Программный комплекс: НИМФА

Давление, атм

1 351.7043996314 _ 335.6068725586 334.6283264160 I 333.7341308594 I 332.9509582520 I 332.3724975586 331.9481811523 I 331.3533935547 I 330.4660339355 ® 328.3204597271

Z

Рис. 7. Распределение давления в модели нефтяного пласта: количество ячеек 246 736, количество скважин: 8 добывающих, 11 нагнетательных; максимальный размер по Х - 5361 м, максимальный размер по Y - 8180 м, средняя толщина пласта - 30 м

Здесь применялся предобусловливатель Шварца с мелкоблочным ILU0-pразложением для матриц с плотными блоками, в данном случае -3x3, который эффективнее точечного аналога. Наблюдается хорошее распараллеливание после выхода за пределы одного узла со скачком итераций при переходе в параллельный режим.

Эксперименты по увеличению отношения шага по времени к шагу по сетке т/h показали, что при фиксированном т = 1 (дней) уменьшение h в 14 раз по оси z (размер СЛАУ увеличился в 14 раз) повысило в 3,6 раза число линейных итераций и в 2,2 раза нелинейных итераций при решении СЛАУ с той же точностью. Примерно так же возрастает произведение линейных и нелинейных итераций при аналогичном увеличении т на исходной сетке. Можно надеяться на уменьшение зависимости числа итераций решателя СЛАУ от числа Куранта при использовании многосеточных решателей. Время счета увеличенной задачи при переходе с 24 на 336 ядер сократилось в 12 раз, т.е. эффективность распараллеливания составила 86 %.

Заключение

Как следует из вышеизложенного, библиотека решателей СЛАУ PMLP/ParSol позволяет решать задачи в достаточно широком диапазоне физических процессов, размеров и сложности СЛАУ. В ряде задач аэромеханики, прочности прикладные пакеты ВНИИЭФ на идентичной с зарубежными пакетами сетке при использовании неявных методов показывают сравнимые по затратам машинных ресурсов результаты. В ряде областей моделирования и использования гибридных вычислительных систем есть над чем работать.

Библиографический список

1. Применение отечественных суперкомпьютерных технологий для создания перспективных образцов авиационной техники / М. А. По-госян, Е.П. Савельевских, Р.М. Шагалиев, А.С. Козелков, Д.Ю. Стрелец, А.А. Рябов, А.В. Корнев, Ю.Н. Дерюгин, В.Ф. Спиридонов, К.В. Циберев // Вопросы атомной науки и техники. Сер. Математическое моделирование физических процессов. - 2013. - Вып. 2. - С. 3-18.

2. Пакет программ ЛОГОС. Конечно-элементная методика расчета задач статической прочности конструкций с учетом эффектов физической и геометрической нелинейности / О.Л. Александрова, Р.А. Ба-

рабанов, Д.Ю. Дьянов, С.С. Косарим, А.О. Наумов, В.Ф. Спиридонов, Е. А. Филимонкин, К.В. Циберев // Вопросы атомной науки и техники. Сер. Математическое моделирование физических процессов. - 2014. -Вып. 3. - С. 3-17.

3. Полностью неявная схема решения задач трехфазной фильтрации на неструктурированных сетках в пакете программ НИМФА / О.И. Бутнев, И.В. Горев, С.С. Колесников, В.Ю. Кузнецов, В. А. Пронин, М.Л. Сидоров, А. Д. Яруллин // Вестник кибернетики: междунар. журнал. - 2015. - № 3(19). - С. 53-69.

4. Комплекс библиотек параллельных решателей СЛАУ LParSol версии 3 / Ю.Г. Бартенев, И.Е. Капорин, С.А. Харченко, А.В. Сысоев [и др.] // Супервычисления и математическое моделирование: тр. XV Междунар. конф. Саров, 13-17 октября 2014 г. - Саров, 2014. -С. 102-110.

5. Капорин И.Е., Милюкова О.Ю. Предобусловливание итерационных методов для эффективного массивно-параллельного решения систем линейных алгебраических уравнений // Супервычисления и математическое моделирование: тр. XIII Междунар. семинара. Саров, 3-7 октября, 2011. - Саров, 2011. - С. 266-275.

6. Реализация метода расчета вязкой несжимаемой жидкости с использованием многосеточного метода на основе алгоритма SIMPLE в пакете программ ЛОГОС / С.В. Лашкин, Д.П. Силаев, П.Г. Симонов [и др.] // Вопросы атомной науки и техники. Сер. Математическое моделирование физических процессов. - 2013. - Вып. 4. -С. 44-56.

7. Коньшин И.Н., Сушко Г.Б., Харченко С.А. Сквозной параллельный алгоритм построения неполного треугольного разложения второго порядка точности с динамическим выбором декомпозиции и упорядочивания // Супервычисления и математическое моделирование: тез. докл. XIV Междунар. конф. - Саров, 2012. - С. 110-111.

8. Капорин И.Е., Милюкова О.Ю., Бартенев Ю.Г. Массивно-параллельные предобусловленные методы решения больших несимметричных разреженных СЛАУ // Супервычисления и математическое моделирование: сб. тез. докладов XV Междунар. конф. Саров, 13-17 октября 2014 г. - Саров, 2014. - С. 76-78.

9. Intel MPI-library documentation. - URL: https://software.intel. com/en-us/articles/intel-mpi-library-documentation (дата обращения: 01.06.2016).

10. Henson V.E., Yang U.M. BoomerAMG: a parallel algebraic mul-tigrid solver and preconditioner // Applied Numerical Mathematics. -2002. - № 41. - P. 155-177.

11. Бартенев Ю.Г., Старостин Н.В., Филимонов А.В. Многоуровневый алгоритм уменьшения ширины ленты симметрической распределенной матрицы // Системы управления и информационные технологии. - 2014. - № 3.1(57). - С. 116-120.

12. Капорин И.Е., Милюкова О.Ю. Предобусловленный блочный итерационный метод для массивно-параллельного решения частичной обобщенной симметричной задачи на собственные значения // Супервычисления и математическое моделирование: тр. XIV Междунар. конф. Саров, 1-5 октября 2012 г. - Саров, 2012. - С. 333-344.

13. MVAPICH: MPI over InfiniBand, Omni-Path, Ethernet/iWARP, and RoCE. - URL: http://mvapich.cse.ohio-state.edu (дата обращения: 01.06.2016).

14. Сайт OpenMP. - URL: http://openmp.org/wp (дата обращения: 01.06.2016).

15. Saad Y. Iterative methods for sparse linear systems // Society for Industrial and Applied Mathematics. - Philadelphia, 2003.

16. Kaporin I.E. High quality preconditioning of a general symmetric positive matrix based on its UTU+UTR +RTU-decomposition // Numerical Linear Algebra Appl. - 1998. - Vol. 5. - P. 484-509.

17. Liebmann M. Algebraic multigrid methods on GPU-accelerated hybrid architectures / Institute for Mathematics and Scientific Computing, University of Graz. - 2011.

18. Smith B.F., Bjorstad P.E., Gropp W.D. Domain decomposition: parallel multilevel methods for elliptic partial differential equations. -Cambridge: Cambridge University Press, 2004.

19. Ерзунов В.А., Горбунов А.А. Механизм адаптивного выбора решателя в библиотеке PMLP/ParSol // Вопросы атомной науки и техники. Сер. Математическое моделирование физических процессов. -2009. - Вып. 1. - С. 55-62.

References

1. Pogosyan M.A., Savelevskikh E.P., Shagaliev R.M., Kozelkov A.S., Strelets D.Yu., Ryabov A.A., Komev A.V., Deryugin Yu.N., Spiridonov V.F., Tsiberev K.V. Primenenie otechestvennykh superkompyu-ternykh tekhnologiy dlya sozdaniya perspektivnykh obraztsov aviatsionnoy tekhniki [Application of Russian supercomputer technologies to develop the advanced models of aviation technology]. Voprosy atomnoy nauki i tekhniki. Matematicheskoe modelirovanie fizicheskikh protsessov, 2013, iss. 2, pp. 3-18.

2. Aleksandrova O.L., Barabanov R.A., Dyanov D.Yu., Kosarim S.S., Naumov A.O., Spiridonov V.F., Filimonkin E.A., Tsiberev K.V. Paket programm LOGOS. Konechno-elementnaya metodika rascheta zadach staticheskoy prochnosti konstruktsiy s uchetom effektov fizicheskoy i ge-ometriche skoy nelineynosti [A finite-element technique for the static strength problems of structures with regard to the physical and geometrical non-linearity effects]. Voprosy atomnoy nauki i tekhniki. Matematicheskoe modelirovanie fizicheskikh protsessov, 2014, iss. 3, pp. 3-17.

3. Butnev O.I., Gorev I.V., Kolesnikov S.S., Kuznetsov V.Yu., Pronin V.A., Sidorov M.L., Yarullin A.D. Polnostyu neyavnaya skhema resheniya zadach trekhfaznoy fil'tratsii na nestrukturirovannykh setkakh v pakete programm NIMFA [A fully implicit scheme in NIMFA code package for solving three-phase flow problems on unstructured meshes]. Vestnik kibernetiki, 2015, no. 3(19), pp. 53-69.

4. Bartenev Yu.G., Kaporin I.E., Kharchenko S.A., Sysoev A.V. [et. al]. Kompleks bibliotek parallelnykh reshateley SLAU LParSol versii 3 [LParSol library of parallel SLAE solvers. Vers. 3]. Trudy XV Mezhdu-narodnoy konferentsii "Supervychisleniya i matematicheskoe modelirovanie". Sarov, October 13-17, 2014, pp. 102-110.

5. Kaporin I.E., Milyukova O.Yu. Predobuslovlivanie iteratsionnykh metodov dlya effektivnogo massivno-parallelnogo resheniya sistem lineynykh algebraicheskikh uravneniy [Preconditioning of iterative methods for the efficient massively parallel solution of linear algebraic equations]. Trudy XIII Mezhdunarodnogo seminara "Supervychisleniya i matematicheskoe modelirovanie", Sarov, October 3-7, 2011, pp. 266-275.

6. Lashkin S.V., Silaev D.P., Simonov P.G. [et. al]. Realizatsiya metoda rascheta vyazkoy neszhimaemoy zhidkosti s ispolzovaniem mnogose-tochnogo metoda na osnove algoritma SIMPLE v pakete programm LOGOS [Implementation in LOGOS code package of the computational scheme for

a viscous incompressible fluid using the multigrid method based on SIMPLE algorithm]. Voprosy atomnoy nauki i tekhniki. Matematicheskoe modelirovanie fizicheskikh protsessov, 2013, iss. 4, pp. 44-56.

7. Konshin I.N., Sushko G.B., Kharchenko S.A. Skvoznoy parallel-nyy algoritm postroeniya nepolnogo treugolnogo razlozheniya vtorogo poryadka tochnosti s dinamicheskim vyborom dekompozitsii i uporyado-chivaniya [An end-to-end parallel computational algorithm of incomplete triangular second-order decomposition with dynamic decomposition and ordering selection]. Tezisy dokladov XIV Mezhdunarodnoy konferentsii "Supervychisleniya i matematicheskoe modelirovanie", Sarov, 2012, pp. 110-111.

8. Kaporin I.E., Milyukova O.Yu., Bartenev Yu.G. Massivno-parallelnye predobuslovlennye metody resheniya bolshikh nesimmetrich-nykh razrezhennykh SLAU [Massively parallel preconditioned methods for solving large asymmetric sparse SLAE]. Sbornik tezisov dokladov XV Mezhdunarodnoy konferentsii "Supervychisleniya i matematicheskoe modelirovanie", Sarov, October 13-17, 2014, pp. 76-78.

9. Intel MPI-library documentation, available at: https://software. intel.com/en-us/articles/intel-mpi-library-documentation (accessed 1 June 2016).

10. Henson V.E., Yang U.M. BoomerAMG: a parallel algebraic multigrid solver and preconditioner. Applied Numerical Mathematics, 2002, no. 41, pp. 155-177.

11. Bartenev Yu.G., Starostin N.V., Filimonov A.V. Mnogourovnevyy algoritm umensheniya shiriny lenty simmetricheskoy raspredelennoy ma-tritsy [A multilevel algorithm of reducing the bandwidth of a symmetric distributed matrix]. Sistemy upravleniya i informatsionnye tekhnologii, 2014, no. 3.1(57), pp. 116-120.

12. Kaporin I.E., Milyukova O.Yu. Predobuslovlennyy blochnyy iteratsionnyy metod dlya massivno-parallelnogo resheniya chastichnoy obobshchennoy simmetrichnoy zadachi na sobstvennye znacheniya [A preconditioned block iterative method for the massively parallel solution of a partial generalized symmetric eigenvalue problem]. Trudy XIV Mezhdunarodnoy konferentsii "Supervychisleniya i matematicheskoe modelirovanie", Sarov, October 1-5, 2012, pp. 333-344.

13. MVAPICH: MPI over InfiniBand, Omni-Path, Ethernet/iWARP, and RoCE, available at: http://mvapich.cse.ohio-state.edu (accessed 1 June 2016).

14. OpenMP, available at: http://openmp.org/wp (accessed 1 June 2016).

15. Saad Y. Iterative methods for sparse linear systems. Society for Industrial and Applied Mathematics. Philadelphia, 2003.

16. Kaporin I.E. High quality preconditioning of a general symmetric positive matrix based on its UTU+UTR +RTU-decomposition. Numerical Linear Algebra Appl., 1998, vol. 5, pp. 484-509.

17. Liebmann M. Algebraic multigrid methods on GPU-accelerated hybrid architectures. Institute for Mathematics and Scientific Computing, University of Graz, 2011.

18. Smith B.F., Bjorstad P.E., Gropp W.D. Domain decomposition: parallel multilevel methods for elliptic partial differential equations. Cambridge University Press, 2004.

19. Erzunov V.A., Gorbunov A. A. Mekhanizm adaptivnogo vybora reshatelya v biblioteke PMLP/Parsol [The mechanism of adaptively selecting solvers in the PMLP/Parsol library]. Voprosy atomnoy nauki i tekhniki. Matematicheskoe modelirovanie fizicheskikh protsessov, 2009, iss. 1, pp. 55-62.

Сведения об авторах

Алейников Алексей Юрьевич (Саров, Россия) - старший научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: A.Yu.AleYnikov@vniief.ru).

Барабанов Роман Анатольевич (Саров, Россия) - начальник научно-исследовательской группы Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: RABarabanov@vniief.ru).

Бартенев Юрий Германович (Саров, Россия) - доктор физико-математических наук, главный научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: YGBartenev@vniief.ru).

Ерзунов Владимир Алексеевич (Саров, Россия) - старший научный сотрудник Института теоретической и математической

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

физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: VAErzunov@vniief.ru).

Карпов Андрей Павлович (Саров, Россия) - научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: APKarpov@vniief.ru).

Кузнецов Владимир Юрьевич (Саров, Россия) - младший научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: vlykuznetsov@vniief.ru).

Петров Дмитрий Александрович (Саров, Россия) - научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: DAPetrov@ vniief.ru).

Резчиков Василий Юрьевич (Саров, Россия) - начальник научно-исследовательской группы института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: rez@md08.vniief.ru).

Стаканов Артем Николаевич (Саров, Россия) - научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: ANStakanov@vniief.ru).

Щаникова Елена Борисовна (Саров, Россия) - старший научный сотрудник Института теоретической и математической физики РФЯЦ ВНИИЭФ (607200, г. Саров, ул. Духова, д. 24, e-mail: shan@ vniief.ru).

About the authors

Aleksey Yu. Aleynikov (Sarov, Russian Federation) - Senior Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: A.Yu.AleYnikov@vniief.ru).

Roman A. Barabanov (Sarov, Russian Federation) - Chief of Research Team, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: RABarabanov @vniief.ru).

Yuriy G. Bartenev (Sarov, Russian Federation) - Doctor of Physical and Mathematical Sciences, Head Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: YGBartenev@vniief.ru).

Vladimir A. Erzunov (Sarov, Russian Federation) - Senior Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: VAErzunov@vniief.ru).

Andrey P. Karpov (Sarov, Russian Federation) - Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: APKarpov@vniief.ru).

Vladimir Yu. Kuznetsov (Sarov, Russian Federation) - Junior Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: vlykuznetsov@vniief.ru).

Dmitry A. Petrov (Sarov, Russian Federation) - Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center -All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: DAPetrov@vniief.ru).

Vasiliy Yu. Rezchikov (Sarov, Russian Federation) - Chief of Research Team, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: rez@md08.vniief.ru).

Artem N. Stakanov (Sarov, Russian Federation) - Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: ANStakanov@vniief.ru).

Elena B. Schanikova (Sarov, Russian Federation) - Senior Researcher, Institute of Theoretical and Mathematical Physics, Russian Federal Nuclear Center - All-Russian Research Institute of Experimental Physics (24, Dukhova st., Sarov, 607200, Russian Federation, e-mail: shan@vniief.ru).

Получено 08.09.2016

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