×

Lattice Boltzmann method for parallel simulations of cardiac electrophysiology using GPUs. (English) Zbl 1335.92046

Summary: This work presents the lattice Boltzmann method (LBM) for computational simulations of the cardiac electrical activity using monodomain model. An optimized implementation of the lattice Boltzmann method is presented which uses a collision model with multiple relaxation parameters in order to consider the anisotropy of the cardiac tissue. With focus on fast simulations of cardiac dynamics, due to the high level of parallelism present in the LBM, a GPU parallelization was performed and its performance was studied under regular and irregular three-dimensional domains. The results of our optimized lattice Boltzmann parallel implementation for cardiac simulations have shown acceleration factors as high as \(500 \times\) for the overall simulation and for the LBM a performance of 419 mega lattice updates per second was achieved. With near real time simulations in a single computer equipped with a modern GPU these results show that the proposed framework is a promising approach for application in a clinical workflow.

MSC:

92C55 Biomedical imaging and signal processing
92C50 Medical applications (general)

Software:

Chaste; LBM-EP
Full Text: DOI

References:

[1] Rocha, B. M.; Kickinger, F.; Prassl, A. J.; Haase, G.; Vigmond, E. J.; dos Santos, R. W.; Zaglmayr, S.; Plank, G., A macro finite-element formulation for cardiac electrophysiology simulations using hybrid unstructured grids, IEEE Trans. Biomed. Eng., 58, 1055-1065 (2011)
[2] Clayton, R. H.; Panfilov, A. V., A guide to modelling cardiac electrical activity in anatomically detailed ventricles, Prog. Biophys. Mol. Biol., 96, 19-43 (2008)
[3] Oliveira, R. S.; Rocha, B. M.; Burgarelli, D.; Meira, W.; Weber do Santos, R., A parallel accelerated adaptive mesh algorithm for the solution of electrical models of the heart, Int. J. High Perform. Syst. Archit., 4, 2 (2012)
[4] Bordas, R.; Carpentieri, B.; Fotia, G.; Maggio, F.; Nobes, R.; Pitt-Francis, J.; Southern, J., Simulation of cardiac electrophysiology on next-generation high-performance computers, Philos. Trans. A Math. Phys. Eng. Sci., 367, 1951-1969 (2009) · Zbl 1185.65141
[5] Succi, S., The Lattice Boltzmann Equation: for Fluid Dynamics and Beyond (2013), Oxford Science Publications · Zbl 1264.76005
[6] Neumann, P.; Neckel, T., A dynamic mesh refinement technique for lattice Boltzmann simulations on octree-like grids, Comput. Mech., 51, 237-253 (2013) · Zbl 1312.76051
[7] Artoli, A. M.; Hoekstra, A. G.; Sloot, P. M.A., Mesoscopic simulations of systolic flow in the human abdominal aorta, J. Biomech., 39, 873-884 (2006) · Zbl 1099.76051
[8] Dawson, S. P.; Chen, S.; Doolen, G. D., Lattice Boltzmann computations for reaction-diffusion equations, J. Chem. Phys., 98, 1514-1523 (1992)
[9] Blaak, R.; Sloot, P. M.A., Lattice dependence of reaction-diffusion in lattice Boltzmann modeling, Comput. Phys. Comm., 129, 256-266 (2000) · Zbl 0974.76063
[10] Amorim, R. M.; dos Santos, R. W., Solving the cardiac bidomain equations using graphics processing units, J. Comput. Sci., 4, 370-376 (2013)
[11] de Barros, B. G.; Oliveira, R. S.; Meira, W.; Lobosco, M.; dos Santos, R. W., Simulations of complex and microscopic models of cardiac electrophysiology powered by multi-GPU platforms, Comput. Math. Methods Med. (2012) · Zbl 1261.92009
[13] Rocha, B. M.; Campos, F. O.; Amorim, R. M.; Plank, G.; dos Santos, R. W.; Liebmann, M.; Haase, G., Accelerating cardiac excitation spread simulations using graphics processing units, Concurr. Comput.: Pract. Exper., 23, 708-720 (2011)
[14] Wang, W.; Xu, L.; Cavazos, J.; Huang, H. H.; Kay, M., Fast acceleration of 2D wave propagation simulations using modern computational accelerators, PLoS One, 9, 1, e86484 (2014)
[15] Schreiber, M.; Neumann, P.; Zimmer, S.; Bungartz, H.-J., Free-surface lattice-Boltzmann simulation on many-core architectures, Procedia Comput. Sci., 4, 984-993 (2011)
[16] Geveler, M.; Ribbrock, D.; Mallach, S.; Göddeke, D., A simulation suite for lattice-Boltzmann based real-time CFD applications exploiting multi-level parallelism on modern multi- and many-core architectures, J. Comput. Sci., 2, 113-123 (2011)
[17] Niederer, S. A.; Kerfoot, E.; Benson, A. P.; Bernabeu, M. O.; Bernus, O.; Bradley, C.; Cherry, E. M.; Clayton, R.; Fenton, F. H.; Garny, A.; Heidenreich, E.; Land, S.; Maleckar, M.; Pathmanathan, P.; Plank, G.; Rodríguez, J. F.; Roy, I.; Sachse, F. B.; Seemann, G.; Skavhaug, O.; Smith, N. P., Verification of cardiac tissue electrophysiology simulators using an N-version benchmark, Philos. Trans. A Math. Phys. Eng. Sci., 13, 4331-4351 (2011)
[18] Keener, J.; Sneyd, J., Mathematical Physiology (1998), Springer · Zbl 0913.92009
[19] Luo, C.; Rudy, Y., A model of the ventricular cardiac action potential. depolarization, repolarization, and their interaction, Circ. Res., 68, 6, 1501-1526 (1991)
[20] ten Tusscher, K. H.W. J.; Panfilov, A. V., Alternans and spiral breakup in a human ventricular tissue model, Am. J. Physiol. Heart Circ. Physiol., 291, H1088-H1100 (2006)
[21] Mahajan, A.; Shiferaw, Y.; Sato, D.; Baher, A.; Olcese, R.; Xie, L.-H.; Yang, M.-J.; Chen, P.-S.; Restrepo, J. G.; Karma, A.; Garfinkel, A.; Qu, Z.; Weiss, J. N., A rabbit ventricular action potential model replicating cardiac dynamics at rapid heart rates, Biophys. J., 94, 392-410 (2008)
[22] Bhatnagar, P. L.; Gross, E. P.; Krook, M., A model for collisional processes in gases I: small amplitude processes in charged and in neutral one-component systems, Phys. Rev., 94, 511 (1954) · Zbl 0055.23609
[23] Yoshida, H.; Nagaoka, M., Multiple-relaxation-time lattice Boltzmann model for the convection and anisotropic diffusion equation, J. Comput. Phys., 229, 7774-7795 (2010) · Zbl 1425.76204
[24] Zhang, X.; Bengough, A. G.; Crawford, J. W.; Young, I. M., A lattice BGK model for advection and anisotropic dispersion equation, Adv. Water Resour., 25, 1-8 (2002)
[25] Ginzburg, I., Equilibrium-type and link-type lattice Boltzmann models for generic advection and anisotropic-dispersion equation, Adv. Water Resour. (2005)
[26] Rush, S.; Larsen, H., A practical algorithm for solving dynamic membrane equations, IEEE Trans. Biomed. Eng., 25, 389-392 (1978)
[27] Latt, J., How to implement your DdQq dynamics with only q variables per node (instead of 2q), Tech. Rep. (2007), Tufts University
[28] Mattila, K.; Hyvaluoma, J.; Rossi, T.; Aspnas, M.; Westerholm, J., An efficient swap algorithm for the lattice Boltzmann method, Comput. Phys. Comm., 176, 200-210 (2007) · Zbl 1196.76066
[29] Bernaschi, M.; Fatica, M.; Melchionna, S.; Succi, S.; Kaxiras, E., A flexible high-performance lattice Boltzmann GPU code for the simulations of fluid flows in complex geometries, Concurr. Comput.: Pract. Exper., 22, 1, 1-14 (2010)
[30] Vetter, F. J.; McCulloch, A. D., Three-dimensional analysis of regional cardiac function: a model of rabbit ventricular anatomy, Prog. Biophys. Mol. Biol., 69, 157-183 (1998)
[31] Vigmond, E.; Plank, M. H.G.; Leon, L., Computational tools for modeling electrical activity in cardiac tissue, J. Electrocardiol., 36, 69-74 (2003)
[32] Mirams, G. R.; Arthurs, C. J.; Bernabeu, M. O.; Bordas, R.; Cooper, J.; Corrias, A.; Davit, Y.; Dunn, S.-J.; Fletcher, A. G.; Harvey, D. G.; Marsh, M. E.; Osborne, J. M.; Pathmanathan, P.; Pitt-Francis, J.; Southern, J.; Zemzemi, N.; Gavaghan, D. J., Chaste: an open source C++ library for computational physiology and biology, PLoS Comput. Biol. (2013)
[33] Rapaka, S.; Mansi, T.; Georgescu, B.; Pop, M.; Wright, G. A.; Kamen, A.; Comaniciu, D., LBM-EP: lattice-Boltzmann method for fast cardiac electrophysiology simulation from 3D images, (Lecture Notes in Computer Science, MICCAI (2012))
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.