A parallel eigensolver eigensolver using using contour contour A - - PowerPoint PPT Presentation
A parallel eigensolver eigensolver using using contour contour A - - PowerPoint PPT Presentation
A parallel eigensolver eigensolver using using contour contour A parallel integration for generalized generalized eigenvalue eigenvalue integration for problems in molecular simulation molecular simulation problems in Tetsuya Sakurai
Contents
Introduction
- Background
- Target problem & computing environment
An Eigensolver using Contour Integration
- An algorithm
- Numerical Properties
- Parallel Implementation
Numerical Examples Conclusions
Molecular Orbital Computation
Design of Anticancer Drugs H HΨ Ψ = = E EΨ Ψ Schrödinger Equation EGFR EGFR
(Epidermal Growth Factor Receptor)
Generalized Generalized Eigenvalue Eigenvalue Problems Problems
Hartree-Fock approximation
Matrix Generation
A large molecule is separated to small segments.
SCF for each segment FMO (Fragment MO) method FMO-MO method (small eigenproblems) (large-scale eigenproblem)
Required Orbitals
Eigenvectors related to chemical activities:
HOMO LUMO
Interior eigenvalue problems Energy state:
Matrix Properties
- The size of matrix:
The size of matrix: 2K 2K ~ ~ 200K 200K The number of nonzero elements: The number of nonzero elements: 1M 1M ~ ~ 400M 400M
- relatively l
relatively large number of arge number of nonzero elements nonzero elements
- unstructured
unstructured sparsity sparsity pattern pattern
Fock matrix of Lysozyme + H2O + H2O
Computing Environment
Client Clusters Client/Server Highly parallelized eigensolver is required. FMO-MO method is suitable for GRID computing.
Contents
Introduction
- Background
- Target problem & computing environment
An Eigensolver using Contour Integration
- An algorithm
- Numerical Properties
- Parallel Implementation
Numerical Examples Conclusions
Generalized Eigenvalue Problem
The generalized eigenvalue problem: : Eigenpair of the matrix pencil where , symmetric, and B is positive definite. . . .
× × × × × × × × ×
λ1 γ
|
λ2 λ3 λm . . . λm−1 λm+1 We find eigenpairs in a given interval:
Rayleigh-Ritz Procedure
Algorithm: : Ritz value : Ritz vector : Projected pencil Inner Loop Outer Loop
Contour Integral of Resolvent
To avoid inner/outer loops, we use a contour integral in construction of a subspace. For a nonzero vector v, let where is a Jordan curve that includes . span(s0, . . . , sm−1) = span(u1, . . . , um) [S and Tadano (2007)]
: Circle with center and radius
Approximation for Contour Integral
Equidistributed points on the circle: sk are approximated by the N-point trapezoidal rule: where
Contour Integral Rayleigh-Ritz Method
Algorithm of CIRR (Contour Integral Rayleigh-Ritz) method: Rayleigh-Ritz procedure Construct a subspace
Influence of Quadrature Error
×
λm λm+1
× × × × × × ×× × ×
ρ Let Then λm+4 λm+2 λm+3 λ1
Block Method
Block variant is also obtained by using a matrix instead of a vector v.
Parallel Implementation
・・・・・
Parallel Implementation
・・・・・ ・・・・・ ・・・・・ ・・・・・ ・・・・・ ・・・・・ Client Server/Client Server/Rank0
Molecular Orbitals Post processing
Flow of the Eigensolver
Compute eigenpairs using contour integration Set appropriate circles FMO-MO method
Matrix Data Eigenpairs Profiles
Contents
Introduction
- Background
- Target problem & computing environment
An Eigensolver using Contour Integration
- An algorithm
- Numerical Properties
- Parallel Implementation
Numerical Examples Conclusions
Numerical Example (1)
Test problem:
- Model of 8 DNA base pairs
- Matrix size: 1,980 × 1,980
- nnz: 728,080
Test Environment:
- OS: MacOSX 10.5
- CPU: Core 2 Duo 2.2GHz (2GB memory)
- Software: MATLAB 7.5
- Solver: UMFPACK (sparse direct solver)
Numerical Example (1)
error residual L= 12, N = 16, center = -0.22, radius = 0.02, 38 eigs
Numerical Example (1)
error residual L = 16, N = 24, center = -0.22, radius = 0.02, 38 eigs
Numerical Example (1)
error residual L = 20, N = 24, center = -0.22, radius = 0.02, 38 eigs
Numerical Example (2)
Test Problem:
- Lysozime + H2O
- Basis function: STO-3G
- Size: 20,758 × 20,758
- nnz: 20,064,444
Test Environment:
- OS: MacOSX 10.5
- CPU: Core 2 Duo 2.2GHz (2GB memory)
- Compiler: icc 10.1, ifort 10.1
Solver: COCG method [van der Vorst and Melissen (1990)]
- Preconditioner: Complete Factorization for Approximate
Matrix [Okada, S and Teranishi (2007)]
- Sparse Direct Solver for Preconditioner: PARDISO
Numerical Example (2)
Center: -0.22 Radius: 0.03 18 eigs Wall-clock time: 233.2 sec
Residuals L = 12 N = 24
ARPACK+PARDISO: 316.1 sec, 20 eigs, max(res) = 6.6e-6 (Xeon 3.2GHz 2MB Memory)
Numerical Example (3)
Test Problems:
- EGF (Epidermal Growth Factor)
- Basis function: 6-31G
- Size: 43,612 × 43,612
- nnz: 73,175,935
Test Environment:
- OS: MacOSX 10.5
- CPU: Core 2 Duo 2.2GHz (2GB memory)
- Compiler: icc 10.1, ifort 10.1, MKL 10.0
- Solver: COCG method [van der Vorst and Melissen (1990)]
- Preconditioner: Complete Factorization for Approximate
Matrix [Okada, S and Teranishi (2007)]
- Sparse Direct Solver for Preconditioner: PARDISO
Numerical Example (3)
L = 8 N = 24 1583.1 sec L = 12 N = 24 2017.7 sec Residual Residual
Numerical Example (3)
36.8 sec 75.8 sec Preconditioner Iteration for v1,...,vL . . . ω0B − A ω1B − A ωΝ/2-1B − A RR Timing result (serial case):
L = 12 N = 24 2017.7 sec
Numerical Example (3)
Bloadcast ω0B − A ωΝ/2-1B − A . . . Timing result estimation (parallel case 1):
L = 12 N = 24
ω1B − A 36.8 sec 75.8 sec Gather CPU 1 CPU 2 CPU L . . . v1,...,vL v1,...,vL
Numerical Example (3)
ω0B − A ωΝ/2-1B − A . . . Timing result estimation (prallel case 2):
L = 12 N = 24
ω0B − A CPU 1 CPU 2 CPU L*(N/2) . . . v1 vL vL
Summary
A Rayleigh-Ritz type method using the contour integral
was proposed.
This method finds limited number of eigenpairs in a given
interval.
- Efficient for molecular orbital computation.
- Easy to implement for distributed computing.
Find good preconditioner. Application for other problems.