PyExaFMM: An Exercise in Designing High-Performance Software With Python and Numba
PyExaFMM: An Exercise in Designing High-Performance Software With Python and Numba
复制标题
PyExaFMM:使用 Python 和 Numba 设计高性能软件的练习
DOI:
10.1109/mcse.2023.3258288
复制
发表时间:
2022
影响因子:
2.1
通讯作者:
Kailasa S
中科院分区:
文献类型:
--
作者:
Kailasa S
Numba is a game-changing compiler for high-performance computing with Python. It produces machine code that runs outside of the single-threaded Python interpreter, and that fully utilizes the resources of modern CPUs. This means support for parallel multithreading and auto-vectorization if available, as with compiled languages such as C++ or Fortran. In this article, we document our experience developing PyExaFMM, a multithreaded Numba implementation of the fast multipole method, an algorithm with a nonlinear data structure and a large amount of data organization. We find that designing performant Numba code for complex algorithms can be as challenging as writing in a compiled language.
影响因子:
--
作者:
Tingyu Wang;Rio Yokota;L. Barba
通讯作者:
L. Barba