List of Lattice QCD Codes
For support with running these codes you might contact simulations@punch4nfdi.de.
-
Bridge++, on arXiv
Bridge++ is a code set for numerical simulations of lattice gauge theories including QCD (Quantum Chromodynamics), written in C++. It currently focuses on Wilson (clover) fermions and implements a number of Dirac solvers, HMC algorithms, and measurement functions. Support for other fermion formulations is in development. -
Chroma, on GitHub
Chroma is a software package for lattice field theory and in particular lattice QCD. It supports data-parallel programming constructs relying on the SciDAC QDP++ library written in C++. The QDP++ library presents a single high-level code image to the user, but can generate highly optimized code for many architectures including single-node workstations, multi-core and many-core nodes, clusters of nodes via the QMP library, classic vector computers, and GPUs. -
CL2QCD on arXiv on gitlab.itp.uni-frankfurt.de on Zenodo
CL2QCD is a Lattice QCD application based on OpenCL, applicable to CPUs and GPUs. It provides the possibility of producing gauge configurations using different algorithms as well as measuring observables on given configurations.
-
Grid, on arXiv, on GitHub
Grid is an open-source lattice QCD framework written in C++ 11 with support for a multitude of architectures, including all Intel x86 SIMD extensions, Arm NEON and 512-bit SVE, and AMD/NVIDIA GPGPU. The framework is designed for performance portability targeting a large variety of current and future supercomputer architectures. The portability issue is resolved by implementation of low-level functions that hide the details of the underlying hardware architecture from the user, e.g., complex arithmetics. Grid achieves 100% SIMD efficiency on all architectures by combining template meta-programming and intrinsics where available. The framework supports MPI for communication. OpenMP is used for on-chip parallelization on CPUs. -
GPT - Grid Python Toolkit, on GitHub
The Grid Python Toolkit (GPT) is an open-source Python measurement toolkit providing a physics library for lattice QCD and related theories, a module including a digital quantum computing simulator, and an experimental machine learning module. The toolkit is built on the data parallelism (MPI, OpenMP, SIMD, and SIMT) of the Grid lattice QCD framework. GPT is designed for performance portability targeting current and future supercomputer architectures. -
MILC, on GitHub
MILC collaboration code for lattice QCD calculations. The MILC Code is a body of high performance research software written in C (with some C++) for doing SU(3) lattice gauge theory on high performance computers as well as single-processor workstations. A wide variety of applications are included. -
openQCD, openQCD-FASTSUM
The openQCD software package contains simulation programs for lattice QCD based on the HMC (Hybrid Monte Carlo) or the SMD (Stochastic Molecular Dynamics) algorithm offering state-of the-art simulation techniques such as nested hierarchical integrators for the molecular-dynamics equations, twisted-mass Hasenbusch frequency splitting, even-odd preconditioning, twisted-mass determinant reweighting, and deflation acceleration. Several different solvers (CGNE, MSCG, SAP+GCR, deflated SAP+GCR) for the Dirac equation are available. The programs are parallelized and highly optimized for machines with current Intel and AMD processors, but should run correctly on any system compliant to the IEEE 754, ISO C89, MPI 1.2 and (since openQCD 2.4) OpenMP 4.5 standards. -
QUDA, on GitHub
QUDA is a library for performing calculations in lattice QCD on graphics processing units (GPUs), leveraging NVIDIA’s CUDA platform. The current release includes optimized Dirac operators and solvers for the following fermion actions: Wilson, Colver-improved Wilson, Twisted mass (degenerate ore non-degenerate), Twisted mass with a clover term, Staggered fermions, Improved staggered (asqtad or HISQ), Domain wall (4-d or 5-d preconditioned), Mobius ferimons. Implementations of CG, multi-shift CG, BiCGstab, and DD-preconditioned GCR are provided, including robust mixed-precision variants supporting combinations of double, single, and half (16-bit “block floating point”) precision. The library also includes auxiliary routines necessary for Hybrid Monte Carlo, such as HISQ link fattening, force terms and clover-field construction. Use of many GPUs in parallel is supported throughout, with communication handled by QMP or MPI. Several commonly-used packages integrate support for QUDA as a compile-time option, including Chroma, MILC, CPS, and BQCD. -
SIMULATeQCD, on arXiv, on GitHub
a SImple MUlti-GPU LATtice code for QCD calculations. SIMULATeQCD is a multi-GPU Lattice QCD framework that makes it simple and easy for physicists to implement lattice QCD formulas while still providing the best possible performance. This code is partly developed within PUNCH4NFDI.