New DFG Project FMhub Started
The performance of today's simulation software originates from increased parallelism instead of increased clock frequency. As a result, a sustainable software design is required to harvest the available parallelism. The rapid increase in diverse and hierarchically parallel hardware as well as the advent of accelerators (e.g. GPUs) make it harder for the maintainers of such simulation codes to retain flexibility and high performance for all parts of the code. In recent years, many communities therefore parted from the monolithic application approach and moved towards a collection of highly specialized components.
The new DFG-funded FMhub project aims to provide an open-source fast multipole method (FMM) for the scientific community as a flexible C++ library called FMSolvr to compute long-range interactions. The code will be made available together with community-building tools such as version control, a bug tracker, continuous integration, and deployment tools as well as comprehensive documentation.
In contrast to high-level modifications, the parallelization layer of FMSolvr will also be addressed. By decoupling three integral parts (intracore, intranode, and internode parallelism), the goal is to increase maintainability and portability. The separation of these parallelization layers will allow the exchange of parallelization strategies arising in the future, e.g. different vectorization libraries or tasking frameworks. This modularization also aims to increase the decoupling of algorithmic components within the library to increase flexibility.
Together with Prof. Matthias Werner and his team from Chemnitz University of Technology, researchers at JSC will employ software engineering techniques to work towards these goals. The project started in September 2021 and will run for three years.
Contact: Dr. Ivo Kabadshow
from JSC News No. 283, 24 September 2021