a¦

puted from the successive columns of , which can be generated, used, and discarded.

¥

¦

As a result, the matrix need not be stored.

¥

¦

VcbY CXU 8 S9 RIb3WI5¤eGE¤hf @ qC¥

§ 2 ¡3¢6

2 ¡ TU

H Y HP U W

T

Bfa Pe

Column-oriented algorithms consist of minimizing the individual objective functions

(10.47) separately. Each minimization can be performed by taking a sparse initial guess

®

and solving approximately the parallel linear subproblems

qWF v0¥ £

¦¥ ‘)

®s% DBD% H % G n¥

±U % ¬¬¬

with a few steps of a nonsymmetric descent-type method, such as MR or GMRES. If these

linear systems were solved (approximately) without taking advantage of sparsity, the cost

«® ®

of constructing the preconditioner would be of order . That is because each of the

@

o®

columns would require operations. Such a cost would become unacceptable for large

a `

linear systems. To avoid this, the iterations must be performed in sparse-sparse mode, a

±

term which was already introduced in Section 10.4.5. The column and the subsequent

iterates in the MR algorithm must be stored and operated on as sparse vectors. The Arnoldi

basis in the GMRES algorithm are now to be kept in sparse format. Inner products and

vector updates involve pairs of sparse vectors.

®

In the following MR algorithm, iterations are used to solve (10.51) approximately

S

for each column, giving an approximation to the -th column of the inverse of . Each ¥

¡

±

initial is taken from the columns of an initial guess, .

’ ”8 ” ’ ¤ %©Y¡Y"¡ $ "p ‚ r ¦¨¥

$ © § © ©8¥ ’ §§ Q£

§¢

¡¡© &

$

¢

¡

% ' 0 ¦ ! 0

I!"2 05§"0§ ¡w¤h¨ n¦ ¤ £¢ ¨ %D ¨0 •

•© ¨0

¦¢

2 ¢ ¢ % ! © £

£

¥ ¡

£

¤(¡

¡

1. Start: set

s®%„D¬BB% G n¥

¬¬

2. For each column Do:

¡¢ ±

3. De¬ne

S s% B¬BD% ª

®¬¬

4. For Do:

¨ G C

E ¡± ¢ @ ¡ ¢ 8

5.

E ¡ ¢ C¡ ¢ 8

6.

C @ C w A±@ ±

7.

±

8. Apply numerical dropping to

9. EndDo

10. EndDo

C

The algorithm computes the current residual and then minimizes the residual norm

« Da C

w

o±(f¨ §

` §

, with respect to . The resulting column is then pruned by applying

the numerical dropping step in line 8.

In the sparse implementation of MR and GMRES, the matrix-vector product, SAXPY,

and dot product kernels now all involve sparse vectors. The matrix-vector product is much

more ef¬cient if the sparse matrix is stored by columns, since all the entries do not need

to be traversed. Ef¬cient codes for all these kernels may be constructed which utilize a full

® -length work vector.

¡

Columns from an initial guess for the approximate inverse are used as the initial

guesses for the iterative solution of the linear subproblems. There are two obvious choices:

˜ ¡

8

¡ ˜ ¨ 8

U ¡

and . The scale factor is chosen to minimize the norm of .

| ¡

Thus, the initial guess is of the form where is either the identity or . The ¦ ¦

optimal can be computed using the formula (10.49), in which is to be replaced by ¤

˜ x x

˜

the identity, so . The identity initial guess is less expensive to

¦ `

a a ¥ ` ¥ `

a¦ ¦

¡

use but is sometimes a much better initial guess. For this choice, the initial

¡

preconditioned system is SPD.

The linear systems needed to solve when generating each column of the approximate

inverse may themselves be preconditioned with the most recent version of the precondi-

¡

tioning matrix . Thus, each system (10.51) for approximating column may be pre- ¥

¡ ¡

¥

¨ ±

conditioned with where the ¬rst columns of are the that already have

¨ ¨

G

² ±

been computed, , and the remaining columns are the initial guesses for the ,

©3

¥