CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing...

7
CCA Common Component Architecture Low-level Integration Integrating quantum chemistry (solve time independent S.E.) GAMESS, Ames MPQC, Sandia NWChem, PNNL Early work interchanged chemistry packages, leveraged solver and linear algebra components (TAO, PETSc, GA) Now moving to deeper integration within chemistry packages Integral evaluation first step in typical methods Packages support different advanced integral types (relativistic, etc) 2 1 12 ) 2 ( ) 1 ( 1 ) 2 ( ) 1 ( dr dr r t s q p

description

CCA Common Component Architecture Integral Evaluator Architecture MPQC Integral Evaluator Factory GAMESS Model Factory MPQC Model Factory Model Integral Evaluator Shell ID Buffer Completed Chemistry Components Babel Classes Integral Super Factory Supported Evaluator Types Evaluator Request NWChem Model Factory Chemistry Components in Progress

Transcript of CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing...

Page 1: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Low-level Integration

• Integrating quantum chemistry (solve time independent S.E.)– GAMESS, Ames– MPQC, Sandia– NWChem, PNNL

• Early work interchanged chemistry packages, leveraged solver and linear algebra components (TAO, PETSc, GA)

• Now moving to deeper integration within chemistry packages– Integral evaluation first step in typical methods– Packages support different advanced integral types

(relativistic, etc)

2112

)2()1(1)2()1( drdrr tsqp

Page 2: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Integral Evaluator Architecture

NWChemIntegral Evaluator

Factory

MPQC Integral Evaluator

FactoryGAMESS

Model Factory

MPQC Model Factory

Model

IntegralEvaluator

Shell IDBuffer

Completed Chemistry Components

Babel Classes

Integral SuperFactory

Supported Evaluator Types

EvaluatorRequest

NWChemModel Factory

GAMESSIntegral Evaluator

Factory

Chemistry Components in Progress

Page 3: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Interface Performance (Babel/C++)• Reference implementation in MPQC• <10% overhead is probably acceptable to most users

C5H10

6-31

1++G

**

C3H8N

O6P cc

-pVDZ

C6H7N

cc-pV

TZ

H2O au

g-cc-p

V5Z0

5

10

15

20

Hartree-FockMP2B3LYP

% in

terfa

ce o

verh

ead

Page 4: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Implementation Details

• Sharing low-level functionality while maintaining high performance is likely to expose implicit dependencies

• Arbitrary order of Cartesian angular functions and buffer layout– Reorder costs may be substantial for non-standard codes

(x y z) (x y z) = xx xy xz yx yy yz zx zy zz

(y z x) (y z x) = yy yz yx zy zz zx xy xz xx

Page 5: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Total Overhead

• Component/Babel overhead + reorder overhead• <10% overhead is probably acceptable to most users

C5H10 6-311++G** C3H8NO6P cc-pVDZ C6H7N cc-pVTZ H2O aug-cc-pV5Z0

5

10

15

20

Hartree-FockMP2B3LYP

% in

terfa

ce o

verh

ead

Page 6: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

Insights

• Millions of calls through Babel can be OK– Novice user could incur large overhead– Batching will reduce integral overhead, requires effort

• Long-term: standards agreement and adoption within domains is critical for high-performance and low-level integration to succeed – Just blessing an interface doesn't cut it

Page 7: CCA Common Component Architecture Insights from Quantum Chemistry Joseph P. Kenny Scalable Computing Research and Design Sandia National Laboratories Livermore,

CCACommon Component Architecture

CPU Architectures...

• So, those numbers where on Core 2 Duo (woodcrest)

• How do Pentium 4 / Netburst CPU's compare?

Core2C5H10 Native 151 268

CCA 162 305CCA + reorder 179 337Overhead(CCA) 7.3 14Overhead(CCA + reorder) 19 26

C5H10 Native 952 1343CCA 955 1366CCA + reorder 981 1398Overhead(CCA) 0.3 1.7Overhead(CCA + reorder) 3.1 4.1

Netburst

C5H10-CCA

H2O-CCA

C5H10-CCA+re

order

H2O-CCA+re

order

0

5

10

15

20

25

30

Core2Netburst

• L2 (instruction?) cache apparently gets hammered on Netburst