Basic HTML version of Foils prepared
August 7 98
Foil 29 Irregular Mesh:
Partitioning & Communication
From
DoD HPF Training -- 5. Parallel Programming in HPF DoD Training and Others --
1995-98
.
by
Chuck Koelbel -- Rice University
Each iteration of the relaxation uses all the data computed in the previous step, and the edge array
No parallelism at this level
(Does this sound familiar?)
Instead, use the data-parallel edge and node updates
flux(i)=(x(iedge(i,1))-x(iedge(i,2)))/2
Independent because edge_val ‚ node_val
x(iedge(i,1)) = x(iedge(i,1)) - flux(i);
x(iedge(i,2)) = x(iedge(i,2)) + flux(i)
Not independent because sometimes iedge(iY,1) = iedge(iX,2)
Fortunately, HPF provides the SUM_SCATTER function
Communication needed in both stages
Between edges and nodes to compute flux
Edge-node and node-node to compute x
All communication is static, local with respect to grid, but unstructured with respect to array indices
©
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 Aug 16 1998