Lyncs-API: a Python API for Lattice QCD applications
S. Bacchio*, J. Finkenrath and C. Stylianou
Pre-published on:
May 16, 2022
Published on:
July 08, 2022
Abstract
We present Lyncs-API, a Python API for Lattice QCD applications currently under development. Lyncs aims to bring several widely used libraries for Lattice QCD under a common framework. Lyncs flexibly links to libraries for CPUs and GPUs in a way that can accommodate additional computing architectures as these arise, achieving performance-portability for the calculations while maintaining the same high-level workflow. Lyncs distributes calculations using Dask and mpi4py, with bindings to the libraries automatically generated by cppyy. While Lyncs is designed to allow linking to multiple libraries, we focus on a set of targeted packages that include DDalphaAMG, tmLQCD, QUDA and c-lime. More libraries will be added in the future. We also develop generic-purpose tools for facilitating the usage of Python in Lattice QCD and HPC in general. The project is open-source, community-oriented and available on Github.
DOI: https://doi.org/10.22323/1.396.0542
How to cite
Metadata are provided both in "article" format (very similar to INSPIRE) as this helps creating
very compact bibliographies which can be beneficial to authors and
readers, and in "proceeding" format
which is more detailed and complete.