Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aemj_v1_0.tar.gz(227 Kbytes)
Manuscript Title: Fortran code for SU(3) lattice gauge theory with and without MPI checkerboard parallelization
Authors: Bernd A. Berg, Hao Wu
Program title: STMC2LSU3MPI
Catalogue identifier: AEMJ_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 183(2012)2145
Programming language: Fortran 77 compatible with the use of Fortran 90/95 compilers, in part with MPI extensions.
Computer: Any capable of compiling and executing Fortran 77 or Fortran 90/95, when needed with MPI extensions.
Operating system:
  1. Red Hat Enterprise Linux Server 6.1 with OpenMPI + pgf77 11.8-0,
  2. Centos 5.3 with OpenMPI + gfortran 4.1.2,
  3. Cray XT4 with MPICH2 + pgf90 11.2-0.
Has the code been vectorised or parallelized?: Yes, parallelized using MPI extensions. Number of processors used: 2 to 11664
RAM: 200 Mega bytes per process.
Keywords: Markov Chain Monte Carlo, Parallelization, Fortran, MPI, Checkerboard updating, Lattice guage theory, SU(3) gauge group.
PACS: 2.70.-c, 11.15.Ha.
Classification: 11.5.

Nature of problem:
Physics of pure SU(3) Quantum Field Theory (QFT). This is relevant for our understanding of Quantum Chromodynamics (QCD). It includes the glueball spectrum, topological properties and the deconfining phase transition of pure SU(3) QFT. For instance, Relativistic Heavy Ion Collision (RHIC) experiments at the Brookhaven National Laboratory provide evidence that quarks confined in hadrons undergo at high enough temperature and pressure a transition into a Quark-Gluon Plasma (QGP). Investigations of its thermodynamics in pure SU(3) QFT are of interest.

Solution method:
Markov Chain Monte Carlo (MCMC) simulations of SU(3) Lattice Gauge Theory (LGT) with the Wilson action. This is a regularization of pure SU(3) QFT on a hypercubic lattice, which allows approaching the continuum SU(3) QFT by means of Finite Size Scaling (FSS) studies. Specifically, we provide updating routines for the Cabibbo-Marinari heatbath with and without checkerboard parallelization. While the first is suitable for pedagogical purposes and small scale projects, the latter allows for efficient parallel processing. Targetting the geometry of RHIC experiments, we have implemented a Double-Layered Torus (DLT) lattice geometry, which has previously not been used in LGT MCMC simulations and enables inside and outside layers at distinct temperatures, the lower-temperature layer acting as the outside boundary for the higher-temperature layer, where the deconfinement transition goes on.

The checkerboard partition of the lattice makes the development of measurement programs more tedious than is the case for an unpartitioned lattice. Presently, only one measurement routine for Polyakov loops is provided.

Unusual features:
We provide three different versions for the send/receive function of the MPI library, which work for different operating system+compiler+MPI combinations. This involves activating the correct row in the last three rows of our latmpi.par parameter file. The underlying reason is distinct buffer conventions.

Running time:
For a typical run using an Intel i7 processor, it takes (1.8-6) E-06 seconds to update one link of the lattice, depending on the compiler used. For example, if we do a simulation on a small (4 * 83) DLT lattice with a statistics of 221 sweeps (i.e., update the two lattice layers of 4 * (4 * 83) links each 221times), the total CPU time needed can be

2 * 4 * (4 * 83) * 221 * 3 E-06 seconds = 1.7 minutes,


2            ---- two layers of lattice
4            ---- four dimensions
83 * 4     ---- lattice size
221         ---- sweeps of updating
6 E-06 s ---- average time to update one link variable.

If we divide the job into 8 parallel processes, then the real time is (for negligible communication overhead)
1.7 mins / 8 = 0.2 mins.