Why the study?
Biophysically detailed cardiac ionic cell models require substantial computation, motivating systematic study on efficiently using modern multicore CPUs for this task.
Applying SIMD vectorisation and lookup tables significantly reduces the computational time required for simulating cardiac ionic cell models on modern multicore processors.
A central component in simulating cardiac electrophysiology is the numerical solution of nonlinear ordinary differential equations, also called cardiac ionic cell models, that describe cross-cell-membrane ion transport. Biophysically detailed cell models often require a considerable amount of computation, including calls to special mathematical functions. This paper systematically studies how to efficiently use modern multicore CPUs for this costly computational task. We start by investigating the code restructurings needed to effectively enable compiler-supported SIMD vectorisation, which is the most important performance booster in this context. It is found that suitable OpenMP directives are sufficient for achieving both vectorisation and parallelisation. We then continue with an evaluation of the performance optimisation technique of using lookup tables. Due to increased challenges for automated vectorisation, the obtainable benefits of lookup tables are dependent on the hardware platforms chosen. Throughout the study, we report detailed time measurements obtained on Intel Xeon, Xeon Phi, AMD Epyc and two ARM processors including Fujitsu A64FX, while attention is also paid to the impact of SIMD vectorisation and lookup tables on the computational accuracy. As a realistic example, the benefits of performance enhancement are demonstrated by a 109-run ensemble on the Oakforest-PACS system, where code restructurings and SIMD vectorisation yield an 84% reduction in computing time, corresponding to 63,270 node hours.
No takes yet. Share an insight, caveat, or question.
Hustad et al. (2022) studied Cardiac electrophysiology simulation. Code restructuring for SIMD vectorisation and lookup tables vs. Naïve auto-generated code was evaluated on Computing time and throughput (cell steps per second).
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: