Quick Links

USQCD Software Home

Acknowledging Chroma in publications

Chroma usage

Chroma Tutorials through the ages

StrongNet 2012 Summer School (HackLatt'12)

2011 Lattice Practices Chroma Tutorial

Lattice Practices 2008 tutorials by A.Juettner and C.Urbach

HackLatt'08 Chroma Tutorial

HackLatt'07 Chroma Tutorial

HackLatt'06 (broken link)

HackLatt'05 (broken link)

Developer Resources

Doxygen Documentation

Gitweb: Chroma Master branch

Gitweb: Chroma devel branch

Application Code Web Pages

Chroma

Individual Packages from USQCD

QMP

QMT

QLA

QIO

QDP/C

QDP/C++

QOP

CG DWF

C-LIME

ADAT

BAGEL QDP

MDWF

QA0

Third party package Web Pages

BAGEL

QUDA (GPU)


The Chroma Library for Lattice Field Theory


The Chroma package supports data-parallel programming constructs for lattice field theory and in particular lattice QCD. It uses the SciDAC QDP++ data-parallel programming (in C++) that presents a single high-level code image to the user, but can generate highly optimized code for many architectural systems including single node workstations, multi and many-core nodes, clusters of nodes via QMP, and classic vector computers.


Code releases:

Source Code

Chroma source code is available via github. You can also see the the Git FAQ for instructions on downloading the code. Currently the following branches are availble:

  • The master is the canonical stable branch
  • The devel branch is the branch with the proposed changes for the next version

Previous versions can be found in the release directory

Support codes

There is source code available via github that support file manipulations of chroma output files.

What? No RPMS?

As it turned out the packaging of RPMs is not really as straightforward to automate as we'd like. Also there are worries about availability of shared libraries on some systems. Therefore we have currently suspended the rolling of RPM distributions

Dependencies

In order to build Chroma you'll need to have installed

Relevant source code links:

  • QDP++ - SciDAC C++ data-parallel programming interface
  • QMP - SciDAC message passing programming interface
  • USQCD Software - home page for software distributions

User Information

Links to tutorials are on the side-bar. There is also a collection of notes in the source distribution.

Acknowledging Chroma: Must Cite Papers, Web-Sites

In order to give credit and recognition to those who have put humongous effort into writing software for you, we require that if you use Chroma results in your papers you MUST cite the following und er the appropriate circumstances:

Always:
  • R. G. Edwards (LHPC Collaboration), B. Joó (UKQCD Collaboration), "The Chroma Software System for Lattice QCD", arXiv:hep-lat/0409003, Proceedings of the 22nd International Symposium for Lattice Field Theory (Lattice2004), Nucl. Phys B1 40 (Proc. Suppl) p832, 2005.
If using SSE Optimised Dslash code (Intel P4 and other SSE compliant hardware):
If using output from the BAGEL assembly generator (IBM Power, UltraSPARC and Alpha hardware):
If using the QUDA GPU Library with Chroma
  • M. A. Clark, R. Babich, K. Barros, R. C. Brower, C. Rebbi, Solving Lattice QCD systems of equations using mixed precision solvers on GPUs arXiv:0911.3191v1 [hep-lat]

This list may change as new citations may appear or preprints work their way through the publication process. Please revisit this list to get the latest version for your paper before publishing.

Chroma usage

Fun graphic showing locations of some of the Chroma users that we could find. Hover over the points to see the locations. Please let us know of more such sites.