Применение параллельных алгоритмов при численном моделировании кровотока в квазиодномерном приближении
Автор: Авдеева А.Н., Пузикова В.В.
Журнал: Труды Института системного программирования РАН @trudy-isp-ran
Статья в выпуске: 2 т.30, 2018 года.
Бесплатный доступ
Главной целью современного гемодинамического моделирования является предсказание поведения давления крови в артериях, а также изучение комплексного воздействия разнообразных факторов на характеристики сердечно-сосудистой системы. Наиболее популярными при этом являются квазиодномерные модели течения крови по сосудам, позволяющие моделировать кровоток во всей сосудистой системе. Поскольку полномасштабное моделирование сердечно-сосудистой системы требует больших вычислительных затрат, актуальной является задача распараллеливания вычислений. В данной работе проведено исследование эффективности распараллеливания вычислений при численном моделировании кровотока в квазиодномерном приближении. Для простоты рассмотрена задача о моделировании течения крови в отдельном кровеносном сосуде. При построении параллельного алгоритма был применен метод декомпозиции области. В каждой подобласти задача на каждом шаге по времени расщепляется на гиперболическую и параболическую подзадачи. Для решения гиперболической подзадачи используется интегро-интерполяционный метод, основанный на схеме MUSCL. Для интегрирования по времени применяются методы Рунге-Кутты и Адамса-Башфорта второго порядка. Для решения параболической подзадачи используется метод Кранка-Николсона. На стыках подобластей интерфейсные условия образуют нелинейные системы с тремя неизвестными. Эти системы решаются при помощи метода Ньютона. С помощью профилировщика AMD CodeAnalyst была определена структура временных затрат при решении тестовой задачи в последовательном режиме. При помощи закона Амдала получены оценки максимально возможного ускорения при распараллеливании наиболее дорогостоящих с вычислительной точки зрения операций. При реализации полученного алгоритма в разработанном авторами настоящей работы программном комплексе использовались технология OpenMP и библиотека MPI. Расчеты проводились на учебно-вычислительном кластере кафедры ФН-2 «Прикладная математика» МГТУ им. Н.Э. Баумана. Результаты вычислительных экспериментов показали, что выигрыш по времени, достигаемый за счет использования библиотеки MPI, не превышает нескольких процентов по сравнению с применением технологии OpenMP. В связи с этим, принимая во внимания простоту распараллеливания алгоритмов посредством OpenMP, можно остановить выбор на данной технологии, однако использование MPI позволяет сделать программный комплекс универсальным -работающим как на системах с общей памятью, так и на системах с распределенной памятью.
Технология openmp, квазиодномерная модель, кровоток, метод декомпозиции области, метод muscl, параллельный алгоритм, кластер, расщепление годунова
Короткий адрес: https://sciup.org/14916575
IDR: 14916575 | DOI: 10.15514/ISPRAS-2018-30(2)-15
Application of parallel algorithms for numerical simulation of quasi-one dimensional blood flow
The main goal of modern hemodynamic simulation is the prediction of blood pressure in the arteries, as well as the study of the various factors complex effect on the cardiovascular system characteristics. Quasi-one dimensional models of blood flow through blood vessels are the most popular. They allow to model the blood flow in the entire vascular system. Since full-scale simulation of the cardiovascular system requires large computational costs, the problem of parallelizing computation is actual. In this paper, the efficiency study was carried out for parallel algorithms in the numerical simulation of blood flow in the quasi-one-dimensional approximation. For simplicity, we consider the problem of the blood flow simulation in a separate blood vessel. When constructing a parallel algorithm, the domain decomposition method was applied. In each subdomain, the problem at each time step splits into a hyperbolic and parabolic subproblems. To solve the hyperbolic subtask, an integro-interpolation method based on the MUSCL scheme is used. To integrate over time, the second order Runge-Kutta and Adams-Bashfort methods are applied. The Crank-Nicholson method is used to solve the parabolic subproblem. At the subdomains conjunctions, the interface conditions are non-linear systems with three unknowns. These systems are solved using the Newton method. The time-cost structure was obtained for solving the test problem in a serial mode using the AMD CodeAnalyst profiler. Computations were carried out at the cluster of the BMSTU "Applied Mathematics" FN-2 department. The computational results showed that the time gain achieved by using the MPI library does not exceed a few percent in comparison with the OpenMP technology usage. Taking into account the simplicity of parallelizing algorithms through OpenMP, we can choose this technology, but MPI usage allows to make the software package universal (it can work both on shared memory systems and on distributed memory systems).
Список литературы Применение параллельных алгоритмов при численном моделировании кровотока в квазиодномерном приближении
- Quarteroni A., Formaggia L. Mathematical Modelling and Numerical Simulation of the Cardiovascular System. Handbook on numerical analysis, Ed. By P. G. Ciarlet, J. L. Lions. Amsterdam: Elsevier, 2004, 101 p DOI: 10.1016/S1570-8659(03)12001-7
- Quarteroni A., Formaggia L., Veneziani A. Cardiovascular Mathematics: Modeling and Simulation of the Circulatory System. Milano: Springer, 2011, 526 p.
- Goals -euHeart. URL: https http://www.euheart.eu/index_id_27.html (дата обращения: 09.05.2018).
- Formaggia L., Lamponi D., Quarteroni A. One dimensional models for blood flow in arteries. Journal of Engineering Mathematics, vol. 47, 2003, pp. 251-276 DOI: 10.1023/B:ENGI.0000007980.01347.29
- Azer K., Peskin C. S. A one-dimensional model of blood flow in arteries with friction and convection based on the Womersley velocity profile. Cardiovasc. Eng., vol. 7, 2007, pp. 51-73 DOI: 10.1007/s10558-007-9031-y
- Sherwin S. J., Franke V., Peiro J., Parker K. One-dimensional modeling of vascular network in space-time variables. Journal of Engineering Mathematics. vol. 47, 2003, pp. 217-250 DOI: 10.1023/B:ENGI.0000007979.32871.e2
- Wang X., Delestre O., Fullana J.-M., Saito M., Ikenaga Y., Matsukawa M., Lagree P.-Y. Comparing different numerical methods for solving arterial 1D flows in networks. Comput. Methods Appl. Mech. Eng., vol. 15, 2012, pp. 61-62 DOI: 10.1080/10255842.2012.713677
- Wang X., Fullana J.-M., Lagrée P.-Y. Verification and comparison of four numerical schemes for a 1D viscoelastic blood flow model. Computer Methods in Biomechanics and Biomedical Engineering, 2014, pp.1-22 DOI: 10.1080/10255842.2014.948428
- Avetisyan A.I., Babkova V.V., Gaisaryan S.S., Gubar' A.Yu. Development of parallel software for 3D tornado arising modeling by Nikolaevskiy theory. Matematicheskoe modelirovanie , vol. 20, № 8, 2008, pp. 28-40
- Marchevskii I.K., Tokareva S.A. Comparison of the parallel algorithms effectiveness for solving gas dynamics problems on different computational complexes. Vestnik MGTU im. N.E. Baumana. Ser. Estestvennye nauki , № 1, 2009, pp. 90-97
- Marchevskii I.K., Shcheglov G.A. Application of parallel algorithms for solving hydrodynamic problems by the vortex element method. Vychislitel'nye metody i programmirovanie , vol. 11, 2010, pp. 105-110
- Moreva V.S. Ways for calculation speed-up in solving 2D aerodynamics problems by vortex element method. Vestnik MGTU im. N.E. Baumana. Ser. Estestvennye nauki , № S, 2011, pp. 83-95
- Lukin V.V., Marchevskii I.K., Moreva V.S., Popov A.Yu, Shapovalov K.L., Shcheglov G.A. Educational-experimental computing cluster. Part 2. Examples of problem solving. Vestnik MGTU im. N.E. Baumana. Ser. Estestvennye nauki , № 4, 2012, pp. 82-102
- Marchevsky I.K., Puzikova V.V. Efficiency investigation of computation parallelization for viscous incompressible flow simulation on systems with shared memory. Vychislitel'nye metody i programmirovanie , vol. 16, 2015, pp. 595-606
- Puzikova V.V. Realization of parallel computations in the software package «LS-STAG_turb» for viscous incompressible flow simulation on systems with shared memory. Trudy ISP RAN/Proc. ISP RAS, vol. 28, issue 1. 2016, pp. 221-242 DOI: 10.15514/ISPRAS-2016-28(1)-13
- MPICH Overview | MPICH. URL: https://www.mpich.org/about/overview/(accessed: 09.05.2018).
- Avetisyan A.I., Gaisaryan S.S., Ivannikov V.P., Padaryan V.A. Productivity prediction of MPI programs based on models. Autom. Remote Control., vol. 68, 2007, pp. 750-759 DOI: 10.1134/S0005117907050037
- Intel (R) Cillk (TM) Plus | Intel® Software. URL: https://software.intel.com/ru-ru/node/522579 (accessed: 09.05.2018).
- Reinders J. Intel Threading Building Blocks: Outfitting C++ for Multi-Core Processor Parallelism. Sebastopol: O'Reilly, 2007, 336 p.
- OpenMP FAQ -OpenMP. URL: https://www.openmp.org/about/openmp-faq/(дата обращения: 09.05.2018).
- Quarteroni A., Valli A. Domain decomposition methods for partial differential equations. Oxford: Clarendon Press, 1999, 360 p.
- Godunov S.K., Zabrodin A.V., Ivanov M.Ya., Kraiko A.N., Prokopov G.P. Numerical solution of gas dynamics multidimensional problems. Moscow: Science Publ., 1976. 400 p.
- Drongowski P., Lei Yu, Swehosky F., Suthikulpanit S., Richter R., Incorporating Instruction-Based Sampling into AMD CodeAnalyst. 2010 IEEE International Symposium on Performance Analysis of Systems & Software (ISPASS 2010), White Plains, NY, 2010, pp. 119-120 DOI: 10.1109/ISPASS.2010.5452049
- Gergel' V.P. High-performance computing for multi-core systems. Moscow: Moscow University Publ., 2010, 544 p.
- Lukin V.V., Marchevskii I.K. Educational-experimental computing cluster. Part 1. Tools and capabilities. Vestnik MGTU im. N.E. Baumana. Ser. Estestvennye nauki , № 4, 2011, pp. 28-43