Динамическая балансировка вычислительной нагрузки при моделировании неустойчивых течений

Бесплатный доступ

В работе описан алгоритм динамической балансировки вычислительной нагрузки при моделировании неустойчивых течений на динамически адаптивных расчетных сетках с помощью трехмерной эйлеровой газодинамической программы. Выравнивание вычислительной нагрузки между MPI-процессами производится независимо вдоль линий (наборов MPI-фрагментов, расположенных вдоль выделенного направления), и может выполняться в трех режимах: по числу ячеек, по времени счета, и в смешанном (или автоматическом) режиме. Для минимизации накладных расходов на адаптацию и балансировку используется адаптация с запасом, при этом строится последовательность из этапов адаптации, балансировки и счета в течение заданного количества шагов — цикл Адаптация — Балансировка — Счет (цикл А-Б-С). Оптимальное число шагов в цикле А-Б-С определяется путем минимизации времени счета задачи, которое зависит от общего числа ячеек. Рассматривается тестовая задача о сферическом сжатии легкого центрального вещества тяжелой оболочкой (тест Янгса). Источником развития неустойчивостей является начальное гармоническое возмущение на контактной границе веществ. Моделирование проводится с применением динамической сеточной адаптации второго уровня в области развития неустойчивостей. Оценивается ускорение времени счета задачи при включении балансировки вычислительной нагрузки в разных режимах относительно расчета без балансировки. В результате проведенных исследований показана эффективность применения адаптации с запасом в рамках цикла А-Б-С. При этом автоматический режим выравнивания нагрузки является наиболее практичным.

Еще

Газовая динамика, неустойчивые течения, сферическое сжатие, динамическая адаптация сетки, динамическая балансировка, вычислительная нагрузка

Короткий адрес: https://sciup.org/147252011

IDR: 147252011   |   УДК: 519.63, 519.688   |   DOI: 10.14529/cmse250304

Dynamic Computational Load Balancing During Simulations of Instability Flows

In this work we describe the algorithm of dynamic computational load balancing during modeling of instability flows over dynamically refined mesh using three-dimensional eulerian gas dynamic program. Balancing of computational load between MPI-fragments is executed along lines (set of MPI-fragments that are situated along preferential direction) independently and may be carried out in three regimes: accounting number of cells, accounting real calculation time, and automatic (or composite) regime. We use adaptation with reservation to minimize overheads for adaptation and balancing: we construct a sequence of adaptation, balancing and calculation stages during fixed count of steps – “Adaptation –– Balancing — Calculation” cycle (A–B–C cycle). The optimal count of steps in A–B–C cycle is determined by minimization of task calculation time that depends on count of cells. For testing of realized algorithm we considered a spherical implosion of a light material by a dense shell (Youngs’ problem). A source of instabilities was the initial harmonic perturbation on the contact boundary. The calculations are made using second-level dynamically adaptive mesh refinement in the region of instability growth. We analyze the calculation time of the problem using different regimes of load balancing algorithm. The result of the research proves the efficiency of using adaptive mesh refinement with reservation within A–B–C cycle. The automatic regime of load balancing is the most stable for three-dimensional modelling.

Еще