Next: 5.4.4 Parallel algorithms
Up: 5.4 Gauß-Seidel iteration
Previous: 5.4.2 Data flow of
  Contents
5.4.3 Red-Black-Gauß-Seidel iteration
To get rid of
the unfavorable properties with respect to the data flow
we have to split the subscripts of the vector into (at least) two
adjoint subsets
und
so that
(resp.
) holds, i.e.,
there is no coupling between elements of the subsets.
Now, we reformulate the update step in Alg. 5.7 into
The proper data flow is presented in Fig. 5.3.
Figure 5.3:
Data flow in Red-Black-Gauß-Seidel forward iteration
 |
Because of the decoupling property within the
subsets of ''red'' and ''black'' data, Alg. 5.8
can be parallelized.
This pointwise red/black splitting can be applied to a 5-point-stencil
discretization in 2D and also to a 7-point stencil discretization
in 3D.
For the target of parallelization a block version of the iteration above
is recommended. The blocks should be chosen in such a way that the
update of blocks of one color requires no communication.
This yields to a checkerboard coloring of the unit square
coinciding with the adjoint data distribution in 4.3.2
(again, 2 colors are sufficient if a 5-point-stencil is used).
Next: 5.4.4 Parallel algorithms
Up: 5.4 Gauß-Seidel iteration
Previous: 5.4.2 Data flow of
  Contents
Gundolf Haase
2000-03-20