cosmological simulations (project:https://www.ict.inaf.it/gitlab/hotwheels)
designed from scratch for
current and next-generation supercomputers (namely heavily exploits GPU
and vectorisation). Built on over a decade of experience in HPC and
scientific software development, hotwheels is highly modular, making it
ideal for collaborative work, rapid prototyping, and rigorous testing.
In fact, this modular architecture enables the rapid creation of
lightweight, standalone mini-apps. This approach has proven invaluable
for efficient collaboration with HPC experts and GPU vendor engineers,
allowing focused code improvement and easier debugging.
Every module is tested through GitLab CI, with function-level unit tests
on every push and enforced standards for documentation, formatting, and
code quality at merge time.
Under the hood, hotwheels combines low-level C kernels (parallelised
with MPI and OpenMP), where the high-level skeleton of the code is
driven by Python. It is optimized for vectorised computation (using a
Structure of Arrays layout) and supports GPU acceleration via OpenMP
Target and the NVIDIA Thrust library.
The code is actively in development. Current modules include I/O, octree
construction, domain decomposition, Particle Mesh gravity, and a
time-stepping scheme.
Dr. Antonio Ragagnin
):
