Basic HTML version of Foils prepared September 13 1998

Foil 67 Example: Red-black iteration

From Computing on the Pragmatic Object Web EuroPar Invited Presentation -- September 4 1998. by Geoffrey C. Fox


1 Procs p = new Procs2(NP, NP) ;
2 on(p) {
3 Range x = new BlockRange(N, p.dim(0), 1) ; // ghost width 1
4 Range y = new BlockRange(N, p.dim(1), 1) ; // ...
5 float [[,]] u = new float [[x, y]] ;
6 for(int parity = 0 ; parity < 2 ; parity++) { // red and black
7 Adlib.writeHalo(u, widths) ; // Communicate Ghost Cells
8
9 overall(i = x [1 : N - 2])
10 overall(j = y [1 + (x.idx(i) + parity) % 2 : N - 2 : 2])
11 u [i, j] = 0.25 * (u [i - 1, j] + u [i + 1, j] +
12 u [i, j - 1] + u [i, j + 1]) ;
13 }
14 }

in Table To:


© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Sun Sep 13 1998