- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ifort version 10.1
Compile flags core2 -i4 -r8 -stand f03 -vec-report0 -mcmodel=medium -shared-intel -heap-arrays 1 -warn none -g -traceback -fno-inline-functions -check all -warn declarations -warn unused
Im working with a big, Fortran, mpi program. It works great when compiled with 11.1, but dies when compiled with 10.1. It needs to be run with both, so Im looking for a work-around or compiler options.
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
myprograma.x.stat 0000000000E12924 Unknown Unknown Unknown
After much debugging, have narrowed it down to the below line. Note: this line executes just fine for some test cases even with 10.1.
read(File%UNIT, POS=FilePos) TBlock
TBlock(:,:) is complex(8), allocatable, and has just been allocated to a not-too-large size (less than 100x100).
FilePos is integer(8), passed in as intent(In)
File%Unit is integer
File is passed in as intent(InOut)
Any help greatly appreciated.
Laura
Compile flags core2 -i4 -r8 -stand f03 -vec-report0 -mcmodel=medium -shared-intel -heap-arrays 1 -warn none -g -traceback -fno-inline-functions -check all -warn declarations -warn unused
Im working with a big, Fortran, mpi program. It works great when compiled with 11.1, but dies when compiled with 10.1. It needs to be run with both, so Im looking for a work-around or compiler options.
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
myprograma.x.stat 0000000000E12924 Unknown Unknown Unknown
After much debugging, have narrowed it down to the below line. Note: this line executes just fine for some test cases even with 10.1.
read(File%UNIT, POS=FilePos) TBlock
TBlock(:,:) is complex(8), allocatable, and has just been allocated to a not-too-large size (less than 100x100).
FilePos is integer(8), passed in as intent(In)
File%Unit is integer
File is passed in as intent(InOut)
Any help greatly appreciated.
Laura
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you must use ifort 10.1, check that you are using the final update.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - lrcs
Ifort version 10.1
Compile flags core2 -i4 -r8 -stand f03 -vec-report0 -mcmodel=medium -shared-intel -heap-arrays 1 -warn none -g -traceback -fno-inline-functions -check all -warn declarations -warn unused
Im working with a big, Fortran, mpi program. It works great when compiled with 11.1, but dies when compiled with 10.1. It needs to be run with both, so Im looking for a work-around or compiler options.
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
myprograma.x.stat 0000000000E12924 Unknown Unknown Unknown
After much debugging, have narrowed it down to the below line. Note: this line executes just fine for some test cases even with 10.1.
read(File%UNIT, POS=FilePos) TBlock
TBlock(:,:) is complex(8), allocatable, and has just been allocated to a not-too-large size (less than 100x100).
FilePos is integer(8), passed in as intent(In)
File%Unit is integer
File is passed in as intent(InOut)
Any help greatly appreciated.
Laura
Compile flags core2 -i4 -r8 -stand f03 -vec-report0 -mcmodel=medium -shared-intel -heap-arrays 1 -warn none -g -traceback -fno-inline-functions -check all -warn declarations -warn unused
Im working with a big, Fortran, mpi program. It works great when compiled with 11.1, but dies when compiled with 10.1. It needs to be run with both, so Im looking for a work-around or compiler options.
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
myprograma.x.stat 0000000000E12924 Unknown Unknown Unknown
After much debugging, have narrowed it down to the below line. Note: this line executes just fine for some test cases even with 10.1.
read(File%UNIT, POS=FilePos) TBlock
TBlock(:,:) is complex(8), allocatable, and has just been allocated to a not-too-large size (less than 100x100).
FilePos is integer(8), passed in as intent(In)
File%Unit is integer
File is passed in as intent(InOut)
Any help greatly appreciated.
Laura
Laura,
First, for -g -traceback to work, you must also link with ifort using these options. This may help confirm the source line where the segv is occurring.
And just to be sure, sometimes mpiexec or mpirun job launching does not inherit the environment from the shell invoking the mpi run (although most modern MPICH/MVAPICH/OpenMPI handle this well, older versions were not so good about preserving env vars). Do you put the appropriate 'source /opt/intel/fce/10.1.0xx/bin/ifortvars.sh' in your .profile or .bashrc file for the 10.1 executable run? Or if you use LSF, PBS, or some other batch system, do you put the 'source ...' line in the batch script?
The fact that 11.1 works and 10.1 doesn't has me thinking that you may be hitting a bug in the 10.1 compiler. Here's a test: run the 10.1 compiled binary BUT set the path to the newer 11.1 compiler. This will cause the binary to pick up the newer Fortran runtime libraries. If this works, then you can bet that you've run up against a bug in the 10.1 runtime.
good hunting, let us know if this helps.
ron
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page