Fixes are available
July 2008 Update for XL Fortran Advanced Edition for Linux, V11.1
February 2010 Update for XL Fortran Advanced Edition for Linux, V11.1
June 2009 Update for XL Fortran Advanced Edition for Linux, V11.1
February 2011 Update for XL Fortran Advanced Edition for Linux, V11.1
March 2008 Update for XL Fortran Advanced Edition for Linux, V11.1
November 2008 Update for XL Fortran Advanced Edition for Linux, V11.1
APAR status
Closed as program error.
Error description
Following test case core dumps with random_number() compiled with *_r and -q64 $xlf_r foo.f -q64 program foo implicit none real*8, allocatable, dimension(:,:) :: a integer, parameter :: n = 50000 integer :: istat allocate(a(n,n),stat=istat) if (istat.ne.0) stop 1 call random_number(a) print *, a(1,1) deallocate(a) end $./a.out Memory fault(coredump) if n<45000, the problem will go away.
Local fix
n/a
Problem summary
When invocations with the _r suffix are used to link, the run-time treats the resulting executable as threaded. With threaded applications, the random_number() intrisic partitions the array and creates "processors online*2" number of threads to perform the function in parallel. The problem is a variable used to keep the number of elements for each thread is defined as a 32-bit type and it overflows when the array is very large. Users who call random_number() with a very large array (in case of this APAR, 2.5G elements) and use the *_r invocation to link or have -lpthreads on the link command line are affected. This defect affects 64-bit applications only.
Problem conclusion
Compiler has changed the type of the offending variable from 32-bit to 64-bit.
Temporary fix
Comments
APAR Information
APAR number
LI73256
Reported component name
XL FORTRAN RHEL
Reported component ID
5724S7410
Reported release
B10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2008-03-27
Closed date
2008-03-27
Last modified date
2008-03-27
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XL FORTRAN RHEL
Fixed component ID
5724S7410
Applicable component levels
RB10 PSN IZ10203
UP06/09/13
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSB259","label":"XL Fortran Advanced Edition for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"B.1","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
24 February 2022