Algebraic two-level preconditioners. for the Schur complement method. L. M. Carvalho, L. Giraud and P. Le Tallec

Similar documents
ADDITIVE SCHWARZ FOR SCHUR COMPLEMENT 305 the parallel implementation of both preconditioners on distributed memory platforms, and compare their perfo

A High-Performance Parallel Hybrid Method for Large Sparse Linear Systems

Multispace and Multilevel BDDC. Jan Mandel University of Colorado at Denver and Health Sciences Center

From Direct to Iterative Substructuring: some Parallel Experiences in 2 and 3D

A Balancing Algorithm for Mortar Methods

Multilevel and Adaptive Iterative Substructuring Methods. Jan Mandel University of Colorado Denver

OUTLINE 1. Introduction 1.1 Notation 1.2 Special matrices 2. Gaussian Elimination 2.1 Vector and matrix norms 2.2 Finite precision arithmetic 2.3 Fact

XIAO-CHUAN CAI AND MAKSYMILIAN DRYJA. strongly elliptic equations discretized by the nite element methods.

A MULTIGRID ALGORITHM FOR. Richard E. Ewing and Jian Shen. Institute for Scientic Computation. Texas A&M University. College Station, Texas SUMMARY

18. Balancing Neumann-Neumann for (In)Compressible Linear Elasticity and (Generalized) Stokes Parallel Implementation

Spectral element agglomerate AMGe

arxiv: v1 [math.na] 11 Jul 2011

A Balancing Algorithm for Mortar Methods

Domain Decomposition Preconditioners for Spectral Nédélec Elements in Two and Three Dimensions

Adaptive Coarse Space Selection in BDDC and FETI-DP Iterative Substructuring Methods: Towards Fast and Robust Solvers

Parallel Scalability of a FETI DP Mortar Method for Problems with Discontinuous Coefficients

AN INTRODUCTION TO DOMAIN DECOMPOSITION METHODS. Gérard MEURANT CEA

Preface to the Second Edition. Preface to the First Edition

Overlapping Schwarz preconditioners for Fekete spectral elements

problem Au = u by constructing an orthonormal basis V k = [v 1 ; : : : ; v k ], at each k th iteration step, and then nding an approximation for the e

Short title: Total FETI. Corresponding author: Zdenek Dostal, VŠB-Technical University of Ostrava, 17 listopadu 15, CZ Ostrava, Czech Republic

A Domain Decomposition Based Jacobi-Davidson Algorithm for Quantum Dot Simulation

Mathematics Research Report No. MRR 003{96, HIGH RESOLUTION POTENTIAL FLOW METHODS IN OIL EXPLORATION Stephen Roberts 1 and Stephan Matthai 2 3rd Febr

Contents. Preface... xi. Introduction...

Convergence Behavior of a Two-Level Optimized Schwarz Preconditioner

SOME PRACTICAL ASPECTS OF PARALLEL ADAPTIVE BDDC METHOD

Parallel scalability of a FETI DP mortar method for problems with discontinuous coefficients

Solving PDEs with Multigrid Methods p.1

20. A Dual-Primal FETI Method for solving Stokes/Navier-Stokes Equations

Iterative versus direct parallel substructuring methods in semiconductor device modeling

The All-floating BETI Method: Numerical Results

An Efficient FETI Implementation on Distributed Shared Memory Machines with Independent Numbers of Subdomains and Processors

A Robust Preconditioner for the Hessian System in Elliptic Optimal Control Problems

33 RASHO: A Restricted Additive Schwarz Preconditioner with Harmonic Overlap

Optimal Interface Conditions for an Arbitrary Decomposition into Subdomains

for Finite Element Simulation of Incompressible Flow Arnd Meyer Department of Mathematics, Technical University of Chemnitz,

Solving Large Nonlinear Sparse Systems

A FETI-DP Method for Mortar Finite Element Discretization of a Fourth Order Problem

An additive average Schwarz method for the plate bending problem

Algebraic Multigrid as Solvers and as Preconditioner

Nonoverlapping Domain Decomposition Methods with Simplified Coarse Spaces for Solving Three-dimensional Elliptic Problems

Positive Denite Matrix. Ya Yan Lu 1. Department of Mathematics. City University of Hong Kong. Kowloon, Hong Kong. Abstract

The Deflation Accelerated Schwarz Method for CFD

Optimal multilevel preconditioning of strongly anisotropic problems.part II: non-conforming FEM. p. 1/36

Computing least squares condition numbers on hybrid multicore/gpu systems

Scalable Non-blocking Preconditioned Conjugate Gradient Methods

Robust multigrid methods for nonsmooth coecient elliptic linear systems

S MALASSOV The theory developed in this paper provides an approach which is applicable to second order elliptic boundary value problems with large ani

ON THE CONVERGENCE OF A DUAL-PRIMAL SUBSTRUCTURING METHOD. January 2000

Luca F. Pavarino. Dipartimento di Matematica Pavia, Italy. Abstract

AN AGGREGATION MULTILEVEL METHOD USING SMOOTH ERROR VECTORS

ETNA Kent State University

Arnoldi Methods in SLEPc

ASM-BDDC Preconditioners with variable polynomial degree for CG- and DG-SEM

Two-scale Dirichlet-Neumann preconditioners for boundary refinements

C. Vuik 1 R. Nabben 2 J.M. Tang 1

PANM 17. Marta Čertíková; Jakub Šístek; Pavel Burda Different approaches to interface weights in the BDDC method in 3D

The Best Circulant Preconditioners for Hermitian Toeplitz Systems II: The Multiple-Zero Case Raymond H. Chan Michael K. Ng y Andy M. Yip z Abstract In

Preconditioning of Saddle Point Systems by Substructuring and a Penalty Approach

Algebraic Coarse Spaces for Overlapping Schwarz Preconditioners

Adaptive algebraic multigrid methods in lattice computations

A Numerical Study of Some Parallel Algebraic Preconditioners

Lecture 9 Approximations of Laplace s Equation, Finite Element Method. Mathématiques appliquées (MATH0504-1) B. Dewals, C.

Auxiliary space multigrid method for elliptic problems with highly varying coefficients

INTERGRID OPERATORS FOR THE CELL CENTERED FINITE DIFFERENCE MULTIGRID ALGORITHM ON RECTANGULAR GRIDS. 1. Introduction

Some Geometric and Algebraic Aspects of Domain Decomposition Methods

ETNA Kent State University

AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 23: GMRES and Other Krylov Subspace Methods; Preconditioning

Direct solution methods for sparse matrices. p. 1/49

1. Fast Solvers and Schwarz Preconditioners for Spectral Nédélec Elements for a Model Problem in H(curl)

Multipréconditionnement adaptatif pour les méthodes de décomposition de domaine. Nicole Spillane (CNRS, CMAP, École Polytechnique)

Domain Decomposition Algorithms for an Indefinite Hypersingular Integral Equation in Three Dimensions

Construction of a New Domain Decomposition Method for the Stokes Equations

AMS Mathematics Subject Classification : 65F10,65F50. Key words and phrases: ILUS factorization, preconditioning, Schur complement, 1.

Key words. preconditioned conjugate gradient method, saddle point problems, optimal control of PDEs, control and state constraints, multigrid method

IN p-version AND SPECTRAL ELEMENT METHODS MARIO A. CASARIN

Application of Preconditioned Coupled FETI/BETI Solvers to 2D Magnetic Field Problems

Capacitance Matrix Method

On the Use of Inexact Subdomain Solvers for BDDC Algorithms

0 Finite Element Method of Environmental Problems. Chapter where c is a constant dependent only on and where k k 0; and k k ; are the L () and H () So

Rening the submesh strategy in the two-level nite element method: application to the advection diusion equation

MULTIGRID PRECONDITIONING FOR THE BIHARMONIC DIRICHLET PROBLEM M. R. HANISCH

Substructuring Preconditioning for Nonconforming Finite Elements engineering problems. For example, for petroleum reservoir problems in geometrically

New Multigrid Solver Advances in TOPS

Parallel sparse linear solvers and applications in CFD

A Novel Aggregation Method based on Graph Matching for Algebraic MultiGrid Preconditioning of Sparse Linear Systems

INSTITUT F UR INFORMATIK. Sonderforschungsbereich 342: Methoden und Werkzeuge fur die Nutzung. Preconditioners based on. Coarsening and Algebraic-

Two new enriched multiscale coarse spaces for the Additive Average Schwarz method

Lecture 8: Fast Linear Solvers (Part 7)

Multigrid and Domain Decomposition Methods for Electrostatics Problems

ALGEBRAIC MULTILEVEL METHODS FOR GRAPH LAPLACIANS

2 CAI, KEYES AND MARCINKOWSKI proportional to the relative nonlinearity of the function; i.e., as the relative nonlinearity increases the domain of co

SOLVING SPARSE LINEAR SYSTEMS OF EQUATIONS. Chao Yang Computational Research Division Lawrence Berkeley National Laboratory Berkeley, CA, USA

Selecting Constraints in Dual-Primal FETI Methods for Elasticity in Three Dimensions

The Conjugate Gradient Method

Scalable Domain Decomposition Preconditioners For Heterogeneous Elliptic Problems

Centro de Processamento de Dados, Universidade Federal do Rio Grande do Sul,

SOLVING MESH EIGENPROBLEMS WITH MULTIGRID EFFICIENCY

Operator Dependent Interpolation. A. Krechel. K. Stuben. German National Research Center for Information Technology (GMD)

Lecture 17: Iterative Methods and Sparse Linear Algebra

Transcription:

Algebraic two-level preconditioners for the Schur complement method L. M. Carvalho, L. Giraud and P. Le Tallec June 1998 TR/PA/98/18

Algebraic two-level preconditioners for the Schur complement method L. M. Carvalho L. Giraud y P. Le Tallec z CERFACS Technical Report TR/PA/98/18 - June 1998 Abstract The solution of elliptic problems is challenging on parallel distributed memory computers as their Green's functions are global. To address this issue, we present a set of preconditioners for the Schur complement domain decomposition method. They implement a global coupling mechanism, through coarse space components, similar to the one proposed in [3]. The denition of the coarse space components is algebraic, they are dened using the mesh partitioning information and simple interpolation operators. These preconditioners are implemented on distributed memory computers without introducing any new global synchronization in the preconditioned conjugate gradient iteration. The numerical and parallel scalability of those preconditioners is illustrated on two-dimensional model examples that have anisotropy and/or discontinuity phenomena. Keywords : Domain decomposition, two-level preconditioning, Schur complement, parallel distributed computing, elliptic partial dierential equations. 1 Introduction In the recent years, there has been an important development of domain decomposition algorithms for solving numerically partial dierential equations. Elliptic problems are challenging since their Green's functions are global: the solution at each point depends upon the data at all other points. Nowadays some methods possess optimal convergence rates for given classes of elliptic problems. It can be shown that the condition number of the associated preconditioned systems is independent from the number of subdomains and either independent or logarithmically dependent on the size of the subdomains. That optimality and this quasi-optimality properties are often achieved thanks to the solution of a coarse problem dened on the whole physical domain. Through the use of coarse spaces, this approach captures the global behaviour of the elliptic equations. Various domain decomposition techniques, from the eighties and nineties, have suggested dierent global coupling mechanisms and various combinations between them and the local preconditioners. In the framework of non-overlapping domain decomposition techniques, we refer for instance to BPS (Bramble, Pasciak and Schatz) [3], Vertex Space [7, 17], and to some extent Balancing Neumann-Neumann [13, 14, 15], as well as FETI [10, 16], for the presentation of major two-level preconditioners. We refer to [6] and [18] for a more exhaustive overview of domain decomposition techniques. CERFACS - France and COPPE-UFRJ Brazil. This work was partially supported by FAPERJ-Brazil under grant 150.177/98. y CERFACS, 42 av. Gaspard Coriolis, 31057 Toulouse Cedex z CEREMADE, Universite Paris Dauphine, 75 775 Paris Cedex 16 3

4 In this paper, we present a contribution in the area of two-level domain decomposition methods for solving heterogeneous, anisotropic two-dimensional elliptic problems using algebraic constructions of the coarse space. Through an experimental study of the numerical and parallel scalability of the preconditioned Schur complement method, we investigate some new coarse-space preconditioners. They are closely related to BPS [3], although we propose dierent coarse spaces to construct their coarse components. Furthermore, we propose a parallel implementation of the preconditioned Schur complement method that does not require any new global synchronization in the iteration loop of the preconditioned conjugate gradient solver. The paper is organized as follows. In Section 2, we formulate the problem and introduce the notation. In Section 3, we describe the various coarse spaces we have considered when dening the preconditioners' coarse-space components. Section 4 provides some details on the parallel distributed implementation of the resulting domain decomposition algorithm. Computational results illustrating the numerical and parallel scalability of the preconditioners are given in Section 5. 2 Preliminaries and notations This section is two-fold. First, we formulate a two-dimensional elliptic model problem. Then, we introduce the notation that will allow us to dene the coarse spaces we have considered in our preconditioners. We consider the following 2 nd order self-adjoint elliptic problem on an open polygonal domain included in IR 2 : 8 >< >:? @x @ (a(x; y) @v @x )? @y @ (b(x; y)@v @y ) = F (x; y) in ; v = 0 on @ Dirichlet 6= ;; @v @n = 0 on @ Neumann; where a(x; y); b(x; y) 2 IR 2 are positive functions on. We assume that the domain is partitioned into N non-overlapping subdomains 1 ; : : : ; N with boundaries @ 1 ; : : : ; @ N. We discretize (1) either by nite dierences or nite elements resulting in a symmetric and positive denite linear system (1) Au = f: (2) Let B be the set of all the indices of the discretized points which belong to the interfaces between the subdomains. Grouping the points corresponding to B in the vector u B and the ones corresponding to the interior I of the subdomains in u I, we get the reordered problem: AII A IB ui fi = : (3) u B f B A T IB A BB Eliminating u I from the second block row of (3) leads to the following reduced equation for u B : Su B = f B? A T IB A?1 II f I ; where S = A BB? A T IB A?1 II A IB (4) is the Schur complement of the matrix A II in A, and is usually referred to as the Schur complement matrix. To describe the preconditioners, we need to dene a partition of B. Let V j be the singleton sets that contain one index related to one cross point and let V = [ j V j be the set with all those indices; each cross point is represented by in Figure 1.

5 Figure 1: A 4 4 box-decomposition with edge () and vertex () points. If j 6= l, (j; l) 2 f1; 2; : : : ; Ng 2 and j and l are such that j and l are neighboring subdomains (i.e. @ j and @ l share at least one edge of the mesh), then we can dene each edge E i by E i = (@ j \ @ l )? V: (5) In Figure 1, the points belonging to the m edges (E i ) i=1;m are represented by. We can thus describe the set B as B = ( m[ i=1 E i ) [ V; (6) that is a partition of the interface B into m edges E i and the set V. Here, we realize that we mix continuous curves, @ i, with sets of indices. This ambiguity can be disregarded if we consider that, in order to minimize notation, the symbols i and @ i can represent either continuous sets or discrete sets of indices associated with the grid points. 3 The preconditioners The classical BPS preconditioner [3] can be briey described as follows. We rst dene a series of projection and interpolation operators. Specically, for each E i we dene R i = R Ei as the standard pointwise restriction of nodal values on E i. Its transpose extends grid functions in E i by zero on the rest of the interface B. Similarly we dene R V the canonical restriction on V. Thus, we set S ij R i SR T j and S V R V SR T V. Additionally, let assume that 1,..., N form the elements of a coarse grid mesh, H, with mesh size H. We then dene grid transfer operators between the interface and the coarse grid. R T is an interpolation operator which corresponds to using linear interpolation between two adjacent cross points V j, V k (i.e. adjacent points in H connected by an edge E i ) to dene values on the edge E i. Finally, A H is the Galerkin coarse grid operator A H = RAR T dened on H. With these notations the BPS preconditioner is dened by X M BP S = R T i S ii?1 R i + R T A?1 R: (7) E i It can be interpreted as a generalized block Jacobi preconditioner for the Schur complement system (4) where the block diagonal preconditioning for S V is omitted and a residual correction is used on a coarse grid. The coarse grid term R T A?1 H R allows to incorporate a global coupling between the interfaces. H

6 This global coupling is critical for scalability. In particular, it has been shown in [3] that, when applying the original BPS technique to a uniformly elliptic operator, the preconditioned system has a condition number (M BP S S) = O(1 + log 2 (H=h)); (8) where h is the mesh size. This implies that the condition number depends only weakly on the mesh spacing and on the number of processors. Therefore, such a preconditioner is appropriate for large systems of equations on large processor systems. Similarly to BPS, we consider a class of preconditioners that can be written in a generic way as: where M = M local + M global ; (9) M local is a block diagonal preconditioner with one block for each edge E i. More precisely, we replace S ii in (7) by an approximation ~ Sii computed using a probing technique [5], [4]. M global is also computed using a Galerkin formula but not involving anymore A but S and using dierent coarse spaces and restriction operators. In the rest of this paper, we will dene various preconditioners that only dier in the denition of M global. Our goal is to obtain performance similar to those of the original BPS preconditioner even in presence of anisotropiy or heterogeneity, with a simple algebraic structure and parallel implementation strategy. Let U be the space where the Schur complement matrix is dened and U 0 be a q-dimensional subspace of U. This subspace will be called coarse space. Let R 0 : U! U 0 (10) be a restriction operator which maps full vectors of U into vectors in U 0, and let R T 0 : U 0! U (11) be the transpose of R 0, an extension operator which extends vectors from the coarse space U 0 to full vectors in the ne space U. The Galerkin coarse space operator A 0 = R 0 SR T 0 ; (12) in some way, represents the Schur complement on the coarse space U 0. The global coupling mechanism is introduced by the coarse component of the preconditioner which can thus be dened as M global = R T 0 A?1 0 R 0: (13) The correctness of the operators we build is ensured by using the following lemma: Lemma 1 If the operator R T 0 is of full rank and if S is non-singular, symmetric and positive denite, then the matrix A 0, dened in Equation (12), is non-singular, symmetric and positive denite.

7 The coarse-space preconditioners will only dier in the choice of the coarse space U 0 and the interpolation operator R T 0. For convergence reasons, and similarly to the Neumann-Neumann and Balancing Neumann-Neumann preconditioner [13, 15], R T 0 must be a partition of the unity in U in the sense that 8i qx k=1 R 0 T (i; k) = 1: (14) With these notations and denitions, all the preconditioners presented in the sequel of this paper can be written as follows: M = X E i R T i ~ S?1 ii R i + R T 0 A?1 0 R 0: (15) In the next section, we dene various coarse spaces and restrictions operators which can be used in a very general framework. The coarse spaces are dened by a set of piecewise constant vectors Z k of U that span the subspace U 0. The shape dened by the constant non-zero entries of Z k has inspired the name of the coarse spaces. Although a large number of dierent preconditioners can then be proposed, we restrict our study to ve combinations of coarse spaces and restriction operators, and we discuss them in the remainder of this paper. 3.1 Vertex based coarse space The rst coarse space we consider is similar to the BPS one. Each degree of freedom is associated with one vertex V j, and the basis functions of the coarse space can be dened as follows. Let V k V be a singleton set that contains the index associated with a cross point and (E j ) be (j2jk) the adjacent edges to V k. Let m c denote the number of vertex points then [ ei k = E j [ V k (j2j k) is the set of indices we associate with the cross point V k. Let Z k be dened on B and Z k (i) its i-th component. Then, the vertex based coarse space U 0 can be dened as U 0 = span[z k ]; k = 1; 2; : : : ; m c (16) where Z k (i) = ( 1 if i 2 e Ik ; 0 elsewhere: The set e Ik associated with a cross point V k is depicted in Figure 2. The set of vectors B = fz 1 ; Z 2 ; : : : ; Z mc g forms an ordered basis for the subspace U 0, as these vectors span U 0 by construction and they are linearly independent. For this coarse space, we consider three dierent restriction operators R 0. 3.1.1 Flat restriction operator This operator returns for each set e Ik the weighted sum of values of all the nodes in e Ik. The weights are determined by the inverse of the number of sets e Ik ; k 2 f1; 2; : : : ; m c g, that a given node belongs to. For 2D problem, the weight for the cross points is 1 and for an edge point is 1/2.

8 3.1.2 Linear restriction operator The transpose of this operator, R T 0, is the linear interpolation. When using block Jacobi as local preconditioner combined with the vertex coarse space using this linear restriction operator, the resulting preconditioner is equivalent to the one proposed in [3]. Let A be the matrix dened in Equation (3). Let A V the Galerkin coarse grid operator associated with of A dened by A V = e R0 A e R T 0 ; (17) where R0 e is a restriction operator from to the coarse space U 0. It has been shown [3], [18] that in general for elliptic problems the operator A V is spectrally equivalent to R 0 SR T 0 (18) and for a few cases these coarse operators are even equal. If we have used the approach presented in (17), the construction of the coarse space would have been reduced to some matrix-vector multiplications with A and the factorization of A V. Nevertheless, we deal with problems for which only the spectral equivalence between (17) and (18) is ensured. For this reason, we have preferred to use the Galerkin coarse grid correction with the Schur complement matrix as described in (18). 3.1.3 Operator-dependent restriction operator The origin of the operator-dependent restriction is the operator-dependent transfer operator proposed in the framework of multigrid methods, see [19] and references therein. In [12], the authors proposed an extension of these operators for two-dimensional non-overlapping domain decomposition methods. The general purpose of these operators is to construct from u dened on V an interpolation ~u dened on B that is piecewise linear so that a @x @~u and b@~u are continuous even @y when either a or b in (1) are discontinuous along an edge E i. We omit the computational details, and only notice that such operators - can be constructed by solving one tridiagonal linear system for each E i, which size is the number of nodes on E i ; - reduce to a linear interpolation when a and b are smooth. Figure 2: Points of B where the coordinates of a basis vector of the \vertex" space are dierent from zero.

9 3.2 Subdomain based coarse space With this coarse space, we associate one degree of freedom with each subdomain. Let B be as dened in Equation (6). Let k be a subdomain and @ k its boundary. Then I k = @ k \ B is the set of indices we associate with the domain k. Figure 3 shows the elements of a certain set I k. Let Z k dened on B and Z k (i) its i-th component. Then, the subdomain-based coarse space U 0 can be dened as U 0 = span[z k ]; k = 1; 2; : : : ; N (19) ( 1; if i 2 Ik and where Z k (i) = 0; otherwise: Figure 3: Points of B where the coordinates of a basis vector of the \subdomain" space are dierent from zero. P Notice that for the example depicted in Figure 3, [Z k ] is rank decient. Indeed, if we consider N ~v = i=1 iz i where the i are, in a checker-board pattern, equal to?1 and +1, it is easy to see that ~v = 0. Nevertheless, this rank deciency can be easily removed by discarding one of the vectors of [Z k ]. In this particular situation, the set of vectors B = fz 1 ; Z 2 ; : : : ; Z N?1 g forms an ordered basis for the subspace U 0. The considered restriction operator R 0 returns for each subdomain ( i ) i=1;n?1 the weighted sum of the values at all the nodes on the boundary of that subdomain. The weights are determined by the inverse of the number of subdomains in ( i ) i=1;n?1 each node belongs to. For all the nodes but the ones on @ N (in our particular example) this weight is: 1=2 for the points on an edge and 1=4 for the cross points. Remark 1 Although used in a completely dierent context, this coarse space is similar to the one used in the Balancing Neumann-Neumann preconditioner for Poisson-type problems [14]. We use one basis vector for each subdomain, whereas in Balancing Neumann-Neumann the basis functions are only dened for interior subdomains, because in these subdomains the local Neumann problems are singular.

10 3.3 Edge based coarse space We rene the coarse space based on subdomain and introduce one degree of freedom per interface between two neighboring subdomains, that is, when @ i and @ j share at least one edge of the mesh. Let E k be an edge and V j and V l its adjacent cross points then ^I k = E k [ V j [ V l is the set of indices we associate with the edge E k. Let Z k dened on B and Z k (i) its i-th component. Let m e denote the number of edges E i B, then, the edge based coarse space U 0 can be dened as: U 0 = span[z k ]; k = 1; 2; : : : ; m e (20) ( 1 i 2 ^Ik ; where Z k (i) = 0 otherwise: Figure 4: Points of B where the coordinates of a basis vector of the \edge" space are dierent from zero. The set ^I k associated with an element of the coarse space U 0 is depicted in Figure 4. The set of vectors B = fz 1 ; Z 2 ; : : : ; Z me g forms an ordered basis for the subspace U 0, as before, these vectors span U 0 by construction and they are linearly independent. The considered restriction operator R 0 returns for each edge the weighted sum of the values at all the nodes on that edge. The weights are determined by the inverse of the number of edges each node belongs to. For the decomposition depicted in Figure 1, the weights for the restriction operator are 1 for points belonging to E k and 1=4 for the ones belonging to V l and V j. 4 Parallel implementation The independent solution of local PDE problems expressed by the domain decomposition techniques are particularly suitable for parallel distributed computation. In a parallel distributed memory environment each subdomain can be assigned to a dierent processor. With this mapping, all the numerical kernels but two in the preconditioned conjugate gradient can be implemented either without or with only neighbor-to-neighbor communication. The only two steps that require global communication are the dot product computation and the solution of the coarse problem performed

11 at each iteration. In the sequel, we will describe how the construction of the coarse components of our preconditioners can be performed in parallel with only one reduction. We also will show how the coarse problem solution can be implemented without any extra global communication within the iteration loop. 4.1 Construction of the preconditioner The linear systems associated with any of the coarse spaces described above are much smaller than the linear systems associated with any local Dirichlet problem, which has to be solved when computing the matrix vector product by S. In this respect, we construct the coarse problem in parallel but solve it redundantly on each processor within a preconditioned conjugate gradient iteration. The parallel assembling P of the coarse problem is straightforward thanks to its simple general form A 0 = R 0 SR T N 0 = i=1 R 0S (i) R T O. Here S(i) denotes the contribution of the i th subdomain to the complete Schur complement matrix. Each processor computes the contribution of its subdomain to some entries of A 0 then performs a global sum reduction that assembles on each processor the complete coarse matrix A 0. This latter step can be implemented using a messagepassing functionality like MPI Allreduce. The most expensive part of the construction is the solution of the Dirichlet problems on each subdomain. For each processor, the number of solutions is equal to the number of basis function supports that intercept the boundary of the subdomain the processor is in charge of. For a boxdecomposition of a uniform nite elements or nite dierences mesh, the number of Dirichlet problem solutions to be performed by an internal subdomain is: four for the vertex-based coarse-component, eight for the subdomain based coarse-component (that can reduce to four for a ve point nite dierence scheme as the row in A associated to the cross points is unchanged in S), eight for the edge based coarse-component (that can reduce to four for a ve point nite dierence scheme). Generally on each subdomain, one has to solve a Dirichlet problem with non-homogeneous conditions for each of its edges E j and each of its vertex points V j. 4.2 Application of the preconditioner Having made the choice of a redundant solution of the coarse component on each processor, we can exploit further this formulation to avoid introducing any new global synchronization in the preconditioned conjugate gradient (PCG) iterations. If we unroll Equation (21) from Algorithm 1 using the general denition of the preconditioner, we have z k = ( X E i R T i ~ S?1 ii R i + R T 0 A?1 0 R 0)r k = X E i (R T i ~ S?1 ii R i r k ) + R T 0 A?1 0 R 0r k : (24) Each term of the summation in Equation (24) is computed by one processor with possible one neighbor-to-neighbor communication. Furthermore, the numerator of Equation (22) can also be

12 x (0) = 0; r (0) = b repeat z (k?1) = Mr (k?1) (21) if k = 1 then p (1) = z (0) else (k?1) = z (k?1)t r (k?1) =z (k?2)t r (k?2) (22) p (k) = z (k?1) + (k?1) p (k?1) (23) endif q (k) = Ap (k) (k) = z (k?1)t r (k?1) = p (k)t q (k) x (k) = x (k?1) + (k) p (k) r (k) = r (k?1)? (k) q (k) until convergence Algorithm 1: PCG Algorithm rewritten as (r k ; z k ) = (r k ; Mr k ) = (r k ; ( X E i R T i ~ S?1 ii R i + R T 0 A?1 0 R 0)r k ) = X E i (R i r k ; ~ S?1 ii R ir k ) + (R 0 r k ; A?1 0 R 0r k ): (25) The right-hand side of (25) has two parts. The rst is naturally local because it is related to the diagonal block preconditioner. The second, with the presented formulation, is global but does not require any new global reduction. R 0 r k is actually composed of entries that are calculated in each subdomain (\interface" coarse space) or group of neighboring subdomains (\vertex" and \domain" coarse spaces). After being locally computed, the R 0 r k entries are gathered on all the processors thanks to the reduction used to assemble each local partial dot product (R i r k ; S ~ ii?1 R ir k ). At this stage the solution A?1 0 R 0r k can be performed redundantly on each processor as well as in Equation (22) can be computed by each processor. Rewriting these steps in the iteration loop allows us to introduce the coarse component without any extra global synchronization. With this approach, we avoid a well-known bottleneck when using Krylov methods on parallel distributed memory computers. 5 Numerical experiments We consider the solution of Equation (1) discretized by a ve-point central dierence scheme on an uniform mesh using a preconditioned Schur complement method. We illustrate the numerical

13 scalability of the proposed preconditioners on academic two-dimensional model test cases that have both anisotropy and discontinuity. For all the experiments the convergence is attained when the 2-norm of the residual normalized by the 2-norm of the right-hand side is less than 10?5. All the computations are performed using 64 bit arithmetic. 5.1 Model problems For the numerical experiments, we consider model problems that have both discontinuous and anisotropic phenomena. These diculties arise in the equations involved in semiconductor device simulation that was actually one of the main motivations for this study. Figure 5 represents a unit square divided into six regions with piecewise constant functions g j, j = 1 or 3. We consider the problems as having low intensity if j = 1 and high intensity if j = 3. Let a and b be the functions of the elliptic problem as described in Equation (1). Using this notation, we can dene dierent problems with dierent degrees of diculty. In the following description, the acronyms in capital letters are used to refer to the problems in Tables 2 and 3. high discontinuity (HD): a = b = g 3, low discontinuity (LD): a = b = g 1, high anisotropy (HA): a = 10 3 and b = 1, low anisotropy (LA): a = 10 and b = 1, high discontinuity and high anisotropy (HDA): a = g 3 and b = 1, low discontinuity and low anisotropy (LDA): a = g 1 and b = 1. g j = 10 j g j = 1 g j = 10 j g j = 1 g j = 10 j g j = 1 Figure 5: Denition of two discontinuous functions on, the unit square of IR 2. The preconditioners with the coarse components are denoted in the tables: sd: \subdomain" dened in Section 3.2, vl: \vertex-linear" dened in Section 3.1 with the linear interpolation, vo: \vertex-operator-dependent" dened in Section 3.1.3 with the operator-dependent interpolation, vf: \vertex-at" dened in Section 3.1 with the at interpolation,

14 ed: \edge" dened in Section 3.3, no: \without coarse space" in this case we only use the local preconditioner (block diagonal). 5.2 Numerical behaviour We study the numerical scalability of the preconditioners, by investigating the dependence of the convergence on the number and on the size of the subdomains. Firstly, in Table 1, we give the gures for the ve coarse spaces when solving the Poisson's problem. As we could expect, the behaviour of all coarse-space options does not depend on the number of subdomains. There is only a small growth in the number of iterations for \subdomain", \vertex-at" and \edge", when the number of subdomains goes from 16 to 64. # subdomains 16 64 256 1024 no 15 28 48 90 sd 15 19 19 18 vf 15 18 18 18 vl 10 10 10 10 vo 10 10 10 10 ed 15 18 18 18 Table 1: # PCG iterations varying the number of subdomains with 16 16 points per subdomain for Poisson's problem In Table 2, we report the number of preconditioned conjugate gradient iterations for each model problem. For these tests, we vary the number of subdomains while keeping constant their sizes (i.e. H variable with H constant). In this table each subdomain is a 16 16 grid and h the number of subdomains goes from 16 up to 1024 using a box decomposition; that is 4 4 decomposition up to 32 32 decomposition. In the rst row, we see the growth of the number of iterations of a block Jacobi preconditioner without using any coarse grid correction. Its numerical behaviour is well known and is governed by the following theoretical bound for its condition number (see for instance [6]): cond(m bj S) CH?2 (1 + log 2 (H=h)); (26) where M bj denotes the block Jacobi preconditioner and C is a constant indepedent from H and h. The number of iterations of the block Jacobi preconditioner, reported in the rst row of the tables, doubles successively which is consistent with the theoretical upper bound in (26). For HD and LD the behaviour of all coarse alternatives are similar to the one observed for Poisson's problem in Table 1. For LA and LDA, this similarity is still true for \vertex-linear" and \vertex-operator-dependent", the three others exhibit a slight insignicant increase in the number of iterations. All the preconditioners but \vertex-linear" are quite insensitive to discontinuity. Further, the \vertex-operator-dependent" alternative, specically designed to handle interfaces that cross a discontinuity, has the best performance. For HA, the coarse spaces do not improve the convergence for a number of subdomains less than 1024. It seems that on this example the condition numbers of the preconditioned linear systems with and without the coarse component are comparable, for instance, 2 10 2 with and 6 10 2 without the vertex-linear coarse component using 256 subdomains. More precisely, the smallest eigenvalue is not that aected by the use of the coarse component as it is for the other

15 LA LD LDA # subdomains 16 64 256 1024 16 64 256 1024 16 64 256 1024 no 17 33 59 114 25 47 83 158 29 55 104 194 sd 18 25 27 28 19 19 19 19 22 30 33 34 vf 19 24 29 31 20 21 21 21 23 28 31 32 vl 15 17 17 17 13 13 12 12 14 16 17 17 vo 15 17 17 17 11 11 11 11 14 16 17 17 ed 19 26 27 28 20 20 18 18 21 26 27 28 HA HD HDA # subdomains 16 64 256 1024 16 64 256 1024 16 64 256 1024 no 19 42 69 127 25 50 87 172 37 149 302 629 sd 30 64 75 86 18 19 19 19 30 64 81 83 vf 27 52 72 85 21 22 22 21 31 76 86 99 vl 26 45 66 73 16 18 18 16 21 63 81 89 vo 26 45 66 73 11 11 11 11 20 60 81 88 ed 24 43 57 69 17 19 19 18 31 62 70 77 Table 2: # PCG iterations varying the number of subdomains with 16 16 points per subdomain. model problems. In the presence of high anisotropy (HA and HDA), the convergence rate of all the alternatives is comparable and depends on the number of subdomains, while an asymptotic behaviour tends to appear when the number of subdomains increases. To study the sensitivity of the preconditioners to the size of the subdomains (i.e. H h variable with H constant), we report in Table 3, the experiments observed with 256 subdomains (1616 box decomposition) when the size of the subdomains varies from 88 up to 3232. We observe that the convergence of all the preconditioners depend slightly on the size of the subdomains. Furthermore, in the anisotropic experiments (HA and HDA), this dependence is surprisingly negligible for the \vertex-linear" and for the \vertex-operator-dependent" alternatives. The number of iterations of those two preconditioners tends to be stable around 64 and 80 for the problems HA and HDA, respectively. On problems that are not highly anisotropic, all the coarse-components give rise to preconditioners that are independent of the number of subdomains and that have a weak dependence on the size of the subdomains. Furthermore, those experiments tend to show that the most dominating component is not the granularity of the coarse-space (the nest is not the best) but the restriction/interpolation operator R 0. This operator governs, in most cases, the quality of the coarse representation of the complete equation. The only example that seems to be in contradiction with this observation is \edge" on the HA and HDA examples. However it could be argued that, because we consider the anisotropy aligned with the discretization and because we use regular box decompositions, two opposite edges E i of a subdomain are strongly coupled. The \edge" coarse space captures this strong coupling while the other alternatives mix, therefore miss, this information. This latter behavior is related to the fact that the supports of the basis functions of all coarse spaces, but \edge", contain at least two weakly coupled edges. So, the transfer operators are not able, in this specic case, to retrieve and to spread the most appropriate information.

16 LA LD LDA subdomain size 64 256 1024 4096 64 256 1024 4096 64 256 1024 4096 no 66 69 78 96 73 83 106 133 97 104 119 150 sd 30 27 36 42 16 19 23 30 29 33 36 45 vf 25 29 32 35 18 21 24 31 27 31 34 40 vl 15 17 19 21 12 14 15 19 15 18 19 22 vo 15 17 19 21 9 11 12 16 15 17 19 22 ed 24 27 32 34 16 18 22 29 24 27 31 36 HA HD HDA subdomain size 64 256 1024 4096 64 256 1024 4096 64 256 1024 4096 no 66 69 73 76 78 87 116 141 280 302 297 389 sd 65 75 76 76 17 19 23 31 65 81 87 96 vf 66 72 75 76 20 22 25 31 80 86 89 91 vl 60 64 64 63 16 18 18 23 79 81 80 77 vo 60 66 64 63 10 11 13 16 77 81 79 80 ed 51 57 59 63 16 19 22 29 63 70 79 86 Table 3: # PCG iterations varying the grid size of the subdomains from (8 8) up-to (64 64) using a (1616) decomposition. 5.3 Parallel behaviour We investigate the parallel scalability of the proposed implementation of the preconditioners. For each experiment, we map one subdomain on each processor of the parallel computer. In the sequel, the number of subdomains and the number of processors will be always the same. The target computer is a 128-node T3D located at CERFACS, using MPI as message passing library. The solution of the local Dirichlet problem is performed using either the sparse direct solver MA27 [9] from the Harwell Subroutine Library [2] or a skyline [11] solver. The factorization of the band probed matrices, used in the local part of the preconditioners (see Equation (15)) is performed using a LAPACK [1] band solver. To study the parallel behaviour of the code, we report the maximum elapsed time (in seconds) spent by one of the processors in each of the main steps of the domain decomposition method when the number of processors is varied for solving the standard Poisson's equation. The rst row, entitled \init.", corresponds mainly to the time for factorizing the matrix associated with the local Dirichlet problems; \setup local" is the time to construct and factorize the probing approximations ~S ii ; \setup coarse" is the time required to construct and factorize the matrix associated with the coarse problem; \iter" is the time spent in the iteration loop of the preconditioned conjugate gradient. Finally, the row \total" permits to evaluate the parallel scalability of the complete methods (i.e. numerical behaviour and parallel implementation), while \time per iter." only illustrates the scalability of the parallel implementation of the preconditioned conjugate gradient iterations. The elapsed time corresponds to a maximum and there is some unbalance among the processors in dierent kernels. Therefore the reported total time diers from the sum of the time for each individual kernel. For each number of processors, we give in the left column the results with the considered twolevel preconditioner and in the right column we show the results with only the local part of the preconditioner. We report experiments with the domain-based coarse space in Table 4. Results with the vertex-based coarse space are displayed in Table 5. For those experiments, we use MA27 to solve

17 # procs 4 8 16 32 64 128 init. 2.58 2.58 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 setup local 0.99 0.80 1.00 1.01 1.40 1.31 1.40 1.30 1.40 1.31 1.40 1.32 setup coarse 0.25 0.00 0.48 0.00 0.86 0.00 0.85 0.00 0.87 0.00 0.93 0.00 iter. 1.84 1.98 2.55 3.93 3.01 5.14 4.12 7.16 3.79 9.80 4.91 13.26 total 5.33 5.65 6.23 7.26 7.14 8.50 8.25 10.51 7.93 13.13 9.14 16.60 # iter. 16 20 22 33 26 41 35 58 32 80 40 109 time per iter. 0.12 0.12 0.12 0.12 0.12 0.13 0.12 0.12 0.12 0.12 0.12 0.12 Table 4: Poisson-MA27 Elapsed time in each main numerical step varying the number of processors with 100 100 points per subdomain using the domain based coarse space # procs 4 8 16 32 64 128 init. 2.58 2.58 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 2.57 setup local 0.66 0.80 0.94 1.01 1.24 1.31 1.24 1.30 1.24 1.31 1.25 1.32 setup coarse 0.72 0.00 0.74 0.00 0.90 0.00 0.90 0.00 0.92 0.00 1.07 0.00 iter. 1.85 2.31 1.97 3.93 2.10 5.14 2.36 7.16 2.03 9.80 2.45 13.26 total 5.61 5.65 6.09 7.26 6.65 8.50 6.91 10.51 6.59 13.13 7.16 16.60 # iter. 16 20 17 33 18 41 20 58 17 80 20 109 time per iter. 0.12 0.12 0.12 0.12 0.12 0.13 0.12 0.12 0.12 0.12 0.12 0.12 Table 5: Poisson-MA27 Elapsed time in each main numerical step varying the number of processors with 100 100 points per subdomain using the vertex based coarse space the local Dirichlet problems dened on 100 100 grids. That subdomain size was the largest we could use according to the 128 MB memory available on each node of the target computer. We can rst observe that the numerical behaviour of those preconditioners is again independent from the number of subdomains. It can be seen that the parallel implementation of the Schur complement method with only a local preconditioner scales perfectly as the time per iterations is constant and does not depend on the number of processors (i.e. 0.115 seconds on 4 processors and 0.118 on 128 nodes). The above scalable behavior is also observed when the coarse components, vertex or subdomain, are introduced. For instance, with the vertex-based preconditioner, the time per iteration grows from 0.116 seconds on 4 processors up to 0.122 seconds on 128 processors. There are two main reasons for this scalable behaviour. First, the solution of the coarse problems is negligible compared to the solution of the local Dirichlet problems. Second, the parallel implementation of the coarse components does not introduce any extra global communication. In any case the methods scale fairly well, when the number of processors grows from 8 (to solve a problem with 80 000 unknowns) up to 128 (to solve a problem with 1.28 million unknowns). The ratios between the total elapsed time expended for running on 128 and on 8 processors are 1.18, with the vertex-based coarse preconditioner, and 1.47, with the domain-based one. That latter larger value is only due to an increase of the number of iterations. One of the most expensive kernels of this method is the factorization of the local Dirichlet problems. Therefore, the tremendous reduction in the number of iterations induced by the use of the coarse alternatives - ve times less iterations for the vertex-based preconditioner - is not reected directly on a reduction of the total time. The total time is an ane function of the number of iterations with an incompressible overhead due to the factorization at the very beginning of the

18 # procs 4 8 16 32 64 128 init. 2.05 2.05 2.05 2.05 2.05 2.05 2.05 2.05 2.05 2.05 2.05 2.05 setup local 0.79 0.82 1.10 1.14 1.39 1.49 1.39 1.50 1.39 1.49 1.40 1.49 setup coarse 0.49 0.00 0.83 0.00 0.98 0.00 0.98 0.00 1.00 0.00 1.14 0.00 iter. 2.06 2.60 2.26 4.37 2.43 5.83 2.66 8.07 2.31 10.41 2.80 14.38 total 5.45 5.58 6.31 7.67 6.91 9.43 7.15 11.67 6.81 14.02 7.43 17.98 # iter. 15 19 16 31 17 41 19 58 16 73 19 101 time per iter. 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.15 0.14 Table 6: Poisson-Skyline Elapsed time in each main numerical step varying the number of processors with 80 80 points per subdomain using the vertex based coarse space domain decomposition method. Nevertheless, if we use a less ecient local solver, that will slow down the iteration time, the gap between the solution time with and without the coarse component would increase. To illustrate this behaviour, we display in Table 6 the parallel performance of the vertex-based coarse preconditioner, where we replace MA27 by a skyline solver. The size of the subdomains is smaller than the size used for testing with MA27 because the skyline solver is more memory-consuming than MA27 and 80 80 is the biggest size that ts in the memory of the computer. 6 Concluding remarks We have presented a set of new two-level preconditioners for Schur complement domain decomposition methods in two dimensions. The denition of the coarse space components is algebraic. They are dened using the mesh partitioning information and simple interpolation operators that follow a partition of unity principle. We have illustrated their numerical behaviour on a set of two-dimensional model problems that have both anisotropy and discontinuity. Those experiments tend to show that the most dominating component is not the the granularity of the coarse-space (the nest is not the best) but the restriction/interpolation operator R 0. This operator governs, in most cases, the quality of the coarse representation of the complete equation. The experiments have been performed on regular meshes but there is no limitation for the implementation of the proposed two-level preconditioners on unstructured grids, whereas the possible rank deency, that appears in the domain-coarse alternative, could be more tricky to discard. Those numerical methods are targeted for parallel distributed memory computers. In this respect, we have proposed a message passing implementation that does not require any new global synchronization in the preconditioned conjugate gradient iterations, which is a well-known bottleneck for Krylov methods in distributed memory environments. Finally, we illustrated that the numerical scalability of the preconditioners combined with the parallel scalability of the implementation result in a set of parallel scalable numerical methods. References [1] E. Anderson, Z. Bai, C. Bischof, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, S. Oustrouchov, and D. Sorensen. LAPACK - Users' Guide. SIAM, Philadelphia, 2nd edition, 1995.

19 [2] Anon. Harwell Subroutine Library. A Catalogue of Subroutines (Release 11). Theoretical Studies Department, AEA Industrial Technology, 1993. [3] J.H. Bramble, J.E. Pasciak, and A.H. Schatz. The construction of preconditioners for elliptic problems by substructuring I. Math. Comp., 47(175):103{134, 1986. [4] L.M. Carvalho. Preconditioned Schur complement methods in distributed memory environments. PhD thesis, INPT/CERFACS, France, October 1997. TH/PA/97/41, CERFACS. [5] T. F. Chan and T.P. Mathew. The interface probing technique in domain decomposition. SIAM J. Matrix Analysis and Applications, 13, 1992. [6] T.F. Chan and T.P. Mathew. Domain Decomposition Algorithms, volume 3 of Acta Numerica, pages 61{143. Cambridge University Press, Cambridge, 1994. [7] M. Dryja, B.F. Smith, and O.B. Widlund. Schwarz analysis of iterative substructuring algorithms for elliptic problems in three dimensions. SIAM J. Numer. Anal., 31(6):1662{1694, 1993. [8] I.S. Du and J.K. Reid. MA27 { A set of Fortran subroutines for solving sparse symmetric sets of linear equations. Technical Report AERE R10533, Rutherford Appleton Laboratory, London, 1982. [9] I.S. Du and J.K. Reid. The multifrontal solution of indenite sparse symmetric linear systems. ACM Trans. on Math. Soft., 9:302{325, 1983. [10] C. Farhat and F.-X. Roux. A method of nite element tearing and interconnecting and its parallel solution algorithm. Int. J. Numer. Meth. Engng., 32:1205{1227, 1991. [11] A. George and J.W. Liu. Computer solution of large sparse positive denite systems. Prentice- Hall series in Computational Mathematics, Englewood Clis, 1981. [12] L. Giraud and R. Tuminaro. Grid transfer operators for highly variable coecient problems. Technical Report TR/PA/93/37, CERFACS, Toulouse, France, 1993. [13] P. Le Tallec. Domain decomposition methods in computational mechanics, volume 1 of Computational Mechanics Advances, pages 121{220. North-Holland, 1994. [14] J. Mandel. Balancing domain decomposition. Communications in Numerical Methods in Engineering, 9:233{241, 1993. [15] J. Mandel and M. Brezina. Balancing domain decomposition: Theory and computations in two and three dimensions. Technical Report UCD/CCM 2, Center for Computational Mathematics, University of Colorado at Denver, 1993. [16] J. Mandel and R. Tezaur. Convergence of substructuring method with Lagrange multipliers. Numer. Math., 73:473{487, 1996. [17] B.F. Smith. Domain Decomposition Algorithms for the Partial Dierential Equations of Linear Elasticity. PhD thesis, Courant Institute of Mathematical Sciences, September 1990. Tech. Rep. 517, Department of Computer Science, Courant Institute. [18] B.F. Smith, P. Bjrstad, and W. Gropp. Domain Decomposition, Parallel Multilevel Methods for Elliptic Partial Dierential Equations. Cambridge University Press, New York, 1st edition, 1996. [19] P. Wesseling. An Introduction to Multigrid Methods. Wiley, West Sussex, 1992.