12.10 LQCD¶
12.10.1 Introduction to LQCD¶
Quantum Chromodynamics (QCD) is the fundamental theory that describes the strong interaction and hadron structure. Because QCD involves strong coupling, solving it rigorously is a highly challenging theoretical problem. Lattice QCD (LQCD) is a numerical gauge-field-theory method that studies the properties of quarks and gluons from the first principles of QCD.
12.10.2 Common Used Softwares¶
Currently common used LQCD softwares in IHEP:
- Chroma: developed by USQCD Collaberations
- QUDA:supported by NVIDIA, using GPU to perform lqcd calculations combined with sChroma。
- GWU-Code:developed by χQCD Collaberations.
12.10.3 LQCD Software Usage¶
12.10.3.1 Basics and Software Compilation¶
https://github.com/IHEP-LQCD/Tutorial provides a detailed guide to the computing basics of lattice QCD and to compiling the software.
12.10.3.2 Software Versions and Storage Location¶
Chroma-related software, the LLVM compiler, and MPI libraries are managed with module. Add the modulefile path to .bashrc with:
You can then list the compiled and installed software with:
Example output:
---------------------------------------------------------- /hpcfs/lqcd/qcd/modulefiles -----------------------------------------------------------
lqcd/chroma/double/with-qdpjit-quda-mpi lqcd/cuda/12.4 lqcd/llvm/22.1.8 lqcd/mpi/openmpi/5.0.10/cuda12.4-gcc11 lqcd/quda/1.1.0/cuda12.4-openmpi5.0.10
12.10.3.3 How to Use the Software¶
Chroma¶
Chroma is compiled in double precision. Load the runtime environment and dependencies with module load lqcd/chroma/double/with-qdpjit-quda-mpi.
Jobs are submitted via SLURM. Below is a simple job script:
#! /bin/bash
#### Job Queue
#SBATCH --partition=gpu
#### Group Name: lqcd
#SBATCH --account=lqcd
#### CPU Cores
#SBATCH --ntasks=8
#### Output redirection
#SBATCH --output=<some_writable_directory>/job-%j.out
#SBATCH --job-name=gpu_test
##### Specify memory to use, or slurm will allocate all available memory
#SBATCH --mem-per-cpu=2048
##### Specify how many GPU cards to use, 8 in total per node.
#SBATCH --gres=gpu:v100:2
module use /hpcfs/lqcd/qcd/modulefiles
module load lqcd/chroma/double/with-qdpjit-quda-mpi
mpirun -np 2 chroma -geom 1 1 1 2 -i sample.in.xml -o sample.out.xml
有问题?输入后跳转到对话页继续交流