+ All Categories
Home > Documents > Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a...

Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a...

Date post: 07-Oct-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
17
Thomas Jefferson National Accelerator Facility Lattice QCD on GPUs using Chroma and QUDA Bálint Joó, Frank Winter US DOE Jefferson Lab Mike Clark, NVIDIA NVIDIA GPU Technology Conference San Jose, CA March 20, 2013
Transcript
Page 1: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Lattice QCD on GPUs using Chroma and QUDA

Bálint Joó, Frank WinterUS DOE Jefferson Lab

Mike Clark, NVIDIA

NVIDIA GPU Technology Conference San Jose, CA

March 20, 2013

Page 2: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Quantum Chromodynamics• Quantum Chromodynamics is the theory of the nuclear strong force

• Matter is made up of atoms

• The nuclei of atoms are made up of protons and neutrons

• The protons and neutrons are made up of quarks and gluons

• Quarks gluons carry so called “color” charges.

• Only “colorless” combinations can be seen in nature

meson: 2 quarks baryon: 3 quarksglueball: 0 quarks

only gluons

Page 3: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Important questions in Nuclear Physics• What observable states does QCD allow? - what is the role of the gluons?- what about exotic matter?

• How does QCD make protons, neutrons?- what are the distribution of quarks, gluons, etc in a proton or neutron ?

• QCD must predict properties of light nuclei- how to make helium, tritium etc

• How does QCD behave under extreme temperatures & pressures such as in supernovae or shortly after the Big-Bang.

Hägler, Musch, Negele, Schäfer, EPL 88 61001

Page 4: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

LQCD Calculation Workflow

• Gauge Generation: Capability Computing on Leadership Facilities- configurations generated in sequence using Markov Chain Monte Carlo technique

- focus the power of leadership computing onto single task exploiting data parallelism

- strong scaling challenge.

• Analysis Phase 1: Capacity computing, cost effective on Clusters- task parallelize over gauge configurations in addition to data parallelism

Gauge Generation Analysis Phase 1 Analysis Phase 2 Physics Result

Gauge Configurations Propagators, Correlation Functions

Page 5: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Chroma, QUDA and other software

• Chroma is an application suite for LQCD calculations - developed under US DOE SciDAC-1 and SciDAC-2 initiatives

- facilitates gauge generation and analysis

- large worldwide user base

• QUDA is a library of LQCD components for NVIDIA GPUs- provides optimized solvers, some force-terms

• Chroma and QUDA have a synergistic partnership- QUDA enabled Chroma on GPUs

- Chroma wrapped QUDA and brought it to its large user base

Page 6: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

QUDA Performance Optimizations

(V-1 sites)x12 floats12 floats

(V-1 sites) x 4 floats4 floats Pad

1 block

• LQCD is typically memory bound - Dslash: Nearest neighbour stencil in 4D

• Wilson quarks: 0.92 FLOP/B (SP)

• Staggered quarks: ~0.66 FLOP/B (SP)

• Lay out data for coalesced memory access

• Use symmetries to compress SU(3) matrices - 2 row storage or 8 parameter storage

- reconstruct 3rd row with “free” FLOPs

• Use reduced precision if possible (e.g. 16bit)- mixed precision solver , iterative refinement + reliable updates

• Fuse BLAS like kernels - increase reuse

Page 7: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

USQCD GPU Clusters

• USQCD National Facility (JLab, FNAL, BNL)- JLab and FNAL Operate GPU Accelerated Clusters

- JLab: 138 quad GPU nodes

• 41x4 Tesla K20M

• 34x4 Tesla C2050/M2050,

• 56x4 GTX 480/580

• 7x4 GTX 285

- FNAL: 72 dual nodes (Tesla M2050 GPUs)

JLab 9G GPU Cluster

JLab 10G GPU Cluster

Page 8: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Science From GPU Clusters• Hybrid Excitations in

mesons, and baryons at a common scale of ~1200 MeV

• Pattern suggests chromo-magnetic excitation

• common in mesons, baryons.

• “Effective degree of freedom” ?

• first principle calculation can agree with or disfavor effective models

0

500

1000

1500

2000

J. J. Dudek, R. G. Edwards, “Hybrid Baryons in QCD”, Phys. Rev. D85, 054016

Page 9: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Challenges in Gauge Generation• Amdahlʼs law effects- Unaccelerated code can drag down performance of accelerated code

- Solution: move more code to GPU

- Problem: how to preserve 10 year investment in Chroma

- Solution: target QDP++ layer on which most of Chroma is built

• QDP-JIT: Frank Winterʼs talk at this conference

• Strong Scaling- As node count increases, local problem size decreases

- device occupancy is reduced, surface to volume ratio increases

- latencies start to become important

- Solution: hardware and software improvements

Babich, Clark, Joo, Shi, Brower, Gottlieb, SCʼ11

Page 10: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Gauge Generation• Hybrid Molecular Dynamics Monte Carlo- new state from old using Molecular Dynamics (MD)

- Metropolis Accept/Reject Step

• Typically >90% of time spent in MD Forces

• Force term for quarks has 3 main components- Solution of the Dirac Equation

- Derivative of the Fermion Matrix

- Optional: Derivative of smeared links w.r.t thin links

- Last two of these provide Amdahlʼs law slowdown

• Non Quark Forces provide Amdahlʼs law slowdown

Plane of constant H

Plane of constant H

Momentum refreshment

Molecular Dynamics

(π,U)

(πʼ,U)

(πʼ,Uʼ)

Page 11: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

QUDA Solver Scaling: FLOPS• DD+GCR solver in QUDA - GCR solver with Additive Schwarz

domain decomposed preconditioner

- no communications in preconditioner

- extensive use of 16-bit precision

• 2011: 256 GPUs on Edge cluster

• 2012: 768 GPUs on TitanDev

• 2013: On BlueWaters- ran on up to 2304 nodes (24 cabinets)

- FLOPs scaling up to 1152 nodes

• Titan results: work in progress 0 192 384 576 768 960 1152 1344 1536 1728 1920 2112 2304number of sockets

10000

20000

30000

40000

50000

60000

70000

80000

90000

100000

110000

120000

130000

Solv

er P

erfo

rman

ce in

GFL

OPS

BiCGStab (GPU) 2304 socket jobBiCGStab (GPU) 1152 socket jobGCR (GPU) 2304 socket jobGCR (GPU) 1152 socket jobBiCGStab (CPU) XK, 2304 socketsBiCGStab (CPU) XE, 2304 sockets

Blue Waters, V=483x512, mq=-0.0864, (attempt at physical m! )

PRELIMINARY

Page 12: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

QUDA Solver Scaling: Wallclock Time

0 192 384 576 768 960 1152 1344 1536 1728 1920 2112 2304number of sockets/GPUs

20

40

60

80

100

120

140

160

180

200

Ave

rage

tim

e pe

r sol

ve (s

ec)

BiCGStab (GPU) 2304 socket jobBiCGStab (GPU) 1152 socket jobGCR (GPU) 2304 socket jobGCR (GPU) 1152 socket jobBiCGStab (CPU) XK, 2304 socketsBiCGStab (CPU) XE, 2304 sockets

BlueWaters, V=483x512, mq=-0.0864 (attempt at physical m! )

PRELIMINARY

0 192 384 576 768 960 1152 1344 1536 1728 1920 2112 2304number of sockets / GPUs

200

400

600

800

1000

1200

1400

1600

1800

2000

2200

2400

Ave

rage

tim

e fo

r app

licat

ion

(sec

)

BiCGStab (GPU) 2304 socket jobBiCGStab (GPU) 1152 socket jobGCR (GPU) 2304 socket jobGCR (GPU) 1152 socket jobBiCGStab (CPU) XK, 2304 socketsBiCGStab (CPU) XE, 2304 sockets

Blue Waters, V=483x512, mq=-0.0864 (attempt at physical, m! )

PRELIMINARY

Time per solve Whole application time

Page 13: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Gauge Generation using QDP-JIT/C• Initial result: 2+1 flavor clover gauge

generation on Blue Waters

• Full featured:- Full clover action

- stout smearing of the links

• Solvers from QUDA- BiCGStab for 2 flavor piece

- multi-shift CG for 1 flavor piece

• Non solver part through QDP-JIT/C- JIT to CUDA/C - see Frank Winterʼs talk

• This is a milestone for us !!!32 64 128 256 512

# of nodes

0

1000

2000

3000

4000

5000

Wal

lclo

ck T

ime

/ tra

j (se

c)

CPU (Regular Chroma over QDP++) GPU (QDP-JIT, Chroma, QUDA)

V=323x96, Isotropic Clover (m!

~ 400MeV)

1 HMC trajectory

PRELIMINARY

Page 14: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Gauge Generation Using QDP-JIT/C• NB: 323x96 lattice is very small- Severe strong scaling challenge

• Solver scaling has ʻtopped outʼ- GCR in HMC is work in progress.

- Optimize communications further in QUDA?

• Amdahlʼs law effects still substantial- QDP-JIT/PTX will help

- May need more hand tuned kernels outside of the solvers

• Expect 403x256 lattice to scale to ~1000-2000 nodes with GCR solver.

0!

1000!

2000!

3000!

4000!

5000!

6000!

7000!

8000!

32! 64! 128! 256!

Tim

e ta

ken

(sec

onds

)!

Number of Blue Waters Nodes!

Not Quda!endQuda!invertMultiShiftQuda!invertQuda!loadClover!loadGauge!initQuda!

Aggregate for 3 trajectories

PRELIMINARY

Page 15: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Summary and Outlook • Chroma and QUDA have a synergistic, mutually beneficial relationship

• The JIT technology allows all of Chroma (anything written in QDP++) to run on GPU.

• Milestone: Our Gauge Generation program can run on GPUs, Blue Waters, Titan

• Milestone: Sufficiently large configuration scaled to over 1000 GPUs

• Prospects & Challenges:- PTX version of QDP-JIT will improve remaining Amdahlʼs law effects

- Extreme strong scaling is still challenging

- Improvements to come:

• Algorithmic: more scalable solvers in QUDA

• Lower level: better exploitation of hardware comms features (GPU Direct etc).

• Potential hardware improvements in future systems (beyond PCIe2)

Page 16: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

More Lattice at GTC • Talks:- Mathias Wagner: “GPUs Immediately Relating Lattice QCD to Collider Experiments”*

- Frank Winter: “QCD Data Parallel (Expressive C++ API fr Lattice Field Theory) on GPUs *

- Hyung-Jin Kim: “Columbia Physics System with QUDA”, Thurs. 4:30pm, Room 111

• Posters:- Hyung-Jin Kim: “CPS with QUDA”

- Richard Forster, Ágnes Fülöp: “Yang-Mills Lattice on CUDA”

- Alexei Strelchenko: “Extending the QUDA library with Twisted Mass Fermions”

• * = these talks preceded mine, but you should be able to find recordings of them to check out.

Page 17: Lattice QCD on GPUs using Chroma and QUDA · 2013. 3. 21. · • Chroma and QUDA have a synergistic, mutually beneficial relationship • The JIT technology allows all of Chroma

Thomas Jefferson National Accelerator Facility

Acknowledgements• Computer Time: - NSF Blue Waters Facility at NCSA,

- Titan (and TitanDev) Facility at Oak Ridge Leadership Computing Facility (OLCF),

- US National Computational Facility for Lattice Gauge Theory (Jefferson Lab Clusters)

• Funding: - Partial support for this work was provided through Scientific Discovery through Advanced

Computing (SciDAC) program funded by U.S. Department of Energy, Office of Science, Offices of Advanced Scientific Computing Research, Nuclear Physics and High Energy Physics.


Recommended