Abstract

OpenFOAM is a proven engineering tool for applied hydrodynamics numerical modeling which is typically characterized by complex geometries and large grids of 107-108 cells. Since such calculations are often very long and resource-intesive, any way of speeding them up is of high practical interest. Based on one practical problem of a screw propeller characteristics modeling, optimizations to OpenFOAM via the originally developed SLAE solution plugin is proposed. The plugin is based on SparseLinSol (SLS) library, developed by the authors. The library uses Krylov subspace iterative methods with the Classic AMG preconditioner to effectively solve large SLAEs on supercomputers and features original hybrid communications model which implements MPI and Posix Shared Memory combination. The library also is able to utilize NVIDIA GPU accelerators for a significant part of the implemented algorithms. Test results on 128-node computational system equipped with NVIDIA X2070 accelerators show that: (i) OpenFOAM numerical modeling results are close to those achieved with Star-CCM package and experimental results; (ii) developed SLAE solution methods are more robust than those implemented in original OpenFOAM GAMG-based SLAE solver; (iii) hybrid communication model improves solver scalability a lot and the solver scales linearly up to the maximum number of nodes used in current tests; (iv) GPU usage makes calculations 1.4-3 times faster; (v) SLS solver is faster than hypre solver on the same set of implemented methods and test matrices

Highlights

  • OpenFOAM is a proven engineering tool for applied hydrodynamics numerical modeling which is typically characterized by complex geometries and large grids of 107-108 cells

  • The plugin is based on SparseLinSol (SLS) library, developed by the authors

  • Test results on 128-node computational system equipped with NVIDIA X2070 accelerators show that: (i) OpenFOAM numerical modeling results are close to those achieved with Star-CCM package and experimental results; (ii) developed SLAE solution methods are more robust than those implemented in original OpenFOAM GAMG-based SLAE solver; (iii) hybrid communication model improves solver scalability a lot and the solver scales linearly up to the maximum number of nodes used in current tests; (iv) GPU usage makes calculations 1.4-3 times faster; (v) SLS solver is faster than hypre solver on the same set of implemented methods and test matrices

Read more

Summary

Введение

Решение прикладных инженерных и научных задач вычислительной гидродинамики в настоящее время является одной из типичных задач для многопроцессорных вычислительных систем. Научным расчетам свойственны достаточно простые геометрии расчетных областей, но более “аккуратные” численные процедуры, как то схемы высоких порядков аппроксимации по времени и пространству, быстрые методы решения систем уравнений, оптимизированные под конкретную геометрию расчетной области, более достоверные модели турбулентности и прочее. С учетом того, что для удовлетворительного разрешения подобных расчетных областей требуются сетки порядка 107-108 ячеек, а расчет одного шага по времени занимает несколько минут, то крайне актуальным оказывается вопрос ускорения подобных расчетов. Проведенные оценки показали, что до 90% расчета шага по времени может занимать решение систем линейных алгебраических уравнений (СЛАУ) для поправки давления. В данной работе будет затронут каждый из указанных аспектов на примере разрабатываемой авторами библиотеки численных методов для решения больших разреженных систем линейных алгебраических уравнений SparseLinSol. Говоря об использовании графических ускорителей, следует изначально корректно оценивать потенциал ускорения для задач линейной алгебры с разреженными матрицами, не ожидая 20-40-кратных ускорений. По сравнению с типичным значением для центральных процессоров порядка 50 ГБ/сек, потенциальное ускорение от использования одного сопроцессора, с учетом различных накладных расходов, следует ожидать в пределах 2.5-4 раз по сравнению с одним центральным процессором

Постановка задачи
Библиотека SparseLinSol
Особенности реализации методов на графических ускорителях
Выбор формата представления матриц
Распределенная реализация методов для графических ускорителей
Результаты
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.