[ET Trac] [Einstein Toolkit] #970: CarpetLib::barriers fails with multipatch
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Sun Jul 1 14:38:39 CDT 2012
#970: CarpetLib::barriers fails with multipatch
--------------------+-------------------------------------------------------
Reporter: rhaas | Owner: eschnett
Type: defect | Status: new
Priority: minor | Milestone:
Component: Carpet | Version:
Keywords: |
--------------------+-------------------------------------------------------
This happens during the initial storage allocation where there are
mismatching barriers in dh::add and gdata::gdata. The underlying reason
seems to be that Carpet/StorageCrease has a loop (schematically) around
line 93 of Storage.cc.
{{
for(m=0;m<maps;++m)
new gf<T> // (which calls dh::add)
arrdata.AT(group).AT(m).data.AT(var)->set_timelevels // which eventually
call gdata::gdata
}}
this causes the a barrier error when on process owns a component on map 0
but another does only onwn a component on map 1, since in this case the
first one will encounter the barriers as:
dhd::add (map 0)
gdata::gdata (component on map 0)
dh::add (map 1)
while the other process sees:
dhd::add (map 0)
gdata::gdata (component on map 0)
dh::add (map 1)
The actual error is then (where there are some extra printf() lines that I
added):
{{{
INFO (Carpet): [tl=0] Starting initialisation
INFO (Carpet): [tl=0] GroupStorageIncrease
INFO (Carpet): [tl=0] ADMBASE::SHIFT_STATE: increase to 1
dh::add added varindex 0: shift_state
CHECKPOINT: processor 16, file
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dh.cc, line
2176
Adding varindex 0: shift_state
INFO (Carpet): [tl=0] ADMBASE::DTLAPSE_STATE: increase to 1
dh::add added varindex 1: dtlapse_state
CHECKPOINT: processor 16, file
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dh.cc, line
2176
Adding varindex 1: dtlapse_state
INFO (Carpet): [tl=0] ADMBASE::DTSHIFT_STATE: increase to 1
dh::add added varindex 2: dtshift_state
CHECKPOINT: processor 16, file
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dh.cc, line
2176
Adding varindex 2: dtshift_state
INFO (Carpet): [tl=0] ADMBASE::LAPSE: increase to 1
dh::add added varindex 15: alp
CHECKPOINT: processor 16, file
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dh.cc, line
2176
dh::add added varindex 15: alp
CHECKPOINT: processor 16, file
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dh.cc, line
2176
WARNING level 0 in thorn CarpetLib processor 16 host
c305-212.ls4.tacc.utexas.edu
(line 251 of
/work/00945/rhaas/Zelmani/arrangements/Carpet/CarpetLib/src/dist.cc):
-> Wrong id for Barrier "CarpetLib::dist::checkpoint": expected
506880075d, found 783988953d
}}}
This like something that is rather hard to fix generally for little
benefit (ie. it affects only debugging runs with multipatch). Should this
even be reported (if only so that there is official notice that this is
known behaviour)? Should the fix be just a warning if Carpet encounters
this situation?
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/970>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list