scidac software infrastructure for lattice gauge theory

19
SciDAC Software Infrastructure for Lattice Gauge Theory Richard C. Brower All Hands Meeting JLab June 1-2, 2005 Code distribution see http://www.usqcd.org/usqcd-software (Links to documentation at bottom)

Upload: adora

Post on 15-Jan-2016

42 views

Category:

Documents


0 download

DESCRIPTION

SciDAC Software Infrastructure for Lattice Gauge Theory. Richard C. Brower All Hands Meeting JLab June 1-2, 2005. Code distribution see http://www.usqcd.org/usqcd-software (Links to documentation at bottom). Major Participants in Soft w are Project. UK Peter Boyle - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SciDAC Software Infrastructure for Lattice Gauge Theory

SciDAC Software Infrastructurefor Lattice Gauge Theory

Richard C. Brower

All Hands Meeting

JLab June 1-2, 2005

Code distribution see http://www.usqcd.org/usqcd-software (Links to documentation at bottom)

Page 2: SciDAC Software Infrastructure for Lattice Gauge Theory

Arizona Doug Toussaint MIT Andrew Pochinsky

Dru Renner (Eric Gregory)

North Carolina

Daniel Reed (Celso Mendes)

BU Rich Brower * Ying Zhang *

James Osborn (Hartmut Neff)

JLab Robert Edwards *

BNL Chulwoo Jung Chip Watson *

Kostantin Petrov Jie Chen

Columbia Bob Mawhinney * Walt Akers

FNAL Don Holmgren * Utah Carleton DeTar *

Jim Simone Francesca Maresca

Eric Neilsen

Amitoj Singh

Major Participants in Software Project

* Software Coordinating Committee

UK Peter Boyle Balint Joo (Mike Clark)

Page 3: SciDAC Software Infrastructure for Lattice Gauge Theory

QCD API Design

Completed Components

Performance

Future

OUTLINE

Note: Thursday 9:30 Applications of the SciDAC API TBA = Carleton DeTar & Balint Joo

Page 4: SciDAC Software Infrastructure for Lattice Gauge Theory

Lattice QCD – extremely uniform

(Perfect) Load Balancing: Uniform periodic lattices & identical sublattices per processor.

(Complete) Latency hiding: overlap computation /communications

Data Parallel: operations on Small 3x3 Complex Matrices per link.

Critical kernel : Dirac Solver is ~90% of Flops.

Lattice Dirac operator:

Page 5: SciDAC Software Infrastructure for Lattice Gauge Theory

Optimized Dirac Operators, InvertersLevel 3

QDP (QCD Data Parallel)

Lattice Wide Operations, Data shifts

Level 2

QMP (QCD Message Passing)

QLA (QCD Linear Algebra)Level 1

QIOBinary DataFiles / XML Metadata

SciDAC QCD API SciDAC QCD API

C/C++, implemented over MPI, nativeQCDOC, M-via GigE mesh

Optimised for P4 and QCDOC

Exists in C/C++

ILDG collab

Page 6: SciDAC Software Infrastructure for Lattice Gauge Theory

QMP (Message Passing) version 2.0

GigE, in native QCDOC & over MPI. QLA (Linear Algebra)

1. C routines (24,000 generated by Perl with test code).

2. Optimized (subset) for P4 Clusters in SSE assembly.

3. QCDOC optimized using BAGEL -- assembly generator for

PowerPC, IBM power, UltraSparc, Alpha… by P. Boyle UK QDP (Data Parallel) API

1. C version for MILC applications code

2. C++ version for new code base Chroma I/0 and ILDG:

Read/Write for XML/binary files compliant with ILDG Level 3 (Optimized kernels)

Dirac inverters for QCDOC and P4 clusters

Fundamental Software Components are in Place:

Page 7: SciDAC Software Infrastructure for Lattice Gauge Theory

Example of QDP++ ExpressionTypical for Dirac Operator:

QDP/C++ code:

Portable Expression Template Engine (PETE)

Temporaries eliminated, expressions optimized

Page 8: SciDAC Software Infrastructure for Lattice Gauge Theory

Gauge Covariant Version of QDP/C++ code ?Lattice gauge algebra has bifundamentals:

QDP new type: (Field U, displacement y-x)

No shifts! All data movement is implicit in * operator. Gauge non-invariant expressions are impossible, except with special identity field for pure shifts ( Identity[vec])

Page 9: SciDAC Software Infrastructure for Lattice Gauge Theory

Performance of Optimized Dirac Inverters

QCDOC Level 3 inverters on 1024 processor racks

Level 2 on Infiniband P4 clusters at FNAL

Level 3 GigE P4 at JLab and Myrinet P4 at FNAL

Future Optimization on BlueGene/L et al.

Page 10: SciDAC Software Infrastructure for Lattice Gauge Theory

Level 3 on QCDOC

Page 11: SciDAC Software Infrastructure for Lattice Gauge Theory

Level 3 Aqstad QCDOC (double precision)

Page 12: SciDAC Software Infrastructure for Lattice Gauge Theory

Level 2 Asqtad on single P4 node

Page 13: SciDAC Software Infrastructure for Lattice Gauge Theory

Asqtad on Infiniband Cluster

Page 14: SciDAC Software Infrastructure for Lattice Gauge Theory

0

200

400

600

800

1000

1200

1400

1600

0 5000 10000 15000 20000 25000 30000

Local lattice size

Mfl

op

s/n

od

e

JLAB 3G, Level II JLab 3G, Level III JLAB 4G, Level II

JLab 4G, Level III FNAL Myrinet, Level III

Level 3 Domain Wall CG Inverter y

y Ls = 16, 4g is P4 2.8MHz, 800MHz FSB

(6)102 40 6 163

(32 nodes)

42 6 16 (4) 52 20

Page 15: SciDAC Software Infrastructure for Lattice Gauge Theory

Alpha Testers on the 1K QCDOC Racks

MILC C code: Level 3 Asqtad HMD: 403 * 96 lattice for 2 + 1 flavors (Each trajectory: 12hrs 18 min, Dru Renner)

Chroma C++ code: Level 3 domain wall RHMC: 243 * 32 (Ls = 8) for 2+1 flavors (James Osborn & Robert Edwards & UKQCD)

I/O: Reading and writing lattices to RAID and host AIX box

File transfers: 1 hop file transfers between BNL, FNAL & JLab

Page 16: SciDAC Software Infrastructure for Lattice Gauge Theory

BlueGene/L Assessment

June ’04: 1024 node BG/L Wilson HMC sustain 1 Teraflop (peak 5.6)

Bhanot, Chen, Gara, Sexton & Vranas hep-lat/0409042

Feb ’05: QDP++/Chroma running on UK BG/L Machine

June ’05: BU and MIT each acquire 1024 Node BG/L

’05-’06 Software Development: Optimize Linear Algebra (BAGEL assembler from P. Boyle) at UK Optimize Inverter (Level 3) at MIT

Optimize QMP (Level 1) at BU

Page 17: SciDAC Software Infrastructure for Lattice Gauge Theory

Future Software Directions On going: Optimization, Testing and Hardening of components.

New Level 3 and application routines. Executables for BG/L, X1E, XT3, Power 3, PNNL cluster, APEmille…

Integration: Uniform Interfaces, Uniform Execution Environment for 3 Labs. Middleware for data sharing with ILDG.

Data, Code, Job control as 3 Lab Meta Facility (leverage PPDG)

Algorithm Research: Increased performance (leverage TOPS & NSF IRT). New physics (Scattering, resonances, SUSY, Fermion signs, etc?)

Generalize API: QCD like extensions of SM, SUSY, New Lattices, Related Apps? (See FermiQCD)

Graphics: Debugger, GUI for Job and Data Management, Physics & PR ?

Today at 5:30 MG talk by James Brannick

Page 18: SciDAC Software Infrastructure for Lattice Gauge Theory

Old MG resultsy to set context for Brannick’s talk:2x2 Blocks for Dirac Operator

Gauss-Jacobi (Diamond), CG (circle), MG with V cycle (square), W cycle (star)

2-d Lattice, U(x) on links (x) on sites

= 1

y R. C. Brower, R. Edwards, C.Rebbi,and E. Vicari, "Projective multigrid forWilson fermions", Nucl. Phys.B366 (1991) 689 (aka Spectral AMG, Tim Chatier, 2002)

Page 19: SciDAC Software Infrastructure for Lattice Gauge Theory

Gauss-Jacobi (Diamond), CG (circle), 3 level MG (square & star) = 3 (cross), 10(plus), 100( square)

Limitation of earlier MG methods with gauge invariant butnon-adaptive projections for 2-d Schwinger Modely

Universality of vs mq/1/2