Параллельная реализация интерполяции на основе радиальных базисных функций с
сокращением данных
a, a, a, a
a Институт механики УрО РАН
426067, Ижевск,
email: i. *****@***com
При моделировании сопряженных задач газодинамики и механики деформируемого твердого тела каждая из физических задач решается независимо, используя собственную расчетную сетку. Таким образом, возникает необходимость в интерполяции физических данных (давления, перемещений) между двумя сетками. Интерполирование данных осуществляются методом радиальных базисных функций не использующим топологию сетки. В статье рассматривается сокращение времени интерполяции, как за счет использования параллельных вычислений, так и за счет сокращения размерности системы возникающей при формировании интерполянта с использованием послойного разделения расчетной сетки.
Ключевые слова: радиальные базисные функции; интерполяция данных; параллельные вычисления
Parallel implementation radial basis functions interpolation with data reduction
S. P. Kopysova, I. M. Kuzmina, A. K. Novikova, L. E. Tonkova
a Institute of Mechanics UB RAS, T. Baramzinoy St. 34, 426067, Izhevsk
email: i. *****@***com
To solving fluid-structure interaction problems, each of the physical problems is solved independently, using its own mesh. Thus, there is a need for interpolation of physical data (pressure, displacement) between two meshes. Interpolation of data is carried out by the method of radial basis functions, since it does not use the mesh topology and allows obtaining the best interpolation. In this article, we consider the decrease in the interpolation time both due to the use of parallel computations, and by reducing the size of the system forming the interpolant, using the layer-by-layer partition of the computational mesh.
Keywords: radial basis functions; data interpolation; parallel computing
Интерполяция сеточных данных методом РБФ
Суть метода радиальных базисных функций заключается в построении интерполянта, коэффициенты которого находятся из решения системы уравнений. В зависимости от выбора функции матрица системы имеет разную обусловленность, а система уравнений разную сложность решения. Как следствие, процесс интерполяции может занимать значительное время, что сказывается на общем времени решения сопряженной задачи.
Рассмотрим интерполяцию давления между двумя сетками, записанную в матричной форме. Обозначим через Ω область, на границе которой ГΩ = ∂Ω задано давление
, а через Ц область, на границу ГЦ = ∂Ц которой необходимо его перенести. Процедура интерполяция давления между границами запишется следующим образом:
,
, (1)
где
и
– матрицы состоящие из элементов вида
,
, соответственно,
,
– матрицы столбцов, б, в – коэффициенты искомого интерполянта,
– давление на границе области Ц.
Наиболее затратной операцией процедуры интерполяции является решение системы уравнений (1). Зачастую, функции, дающие наилучшую интерполяцию, не могут обеспечить приемлемое время решения системы уравнений, в этом случае можно уменьшить время за счет сокращения размерности системы, а также использованием параллельных вычислений.
Сокращение размерности системы при построении интерполянтаСокращение размерности системы рассмотрим на примере сопряженной задачи взаимодействия сверхзвукового сопла с высокой степенью геометрического расширения [3]. Особенностью этой задачи является протяженная граница, по которой проходит интерполяция данных, а также неравномерное распределение давления по границе Ω, области заполненной газом (рис. 1 (а)).
Особенность распределения давления учитывается при разделении области на основе послойного метода, учитывающего условия соседства узлов и ячеек расчетной сетки [4]. Сокращение данных заключается в выборе из послойного разделения заданного числа слоев, наиболее полно представляющих характер распределения интерполируемых данных. На рис. 1 (б), (в) показано два варианта разделения поверхностной сетки на 150 слоев и выбора 15 слоев, участвующих в интерполяции. (окрашены в темной цвет).
(а) |
(б) |
(в) |
Рис. 1. (a) распределение давления на границе области, (б) вариант разделения вдоль образующих, (в) вариант разделение вдоль сечения |
Сравнение качества интерполяции проводилось для базисных функций из [3] для разного разделения и числа учитываемых слоев. В случае интерполяции давления качество оценивается, как относительная погрешность, вычисляемая через отношение норм равнодействующих сил давления. Как показали результаты, качество зависит не только от числа точек интерполяции, но и от их выбора. Наилучшая интерполяция получается при послойном разделении области вдоль сечения. Из рассматриваемых методов лучший результат показал метод РБФ с глобальной функцией
, позволивший сократить число уравнений системы (1) в 15 раз с сохранением качества интерполяции.
Несмотря на возможности уменьшения размерности системы, время интерполяции остается существенным в рамках решения сопряженной задачи. Основные затраты приходятся на решение системы (1) и формирование матриц
,
. Решение системы уравнений, как правило, осуществляется методами из подпространства Крылова. Эти методы объединяет использование матрично-векторного произведения, которое эффективно выполняется с использованием GPU. Характерной особенностью базисных функций, рассматриваемых выше, является полностью заполненная матрица
, что сказывается на размере системы, которую можно решить на GPU. Используя подход, представленный в [1], объем используемой памяти можно увеличить за счет использования нескольких GPU. Таким образом, основные затраты интерполяции минимизируются за счет использования одного или нескольких графических ускорителей. Время, затрачиваемое на формирование матриц
и
, уменьшается за счет использования многопоточности. Распараллеливание в рамках технологии OpenMP позволило добиться сокращения времени до семи раз при использовании восьми потоков CPU.
Послойное разделение, учитывающее особенности распределения интерполируемых сеточных данных, позволяет их существенно сократить, сохраняя качество интерполяции. При нерегулярном распределении сеточных данных, наиболее эффективными являются глобальные базисные функции, позволяющие существенно сократить объем данных. Сокращение данных приводит к уменьшению размерности системы уравнений (1), что, вместе с использованием GPU и многопоточности, позволяет уменьшить время вычислений, затрачиваемое на интерполяцию в десятки раз.
БлагодарностиРабота выполнена при поддержке РФФИ (проекты 17-01-00402_a, 16-37-00060-мол_a).
Список литературы
Kopysov S. P., Kuzmin I. M., Nedozhogin N. S, Novikov A. K., Sagdeeva Y. A. Scalable hybrid implementation of the Schur complement method for multi-GPU systems // Journal of Supercomputing. 2014. Vol. 69. P. 81–88. Wang T. S., Zhao X., Zhang S. Aeroelastic Modeling of a Nozzle Startup Transient // Journal of Propulsion and Power. 2013. V. 30. , , Методы деформирования сеток в сопряженных задачах // Вычислительные методы и программирование. 2013. T. 14. C. 269–278. , , Послойное разделение конечно-элементных сеток для мультиядерных архитектур // Суперкомпьютерные дни в России. 2016. С. 493–504.




