- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
I am facing with a SIGSEGV that is "terrible" because I cannot reproduce always, sometimes occurs sometimes not and in any case the results are not as expected even when the SIGSEGV occurs.
In the following there is the complete test that I am playing with
module classes implicit none private public :: wrapped_coarray type :: wrapped_point integer, allocatable :: point(:) contains procedure :: add => wrapped_point_add end type wrapped_point type :: wrapped_coarray type(wrapped_point), allocatable :: caf(:)[:] end type wrapped_coarray contains subroutine wrapped_point_add(self, to_add) class(wrapped_point), intent(inout) :: self integer, intent(in) :: to_add integer, allocatable :: point(:) integer :: points_number if (allocated(self%point)) then points_number = size(self%point, dim=1) allocate(point(1:points_number+1)) point(1:points_number) = self%point point(points_number+1) = to_add call move_alloc(from=point, to=self%point) else allocate(self%point(1)) point(1) = to_add end if end subroutine wrapped_point_add end module classes program test use classes implicit none type(wrapped_coarray) :: foo allocate(foo%caf(99)
Essentially, I have a "wrapped" coarray member, namely "caf", that is, in turn, a wrapper of an allocatable integer array, namely "point".
The very kind Michael Siehl has already pointed me to a good paper of Aleksandar Donev, see http://caf.rice.edu/documentation/Aleksandar-Donev-Coarray-Rationale-N1702-2007-09.pdf ;
To my understanding the above test should be conforming:
1. "foo" is a scalar non allocatable;
2. the "caf" member is allocated, thus an implicit synchronization should happen; by the way, adding an explicit "sync all" after the allocation does not produce any changes.
Currently, I am sticking on only Intel Fortran 17.0.1.
I compile the test with
ifort -coarray -debug -check -warn -traceback -standard-semantics test.f90
To speedup my test, I on-the-fly modify my shell envs with:
export FOR_COARRAY_NUM_IMAGES=2
The SIGSEV (when occurs), generates the following output
---log
a.out
forrtl: severe (174): SIGSEGV, segmentation fault occurred
In coarray image 1
Image PC Routine Line Source
a.out 000000000047ECB1 Unknown Unknown Unknown
a.out 000000000047CDEB Unknown Unknown Unknown
a.out 000000000042DCF4 Unknown Unknown Unknown
a.out 000000000042DB06 Unknown Unknown Unknown
a.out 0000000000407359 Unknown Unknown Unknown
a.out 000000000040A926 Unknown Unknown Unknown
libpthread-2.24.s 00002B073ED40080 Unknown Unknown Unknown
a.out 00000000004051AB MAIN__ 43 test.f90
a.out 0000000000403D2E Unknown Unknown Unknown
libc-2.24.so 00002B073F170291 __libc_start_main Unknown Unknown
a.out 0000000000403C2A Unknown Unknown Unknown
application called MPI_Abort(comm=0x84000004, 3) - process 0
forrtl: severe (174): SIGSEGV, segmentation fault occurred
In coarray image 2
Image PC Routine Line Source
a.out 000000000047ECB1 Unknown Unknown Unknown
a.out 000000000047CDEB Unknown Unknown Unknown
a.out 000000000042DCF4 Unknown Unknown Unknown
a.out 000000000042DB06 Unknown Unknown Unknown
a.out 0000000000407359 Unknown Unknown Unknown
a.out 000000000040A926 Unknown Unknown Unknown
libpthread-2.24.s 00002B9DA38EC080 Unknown Unknown Unknown
a.out 00000000004051AB MAIN__ 43 test.f90
a.out 0000000000403D2E Unknown Unknown Unknown
libc-2.24.so 00002B9DA3D1C291 __libc_start_main Unknown Unknown
a.out 0000000000403C2A Unknown Unknown Unknown
application called MPI_Abort(comm=0x84000002, 3) - process 1
---end log
When the SIGSEV does not occur no output is produced, namely the line 44 is not executed (I think). The SIGSEV occurs un the calling of "add" procedure, even if the procedure does not contain nothing (all commented).
Can you tell me:
1. is the test standard conforming?
2. if it is, does Intel v 17.0.1 support such a coarray components?
Thank you in advance for any help!
My best regards.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This has been escalated as issue DPD200416083. As we get more information about the investigation, this thread will be updated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Steve,
you are great, thank you very much!
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page