Assigning to internal guards
Richard Guenther
rguenth at tat.physik.uni-tuebingen.de
Wed Sep 25 09:50:36 UTC 2002
Hi!
I'd like to have internal guards computated rather than communicated in
simple cases like
x.all() = 1.0;
or even
x(I) = a(I) + b(I);
so after the operation a x.fillGuards() will do nothing (is this
equivalent to having the dirty flag cleared after the operation or is the
dirty flag overloaded as I think with the handling of relations?).
I can achieve at least the assignment by creating a special layout for x
which contains overlapping patches with no guards, but I get extra
communication of guards at other places then which I dont really
understand. The layout is created using a custom partition based on grid
partition
OGridPartition<1>:
blocks_m = [4]
internalGuards_m:
upper 1
lower 1
num_m = 4
grid_m = (empty)
the resulting layout is
GridLayout 1 on global domain [-1:65:1]:
Total subdomains: 4
Local subdomains: 2
Remote subdomains: 2
Grid blocks: [4]
Global subdomain = {[-1:16:1]: allocated=[-1:16:1], con=0, aff=0, gid=0,
lid=0}
Global subdomain = {[15:32:1]: allocated=[15:32:1], con=0, aff=0, gid=1,
lid=1}
Global subdomain = {[31:48:1]: allocated=[31:48:1], con=1, aff=-1,
gid=2, lid=-1}
Global subdomain = {[47:65:1]: allocated=[47:65:1], con=1, aff=-1,
gid=3, lid=-1}
Local subdomain = {[-1:16:1]: allocated=[-1:16:1], con=0, aff=0, gid=0,
lid=0}
Local subdomain = {[15:32:1]: allocated=[15:32:1], con=0, aff=0, gid=1,
lid=1}
Remote subdomain = {[31:48:1]: allocated=[31:48:1], con=1, aff=-1,
gid=2, lid=-1}
Remote subdomain = {[47:65:1]: allocated=[47:65:1], con=1, aff=-1,
gid=3, lid=-1}
hasInternalGuards_m, hasExternalGuards_m 0 0
internalGuards_m 0-0
externalGuards_m 0-0
gcFillList_m
Anyone with other/better ideas to reduce communication? I'm still unable
to find where the computation domain for the patches is computed and the
dirty flag is handled - it semms to be spread over the whole code...
Any hints?
Thanks, Richard.
--
Richard Guenther <richard.guenther at uni-tuebingen.de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/
The GLAME Project: http://www.glame.de/
More information about the pooma-dev
mailing list