[ET Trac] [Einstein Toolkit] #1065: Pass CCTK_ARGUMENTS more efficiently in Fortran
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Fri Sep 7 07:18:55 CDT 2012
#1065: Pass CCTK_ARGUMENTS more efficiently in Fortran
--------------------------+-------------------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: Other | Version:
Resolution: | Keywords:
--------------------------+-------------------------------------------------
Comment (by rhaas):
I did some experiments with Cray pointers on my own and found that adding
{{{
CCTK_REAL, DIMENSION(cctk_lsh(1),cctk_lsh(2),cctk_lsh(3)) ::
evolution_mask
CCTK_POINTER_TO_CONST :: evolution_mask_ptr
pointer (evolution_mask_ptr, evolution_mask)
}}}
to
EinsteinEvolve/GRHydro/src/GRHydro_Con2Prim.F90/check_GRHydro_C2P_failed
around line 2238 leads to an internal compiler error with intel ifort 11.1
20100414
{{{
COMPILING arrangements/Zelmani/GRHydro/src/GRHydro_Con2Prim.F90
0_1855
: catastrophic error: **Internal compiler error: internal abort** Please
report this error along with the circumstances in which it occurred in a
Software Problem Report. Note: File and line given may not be explicit
cause of this error.
in file arrangements/Zelmani/GRHydro/src/GRHydro_Con2Prim.F90, line 2220,
column 12
compilation aborted for configs/bns_all/build/GRHydro/GRHydro_Con2Prim.f90
(code 3)
}}}
Note that I do not actually access the pointer at all. The ICE goes away
if I comment out the OpenMP pragmas further down in the routine or if
instead of cctk_lsh(1...2) I hard-code the pointee dimensions (say to
1,2,3 which of course is wrong).
So unless a workaround is found or CCTK_ARGUMENTS somehow does not trigger
this then using Cray pointers (while a good idea I think) is not possible
right now.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1065#comment:1>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list