TParFBSS - Международная научная конференция ПаВТ'2007
TParFBSS - Международная научная конференция ПаВТ'2007
TParFBSS - Международная научная конференция ПаВТ'2007
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
ИТМФ РФЯЦ-ВНИИЭФ, ОАО ТЕСИС,<br />
кафедра ИАНИ ВМК ННГУ<br />
Комплекс библиотек для<br />
решения СЛАУ<br />
Бартенев Ю.Г., Бондаренко Ю.А., Ерзунов В.А., Карпов А.П.,<br />
Макаров Л.И., Наумов А.О., Петров Д.А., Романова М.Д.,<br />
Стаканов А.Н.,Щаникова Е.Б.; (ВНИИЭФ)<br />
Харченко С.А., Сушко Г.Б., Коньшин И.Н. (ТЕСИС);<br />
Прилуцкий М.Х, Старостин Н.В., Филимонов А.В. (ННГУ).<br />
ПаВТ-2012, Новосибирск
Искомые неизвестные СЛАУ решателей LParSol<br />
1. Температура в задачах теплопроводности, тепломассопереноса (t);<br />
2. Компоненты скорости в расщеплённой схеме решения Навье-Стокса (vi);<br />
3. Компоненты параметров модели турбулентности (ki);<br />
Трудные СЛАУ:<br />
4. Давление в расщепленной схеме решения Навье-Стокса (p);<br />
5. Давление в диффузионных задачах переноса (d);<br />
6. Вектор неизвестных (5 шт.) в нерасщепленной схеме решения Навье-Стокса (U);<br />
7. Вектор перемещений (3 комп.) в задачах расчета НДС (S);<br />
и другие: вектор напряженности магнитного поля, параметры одной из схем оптимизации сетки).<br />
Решалось (и решается) довольно эффективно параллельными решателями библиотеки PMLP/ParSol<br />
(разрабатывалась с 1996 года во ВНИИЭФ сначала по инициативе и участии американских партнеров.<br />
До 2010 года – ориентация на задачи теплопроводности).<br />
Использование неявных схем в разрабатываемых прикладных пакетах:<br />
ЛОГОС SIMPLE / TVD / HEAT / ADAPTIVE – гидро/аэродинамика и тепломассоперенос,<br />
ЛОГОС Прочность (ЛЭГАК-ДК) – прочностной анализ,<br />
НИМФА – гидрогеология<br />
привело к сильной востребованности эффективных решателей СЛАУ,<br />
т.к. решение СЛАУ – 70-90++% времени счета.<br />
Поэтому наряду с развитием библиотеки решателей PMLP/ParSol:<br />
� апробация других методов других библиотек и<br />
� создание комплекса библиотек LParSol с унифицированным интерфейсом.<br />
Подобный подход - интеграция библиотек решателей, например, реализован в TRILINOS.
Состав LParSol и окружение<br />
В состав комплекса библиотек решателей СЛАУ LParSol входят:<br />
- PMLP/ParSol (ВНИИЭФ),<br />
- <strong>TParFBSS</strong> (ТЕСИС)<br />
и могут быть подключены:<br />
- PARDISO Intel® MKL,<br />
- HYPRE (LLNL),<br />
выполняющих:<br />
- предобусловливание и<br />
- решение последовательных и распределённых СЛАУ.<br />
Обязательная библиотека - PMLP/ParSol, остальные - согласно заданию построителя<br />
LParSol.<br />
Объединяет библиотеки в комплекс оболочка LParSol. Она обеспечивает:<br />
- прямой интерфейс библиотеки PMLP/ParSol,<br />
- библиотеко-независимое задание СЛАУ, параметров и результатов её решения,<br />
- библиотеко-зависимое преобразование СЛАУ и параметров, решение СЛАУ,<br />
- сбор статистики (при необходимости),<br />
- запись СЛАУ в файл (при необходимости).<br />
С LParSol сопряжены:<br />
- PArpack – решатель частичной обобщенной спектральной задачи,<br />
- тестовая система решателей СЛАУ,<br />
- набор инструментальных средств (построение LParSol, анализ СЛАУ),<br />
- неявно METIS/ParMETIS и перенумераторы ПарМатруз.
Решатели, предобусловливатели, оптимизация<br />
Функционал 2010 г. -> 2011 г.:<br />
• Было:<br />
параллельные CG, BiCGSTAB, GMRES, параллельный ILU0/IC0/ILUt в варианте<br />
блочного Якоби, параллельный ILU0/ILUt бл.-трехдиагональной части матрицы.<br />
• + Стало:<br />
1) Мультипоточный прямой решатель/предобусловливатель.<br />
2) Параллельный решатель SOFGMRES.<br />
3) Параллельные консервативные решатели CR, BiCRSTAB, CG, BiCGSTAB для p, t, d.<br />
4) Параллельный решатель/предобуслов-ль AMG для точечных СЛАУ.<br />
5) Параллельный позиционно-пороговый ILU2/IC2 (упрощения на гр. подобластей).<br />
6) Параллельный блочный ILUk в варианте блочного Якоби.<br />
7) Блочный формат хранения матриц (плотные блоки коэфф-ов) в ряде решателей.<br />
8) Гибридная машинная арифметика (32-64-80 рр) в ряде решателей.<br />
9) Гибридная машинно-программная (QD) арифметика (64-128-256 рр) в SOFGMRES.<br />
10) Локальная перенумерация оптимизирующая в ряде решателей.<br />
11) Тестовая система и инструментарий.<br />
12) Параллельный многоуровневый перенумератор, сжимающий ленту матрицы.<br />
13) Параллельный решатель частичной обобщенной спектральной задачи.<br />
• В работе:<br />
� Параллельный сквозной позиционно-пороговый ILU2/IC2 c локальным пивотингом.<br />
� Параллельный Schwarz: многослойное перекрытие с согласованием по Капорину, …<br />
� Параллельный прямой с итерационным решением дополнения Шура.<br />
� Параллельный прямой MUMPS (интерфейс подключения).<br />
� Адаптация к GPGPU некоторых предобусловленных итерационных решателей.
число<br />
обл.<br />
Применение MLI МАТРУЗ в ЛОГОС. Аэро/гидро/тепло<br />
Сужает ширину графа подобластей в 4-8 раз => Снижает ширину ленты<br />
глобальной матрицы СЛАУ.<br />
На больших задачах экономия памяти до 2-х раз, ускорение - до 10%).<br />
ПОЛУШИРИНА ПОЛУШИРИНА<br />
исходн<br />
ая<br />
после<br />
RCM<br />
отношение<br />
исх / RCM<br />
после<br />
KING+MLI<br />
после<br />
RCM+MLI<br />
после<br />
SLOAN+MLI<br />
отношение<br />
исх /MLI+...<br />
32 28 22 1,27 20 19 17 1,64<br />
64 57 35 1,63 31 29 28 2,03<br />
128 114 65 1,75 40 43 39 2,92<br />
256 229 110 2,08 89 78 66 3,47<br />
512 459 246 1,87 144 172 108 4,25<br />
1024 918 441 2,08 186 193 193 5,02<br />
2048 1836 799 2,3 369 433 332 5,27<br />
4096 3672 1520 2,42 649 780 520 7,06<br />
8192 7343 3360 2,19 955 1235 1010 7,60<br />
16384 14685 6249 2,35 1795 1958 1765 8,18
Блочные форматы и смешанная арифметика в решателях<br />
Наблюдается ускорение за счет блочности и предобусловливания с одинарной точностью (float).<br />
То и другое хорошо сокращает память.<br />
СЛАУ из ЛОГОС, модуль TVD, 475000 уравнений, блоки 5*5. Аэродинамика.<br />
Блочные форматы решателей со смешанной<br />
арифметикой<br />
Время в сек.<br />
3,5<br />
3<br />
2,5<br />
2<br />
1,5<br />
1<br />
0,5<br />
0<br />
0,97<br />
BicgStab + ILU0<br />
double<br />
1 thread<br />
PMLP/ParSol<br />
0,49<br />
BicgStab + ILU0<br />
float,1 thread<br />
PMLP/ParSol<br />
3<br />
BicgStab +<br />
ILU2 double<br />
1 thread<br />
<strong>TParFBSS</strong><br />
2,7<br />
BicgStab +<br />
ILU2 float<br />
1 thread<br />
<strong>TParFBSS</strong><br />
1,1<br />
BicgStab +<br />
ILU2 double<br />
6 threads<br />
<strong>TParFBSS</strong><br />
1<br />
BicgStab +<br />
ILU2 float<br />
6 thread<br />
<strong>TParFBSS</strong>
<strong>TParFBSS</strong>: влияние<br />
блочности,<br />
структурной факторизации,<br />
локального упорядочивания.<br />
Пример из ЛОГОС, модуль TVD. Аэродинамика<br />
<strong>TParFBSS</strong> быстрее в блочном формате. Для СЛАУ TVD пригодны структурная<br />
факторизация, RCM уменьшает время и сокращает память<br />
«M05 TVD», <strong>TParFBSS</strong>: BiCGSTAB+ILU2_float (…, …), k – уровень структурного разложения<br />
N_node *N_core (параметры …) число<br />
итераций<br />
время<br />
факторизации+решения, с, %<br />
1*4 (k=-1, t1=1e-3, t2=1e-6), точечный формат 104 82+22 с = 104 с, 460%<br />
1*4 (k=1, t1=t2=0.0), блоки 5*5 246 0.6+16 = 17 c, 197%<br />
1*4 (k=1, t1=t2=0.0), блоки 5*5, RCM 199 0.5+12 = 13 c, 171%
Время работы (сек)<br />
120<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
Tube_12<br />
Применение локальной перенумерации СЛАУ в PMLP/ParSol (блочный Якоби).<br />
4 точечных и 1 блочная СЛАУ 0.5-10 млн. ур. из ЛОГОС. Гидро и аэродинамика.<br />
Tube_17<br />
TUBE_triangle_1.2mln<br />
TUBE_round-O_grid_1.7mln<br />
СЛАУ<br />
KAMAZ_5-50-99<br />
m5<br />
без перенуменации<br />
RCM<br />
ND
Ускорение счета задач с нововведениями. ЛОГОС,<br />
модуль TVD. Аэродинамика<br />
4.5 млн. ячеек. Обтекание<br />
трехмерного профиля крыла.<br />
Быстрее ~ 1.8 раза.<br />
Экономия памяти почти в 2<br />
раза<br />
14 млн. ячеек. Обтекание<br />
компоновки DLR-F6. Быстрее<br />
~ 1.2 раза.
Эффективность распараллеливания задачи. ЛОГОС, модуль TVD.<br />
Аэродинамика<br />
14 млн. ячеек.<br />
Обтекание DLR-F6<br />
Немного хуже.
Лучший ILU vs. AMG.<br />
СЛАУ давления из ЛОГОС, модуль SIMPLE. Гидродинамика.<br />
Результаты замеров на 50 шагах.<br />
Внутреннее течение газа. Хорошая сетка.<br />
СЛАУ 3.2 млн. уравнений.<br />
Библиотека Метод Параметры число<br />
итераций<br />
время решения СЛАУ<br />
PMLP/ParSol CG+JacobiBlock IC0, 1 1403 14.9<br />
HYPRE PCG+BoomerAMG 0.25, 3 - cтанд. 7 4.1<br />
HYPRE PCG+BoomerAMG 0.50, 3 9 2.7<br />
HYPRE PCG+BoomerAMG 0.25, 6 6 4.0
время (сек.)<br />
Ускорение счета задач с нововведениями. ЛОГОС модуль SIMPLE.<br />
Гидродинамика.<br />
16001<br />
14001<br />
12001<br />
10001<br />
8001<br />
6001<br />
4001<br />
2001<br />
1<br />
Зависимость времени счета от числа процессов<br />
0 200 400 600 800 1000 1200<br />
число процессов<br />
Логос<br />
1.2<br />
Логос<br />
2.0<br />
Логос*<br />
1.2<br />
17 млн. ячеек.<br />
Турбулентное<br />
обтекание тягача<br />
КАМАЗ.<br />
Многократно быстрее.<br />
Экономия памяти в 1.2<br />
раза<br />
6.5 млн. ячеек.<br />
Ламинарное течение в<br />
рубашке охлаждения<br />
двигателя.<br />
Быстрее ~ 2 раза.
Время в сек.<br />
120<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
Сравнение разных методов решения СЛАУ давления из пакета НИМФА.<br />
Задача 32 млн. ячеек (уравнений), точность 1*e-12. Гидрогеология<br />
Решатель ParSol: CG+блочный Якоби с ILU0 Решатель TparFBSS: CG+ICH2 Решатель HYPRE: GMRES+BoomerAMG<br />
Время на решатель Время на НИМФу (без решателя)<br />
BoomerAMG - экономичней
Число<br />
процессоров<br />
Сравнение разных методов решения СЛАУ давления из пакета НИМФА.<br />
Задача Балтийская АЭС, 97 млн. ячеек (уравнений), точность 1*e-12.<br />
Гидрогеология.<br />
Кол-во ячеек на<br />
1 процессор Библиотека STK СALC,<br />
час:мин:сек<br />
В нестационарной задаче (геофильтр. модель площадки “Балтийская АЭС”) , 97 млн. ячеек.<br />
Отношение времени счета при использовании<br />
STK ALL,<br />
час:мин:сек<br />
BoomerAMG : PMLP/ParSol ~= 1.5 : 2.5 часов; 0.38 : 0.53 часов (CPU увеличилось в 8 раз)<br />
STK eff, %<br />
600 ~ 162 000 HYPRE 2:36:56 2:51:41 91.46<br />
PMLP/ParSol 4:34:25 4:48:15 95.22<br />
<strong>TParFBSS</strong> 2:15:48 3:00:09 75.4<br />
1200 ~81000 HYPRE 1:21:09 1:32:10 88.14<br />
PMLP/ParSol 2:19:48 2:30:16 93.07<br />
<strong>TParFBSS</strong> 1:43:45 2:18:24 75.00<br />
4800 ~20 000 HYPRE 0:22:11 0:28:56 76.9<br />
PMLP/ParSol 0:38:00 0:46:58 81.0<br />
7200 ~13 000 HYPRE 0:15:58 0:23:30 68.28<br />
PMLP/ParSol 0:26:50 0:38:22 70.21<br />
10000 ~9700 HYPRE 0:12:49 0:22:39 57.32<br />
PMLP/ParSol 0:20:11 0:31:42 64.46
Быстродействие прямого решателя Intel® PARDISO (64 рр)<br />
vs.<br />
CG (64 рр) + предобусловливание прямым Intel® PARDISO (32 рр)<br />
на СЛАУ НДС.<br />
Пакет ЛОГОС Прочность, СЛАУ ~ 2.5 млн. Стационарная прочность<br />
250<br />
Время работы (сек)<br />
200<br />
Pardiso с двойной точностью<br />
CG+(Pardiso c одинарной точностью), требуемая точность решения 1e-06<br />
450<br />
400<br />
350<br />
300<br />
150<br />
100<br />
50<br />
0<br />
resh2_rmg trubka lopatka<br />
СЛАУ
<strong>TParFBSS</strong> vs. Intel® PARDISO<br />
Пакет ЛОГОС Прочность, расчет детали автомобиля КАМАЗ.<br />
СЛАУ НДС, размер 1 429 158 уравнений, nnz=98953138, SPD-матрица, блоки 3*3.<br />
Стационарная прочность<br />
PARDISO_spd: прямой<br />
<strong>TParFBSS</strong> : CG+IС2<br />
pr_value=1 - факторизация одинарной точности,<br />
blksize==3,<br />
FctType=6, Tau1=0.001, Tau2 =0.0001, Theta = 0.10.<br />
MPI threads bl_size Iters δ t_fct t_iters timeall solver<br />
1 6 1 327 8.4е-07 140.0 79.4 219.4 tparfbss<br />
1 6 3 236 8.8е-08 55.1 47.1 102.2 tparfbss<br />
1 6 1 0 1.8е-10 54.6 1.0 55.6 pardiso<br />
<strong>TParFBSS</strong> – вдвое ускоряется в блочном формате, вдвое медленнее, чем ParDiSo,<br />
но меньше потребляет памяти и может работать на распределённой памяти.
Пример решения задачи модального анализа в ЛОГОС Прочность с<br />
использованием PArpack + Intel PARDISO + PMLP/ParSol<br />
Задача о нахождении минимальных частот собственных колебаний корпуса опоры<br />
авиационного двигателя<br />
• 2 478 956 степеней свободы<br />
• Найдено 10 минимальных собственных значений и собственных векторов<br />
• Время решения на одном ядре КС-ЭВМ - 13 минут
Унифицированный интерфейс LParSol<br />
Библиотеки решателей отличаются интерфейсами. Унифицирует оболочка LParSol.<br />
• Единообразно для разных библиотек задаются СЛАУ, общие параметры решателя.<br />
• Специфичные параметры решения СЛАУ (решатель, предобусловливатель и ряд их<br />
параметров) задаются раздельно для каждой библиотеки и хранятся в объекте СЛАУ.<br />
• Свойственные конкретному решателю параметры извлекаются из объекта СЛАУ и<br />
передаются ему в момент вызова.<br />
• Управление динамикой решения потока СЛАУ возможно путем изменения параметров и<br />
использования нескольких объектов СЛАУ (отдельный объект для группы решателей).<br />
Более эффективному решению разнородного потока СЛАУ способны помочь:<br />
- адаптивный выбор решателя и параметров из предопределённого набора;<br />
- использование признаков неизменности матрицы или портрета матрицы;<br />
- возможность переиспользования построенного предобусловливателя.<br />
Поток СЛАУ<br />
* = * = * = * =
Проблема: существенно ускорить решение СЛАУ, особенно<br />
гидро/аэродинамики. Работы 2012 г.<br />
• Оптимизация AMG для решения точечных СЛАУ с SPD матрицами (гидродинамика и<br />
гидрогеология). (ВНИИЭФ)<br />
• AMG для блочных СЛАУ Навье-Стокса с несимметричными матрицами<br />
(аэродинамика). (ТЕСИС, ВНИИЭФ)<br />
• Шварц для несимметричных и SPD матриц c ILU2/IC2/… внутри подобластей и<br />
согласованием решений (алгебраическое, coarse grid correction, deflation, …) на<br />
границах (аэродинамика, гидрогеология, НДС). (ВЦ РАН, ИВМиМГ СО РАН, ВНИИЭФ)<br />
• Гибридный (прямой-итерационный) решатель СЛАУ (НДС). (ВНИИЭФ)<br />
• Параллельный сквозной ILU2/IC2 (аэродинамика, гидрогеология, НДС). (ТЕСИС)<br />
• Освоение / адаптация к GPU итерационных решателей. (ВНИИЭФ, ТЕСИС)<br />
• Разработка и адаптация к GPU параллельного прямого решателя. (ННГУ)<br />
• Декомпозиция и перенумерация. (ННГУ)<br />
• Параллельный решатель спектральной задачи для SPD-матриц. (ВЦ РАН)
Напомним функционал 2011 г.,<br />
� Решатели CG, BiCGSTAB с разновидностями, GMRES.<br />
� Решатели CR, BiCRSTAB и CG, BiCGSTAB с консервативным предобусловливанием СЛАУ: p, t, d.<br />
� Решатель SOFGMRES c техникой начального подпространства в качестве ускорителя итераций.<br />
� Прямой решатель/предобусловливатель.<br />
� Блочные предобусловливатели (Якоби, Шварц) ILU0 / ILUt / ILUk / LU .<br />
� Предобусловливатель/решатель AMG для точечных СЛАУ.<br />
� Предобусловливатель ILU0 / ILUt для блочно-трехдиагональной части матрицы.<br />
� Предобусловливатель ILU2 с позиционно-пороговой фильтрацией в подобластях.<br />
� Блочный формат хранения матриц (плотные блоки коэффициентов) в решателях,<br />
� Гибридная арифметика (32-80 рр) решателей + расширенная до 256 рр (в ILU2/IC2+SOFGMRES).<br />
� Перенумерация локальная оптимизирующая в решателях.<br />
� Многоуровневый глобальный перенумератор, сжимающий ленту матрицы.<br />
� Спектральный решатель.<br />
чего не хватает и когда ожидается<br />
1) AMG для блочных матриц. 2012++ г. ТЕСИС, ВНИИЭФ<br />
2) Schwarz оverlapped (частично сделан) 2013 г. ВЦ РАН, ИВМиМГ, ВНИИЭФ<br />
3) ILU2 сквозной c частичным пивотингом. 2012 г. ТЕСИС<br />
4) Прямой параллельный решатель свой 2013 г. ННГУ+ТЕСИС<br />
5) ADI для ортогональных сеток. 2013 г. ВНИИЭФ<br />
6) Решатели для GPGPU (начато) 2012-2013 г. ВНИИЭФ, ТЕСИС, ННГУ<br />
7) LU с итерированием доп. Шура (идет) 2012 г. ВНИИЭФ<br />
8) Спектральный-решатель для SPD свой 2012 г.++ ВЦ РАН<br />
9) Декомпозиция своя. 2013 г. ННГУ
Hypre:<br />
AMG+CG… .<br />
Оптимизация.<br />
СЛАУ: p, d.<br />
Intel® PARDISO:<br />
СЛАУ: средние S<br />
Библиотеки<br />
для GPU ???<br />
Задачи:<br />
СЛАУ > 1 млрд. в<br />
гидрогеологии,<br />
аэро/гидродинамамике.<br />
> 100 млн. в НДС<br />
LParSol.2: 2011-2012г.<br />
PMLP/ParSol:<br />
ILU/IC+CG…, адаптивный,<br />
32-80 рр выч. Schwarz. …<br />
AMG. Что-то -> GPU.<br />
СЛАУ: vi, ki, t, d, U,<br />
средние S.<br />
LParSol<br />
Задачи:<br />
ядер > 1-10K в<br />
гидрогеологии,<br />
аэро/гидродинамамике,<br />
> 0.1K в НДС<br />
<strong>TParFBSS</strong>:<br />
ILU2/IC2+CG…+<br />
SOFGMRES, 32-256рр выч.<br />
Сквозной ILU2/IC2. AMG.<br />
Бл.схемы -> GPU.<br />
СЛАУ: S, U, t, d.<br />
Тест. система,<br />
Задачи:<br />
ПарМАТРУЗ,<br />
PArpack<br />
Задачи:<br />
надежность решения,<br />
стабильность времени<br />
при Курант++<br />
память < ~ в 1.5-2 раза,<br />
время < ~ в 2 раза<br />
21
Ccылки<br />
1. Дерюгин Ю.Н., Зеленский Д.К., Козелков А.С. и др. Многофункциональный пакет программ ЛОГОС для расчета задач<br />
гидродинамики и тепломассопереноса на многопроцессорных ЭВМ: базовые технологии и алгоритмы // Тезисы<br />
докладов ХII Международного семинара “Супервычисления и математическое моделирование”, Саров, 2010 – C.53-<br />
54<br />
2. Жучков Р.Н., Дерюгин Ю.Н., Зеленский Д.К.. Комплекс ЛОГОС. Численное моделирование вязких сжимаемых дозвуковых<br />
и сверхзвуковых течений // Тезисы докладов ХIII международного семинара “Супервычисления и математическое<br />
моделирование”, Саров, 2011 – С.70.<br />
3. Спиридонов В.Ф., Циберев К.В., Рябов А.А. и др. Параллельный пакет программ ЛЭГАК-ДК для расчета задач<br />
гидрогазодинамики и прочности на неструктурированных сетках в лагранжево-эйлеровых переменных // Доклад на<br />
“X Забабахинские Научные Чтения”, Снежинск, 2010г.<br />
4. Речкин В.Н., Спиридонов В.Ф., Циберев К.В., Дьянов Д.Ю., Наумов А.О., Косарим С.С. и др. Пакет программ ЛОГОС.<br />
Модуль решения квазистатических задач прочности и модального анализа // Тезисы докладов ХIII международного<br />
семинара “Супервычисления и математическое моделирование”, Саров, 2011 – С.113-114.<br />
5. Дерюгин Ю.Н., Горев В.В., Панов А.И., Костерин А.В. и др. Методика и пакет программ НИМФА как инструмент постояннодействующих<br />
моделей бассейна подземных вод – В: сб. статей Всероссийского семинара “Наука – фундамент<br />
решения технологического развития России”, Казань, 2006г.<br />
6. Аксёнов А.А., Шишаева А.С., Резвова Т.В., Спиридонов В.Ф. и др. Программный комплекс решения связанных задач<br />
прочности и аэрогидродинамики на основе пакетов программ ЛЭГАК-ДК и ЛОГОС-ADAPTIVE // Тезисы докладов ХIII<br />
международного семинара “Супервычисления и математическое моделирование”, Саров, 2011 – С.25-26.<br />
7. Алейников А.Ю., Бардина М.Н., Горев И.В., Панов А.И. и др. Параллельная версия комплекса программ НИМФА // Тезисы<br />
докладов ХIII международного семинара “Супервычисления и математическое моделирование”, Саров, 2011. –<br />
С.26-27<br />
8. Бартенев Ю.Г., Ерзунов В.А., Максимов А.С., Щаникова Е.Б. и др. Библиотека решателей разреженных линейных систем<br />
– В: Труды РФЯЦ-ВНИИЭФ. Научно-исследовательское издание. Вып. 7, Саров, 2004г.<br />
9. Бартенев Ю.Г., Бондаренко Ю.А., Ерзунов В.А. и др. Комплекс LParSol для решения СЛАУ // Тезисы докладов ХIII<br />
международного семинара “Супервычисления и математическое моделирование”, Саров, 2011 – С.34-36.<br />
10. Харченко С.А., Еремин А.Ю. Новые алгоритмы типа GMRES(k) с рестартами и анализ их свойств сходимости на основе<br />
QR формы матричных соотношений // Зап. Научн. Семин. ПОМИ. 2000, т. 268, с. 190-241.<br />
11. Коньшин И.Н., Сушко Г.Б., Харченко С.А. и др. Решение плохообусловленных разреженных СЛАУ большого размера с<br />
помощью PARFBSS // Тезисы докладов ХIII международного семинара “Супервычисления и математическое<br />
моделирование”, Саров, 2011 – С.76-78.<br />
12. Henson V.E., Yang U.M. BoomerAMG: a Parallel Algebraic Multigrid Solver and Preconditioner.// Applied Numerical Mathematics<br />
41 (2002) 155-177.<br />
13. ParDiSo: [Electronic resource]. Mode of access: http: //www.intel.com /software /products /mkl<br />
14. Капорин И.Е., Милюкова О.Ю. Предобусловливание итерационных методов для эффективного массивно-параллельного<br />
решения систем линейных алгебраических уравнений// Тезисы докладов ХIII международного семинара<br />
“Супервычисления и математическое моделирование”, Саров, 2011. – С.71-72.<br />
15. Ильин В.П. Базовая система моделирования БСМ для решения междисциплинарных задач // Тезисы докладов ХIII<br />
международного семинара “Супервычисления и математическое моделирование”, Саров, 2011 – С.70-71.
Спасибо за внимание<br />
Благодарим разработчиков прикладных пакетов ЛОГОС, НИМФА, предоставивших<br />
ряд материалов для доклада, проводивших исследование, внедрение,<br />
апробацию LParSol и способствовавших улучшениям:<br />
Д.К. Зеленского,<br />
Р.А. Жучкова,<br />
В.А. Глазунова,<br />
А.А. Голубева,<br />
С.В. Лашкина,<br />
А.Ю. Алейникова,<br />
С.С. Косарим,<br />
Д.Ю. Дьянова,<br />
К.В. Циберева<br />
Е.И. Рябова,<br />
И.Н. Чистякову,<br />
А.И. Панова<br />
А также,<br />
В.П. Ильина (ИВМиМГ СО РАН), И.Е. Капорина (ВЦ РАН) за консультации и<br />
проведение сравнительных экспериментов,<br />
В.Л. Якушева (ИАП РАН) за проведение сравнительных экспериментов,<br />
К.И. Артурова, С.В. Кузнецова (Интел) за консультации по ParDiSo/CParDiSo и<br />
EigenSolver.
Приложения
Источники трудных СЛАУ<br />
1. Пакет ЛОГОС: 3D стационарные задачи линейной упругости по схеме МКЭ на блочнорегулярных<br />
сетках, спектральные задачи.<br />
1.1. СЛАУ перемещений (СЛАУ S).<br />
2. Пакет ЛОГОС: трехмерные задачи гидро/аэродинамики, решение системы уравнений<br />
Навье-Стокса с учётом теплопроводности и турбулентности на нерегулярных сетках:<br />
2.1. СЛАУ давления в схеме расщепления SIMPLE (СЛАУ p),<br />
2.2. СЛАУ для полного набора неизвестных (�,u 1,u 2,u 3,T,…) в нерасщеплённой разностной<br />
схеме метода МКО с ограничителями наклонов (СЛАУ U).<br />
3. Пакет НИМФА: 3D задачи фильтрации (гидрогеологии) на нерегулярных сетках.<br />
3.1. СЛАУ давления жидкости/газа, диффузии примесей (СЛАУ d).<br />
Поэтому наряду с развитием библиотеки решателей PMLP/ParSol:<br />
� апробация других методов других библиотек и<br />
� создание комплекса библиотек LParSol с унифицированным интерфейсом.<br />
Подобный подход - интеграция библиотек решателей, например, реализован в TRILINOS.
Тестирование СЛАУ давления ЛОГОС-SIMPLE в модельных задачах:<br />
течение в треугольной (1.2 млн.) и круглой трубе (1.7 млн.)<br />
Другие<br />
параметры<br />
Другие<br />
параметры<br />
СЛАУ 1.2 млн.,<br />
CG+ILU(0.0001) 1 1 итерация<br />
Шварца<br />
CG+IС0 1 1 итерация<br />
Шварца<br />
число итераций<br />
решателя<br />
228 26.0<br />
949 11.7<br />
CG + IC2: Tau1=0.01, Tau2=0.0001 OrdType=1 FctType=3 614 7.6<br />
GMRES+BoomerAMG: по умолчанию 14 2.4<br />
СЛАУ 1.7 млн.,<br />
CG+ILU(0.001) 1 1 итерация<br />
Шварца<br />
CG+IС0 1 1 итерация<br />
Шварца<br />
452 14.0<br />
1347 16.3<br />
CG + IC2: Tau1=0.01, Tau2=0.0001 OrdType=1 FctType=3 813 10.2<br />
GMRES+BoomerAMG: по умолчанию 18 2.0<br />
время, сек
Блочный ILUt vs. AMG на СЛАУ давления ЛОГОС.<br />
Таблица 6.1.1. Результаты замеров на первых 100 шагах, усреднённые на 1 шаг.<br />
СЛАУ 10 млн., сетка – не очень.<br />
Библ-тека Метод Пар-ры n итераций t решения СЛАУ t счёта шага<br />
PMLP CG+JacobiBlock (IC0) 624 19.84 25.97<br />
HYPRE GMRES+BoomerAMG Станд. 6 28.57 35.0
Ускорение, эффективность<br />
Эксперименты на трудных СЛАУ из реальных задач подходящими методами решения показали:<br />
• СЛАУ НДС (размер СЛАУ 2.5 млн.) ЛОГОС Прочность в<br />
1.5-3 раз быстрее (1 ->8) прямым ParDISO и в<br />
2.5-3.4 раз (8->32) итерационным <strong>TParFBSS</strong>;<br />
• Блочные СЛАУ (2.1 млн. ур.) ЛОГОС-TVD в аэродинамике<br />
8.8-12.6 раз быстрее (1->32) итерационным PMLP/ParSol;<br />
• СЛАУ давления (1.7 млн. ур.) ЛОГОС-SIMPLE в гидродинамике<br />
8-12 раз быстрее (1->32) итерационным HYPRE, PMLP/ParSol;<br />
• СЛАУ НИМФА (3.2 млн. ур.) в гидрогеологии<br />
3.3 раз быстрее (1->8) итерационным …: HYPRE, <strong>TParFBSS</strong>, PMLP/ParSol.<br />
При распараллеливании параметры итерационного метода не менялись.<br />
Эксперименты на модельных СЛАУ в режиме умножения. Здесь на:<br />
• СЛАУ (до 32 млн. ур.) НИМФА, PMLP/ParSol;<br />
• СЛАУ (до 1 млрд. ур., 27-диаг. плохо обусл., 3D-декомпозиция), <strong>TParFBSS</strong>.<br />
• СЛАУ (до 805 млн. ур., 27-диаг. хор. обусл., 3D-декомпозиц) PMLP/ParSol.<br />
ускорение составляет1.5-1.7 раза при удвоении числа ядер.<br />
Макс. СЛАУ:<br />
700 млн.ур. в аэродинамике, 200 млн. ур. в гидродинамике, 100 млн. ур. в гидрогеологии, 18 млн. ур. в<br />
ЛОГОС Прочность.
Характеристика ниш предобусловливателей<br />
Блочный Якоби ILU (PMLP/ParSol):<br />
- сильная зависимость от tau/h, высокая параллельность,<br />
- экономичность решения (память в 2 раза, время) простых СЛАУ:<br />
t, ki, vi, U (аэродинамики) для других типов и как подметод в адаптивном решателе, не берет НДС.<br />
Сквозные ILUt (PMLP/ParSol) части матрицы:<br />
- средняя зависимость от tau/h), средняя параллельность,<br />
- затратность расхода памяти (ILUt)<br />
при решении СЛАУ:<br />
t, d, p, (плохо берет) U и как подметод в адаптивном решателе.<br />
------------------------------------------------------------------------------------------------------------------------------------------------<br />
Сквозной ILU2(k) (<strong>TParFBSS</strong>):<br />
- средняя зависимость от tau/h, повышенная параллельность,<br />
- средняя затратность по памяти (наихудшее – 5 раз) решения СЛАУ:<br />
t, сложные p, d и U.<br />
------------------------------------------------------------------------------------------------------------------------------------------------<br />
BoomerAMG (HYPRE):<br />
- слабая зависимость от tau/h), средняя параллельность, высокая сходимость<br />
- и экономичность расхода памяти<br />
при решении СЛАУ p, d, t?.<br />
Не берет U (блочные); не любит большие шаблоны и недолюбливает высокую точность.<br />
------------------------------------------------------------------------------------------------------------------------------------------------<br />
ParDiSo (Intel MKL):<br />
- независимость от tau/h, низковатая параллельность,<br />
- сильная затратность по памяти (~ порядок) и времени решение СЛАУ (большого размера):<br />
нераспределённые U (НДС) в слабо трехмерных задачах.<br />
------------------------------------------------------------------------------------------------------------------------------------------------