Fixes are available
August 2012 PTF for XL C for AIX, V12.1
August 2012 PTF for XL C/C++ for AIX, V12.1
August 2012 IBM XL C++ Runtime for AIX, V12.1
September 2012 PTF for XL Fortran for AIX, V12.1
September 2012 PTF for XL Fortran Runtime for AIX, V12.1
November 2012 PTF for XL C for AIX, V12.1
November 2012 PTF for XL C/C++ for AIX, V12.1
January 2013 PTF for XL C for AIX, V10.1
January 2013 PTF for XL C/C++ for AIX, V10.1
March 2013 PTF for XL C for AIX, V12.1
March 2013 PTF for XL C/C++ for AIX, V12.1
March 2013 PTF for XL Fortran Runtime for AIX, V14.1
XL C/C++ for AIX Fix Pack 4 (June 2013 PTF) for 12.1
XL C/C++ for AIX Fix Pack 18 (July 2013 PTF) for 10.1
IBM XL C++ Runtime for AIX Fix Pack 2 (July 2013 PTF) for 12.1
XL C/C++ for AIX Fix Pack 5 (September 2013 PTF) for 12.1
XL Fortran Runtime for AIX Fix Pack 5 (September 2013 PTF) for 14.1
XL C++ Runtime for AIX Fix Pack 3 (September 2013 PTF) for 12.1
XL C/C++ for AIX Fix Pack 19 (October 2013 PTF) for 10.1
XL C/C++ for AIX Fix Pack 7 (January 2014 PTF) for 12.1
XL C for AIX Fix Pack 8 (March 2014 PTF) for 12.1
XL C/C++ for AIX Fix Pack 8 (March 2014 PTF) for 12.1
XL C/C++ for AIX Fix Pack 11 (February 2015 PTF) for 12.1
XL C for AIX Fix Pack 12 (May 2015 PTF) for 12.1
XL C/C++ for AIX Fix Pack 12 (May 2015 PTF) for 12.1
XL Fortran for AIX Fix Pack 11 (May 2015 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 11 (May 2015 PTF) for 14.1
XL C/C++ for AIX Fix Pack 13 (August 2015 Update) for 12.1
XL C++ Runtime for AIX Fix Pack 4 (August 2015 PTF) for 12.1
XL Fortran for AIX Fix Pack 12 (August 2015 Update) for 14.1
XL C/C++ for AIX Fix Pack 21 (October 2015 PTF) for 10.1
XL C++ Runtime for AIX Fix Pack 5 (October 2015 PTF) for 12.1
XL C for AIX Fix Pack 21 (October 2015 PTF) for 10.1
XL C/C++ for AIX Fix Pack 14 (December 2015 Update) for 12.1
XL C for AIX Fix Pack 15 (April 2016 Update) for 12.1
XL C/C++ for AIX Fix Pack 15 (April 2016 Update) for 12.1
XL Fortran for AIX Fix Pack 15 (April 2016 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 15 (April 2016 Update) for 14.1
XL C for AIX Fix Pack 16 (July 2016 Update) for 12.1
XL C/C++ for AIX Fix Pack 16 (July 2016 Update) for 12.1
XL Fortran for AIX Fix Pack 16 (July 2016 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 16 (July 2016 Update) for 14.1
XL C/C++ for AIX Fix Pack 17 (November 2016 Update) for 12.1
XL C for AIX Fix Pack 17 (November 2016 Update) for 12.1
XL Fortran for AIX Fix Pack 17 (November 2016 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 17 (November 2016 Update) for 14.1
XL C for AIX Fix Pack 18 (February 2017 Update) for 12.1
XL C/C++ for AIX Fix Pack 18 (February 2017 Update) for 12.1
XL Fortran for AIX Fix Pack 18 (February 2017 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 18 (February 2017 Update) for 14.1
XL C for AIX Fix Pack 19 (August 2017 Update) for 12.1
XL C/C++ for AIX Fix Pack 19 (August 2017 Update) for 12.1
XL Fortran for AIX Fix Pack 19 (August 2017 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 19 (August 2017 Update) for 14.1
XL C for AIX Fix Pack 20 (March 2018 Update) for 12.1
XL C/C++ for AIX Fix Pack 20 (March 2018 Update) for 12.1
August 2012 PTF for XL Fortran for AIX, V14.1
August 2012 PTF for XL Fortran Runtime for AIX, V14.1
September 2012 PTF for XL C for AIX, V10.1
September 2012 PTF for XL C/C++ for AIX, V10.1
November 2012 PTF for XL Fortran for AIX, V14.1
November 2012 PTF for XL Fortran Runtime for AIX, V14.1
January 2013 PTF for XL Fortran for AIX, V12.1
January 2013 PTF for XL Fortran Runtime for AIX, V12.1
March 2013 PTF for XL Fortran for AIX, V14.1
XL C for AIX Fix Pack 4 (June 2013 PTF) for 12.1
XL Fortran for AIX Fix Pack 4 (June 2013 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 4 (June 2013 PTF) for 14.1
XL C for AIX Fix Pack 18 (July 2013 PTF) for 10.1
XL Fortran for AIX Fix Pack 18 (July 2013) for 12.1
XL Fortran Runtime for AIX Fix Pack 18 (July 2013 PTF) for 12.1
XL C for AIX Fix Pack 5 (September 2013 PTF) for 12.1
XL Fortran for AIX Fix Pack 5 (September 2013 PTF) for 14.1
XL Fortran for AIX Fix Pack 19 (October 2013) for 12.1
XL Fortran Runtime for AIX Fix Pack 19 (October 2013 PTF) for 12.1
XL C for AIX Fix Pack 19 (October 2013 PTF) for 10.1
XL C for AIX Fix Pack 6 (December 2013 PTF) for 12.1
XL C/C++ for AIX Fix Pack 6 (December 2013 PTF) for 12.1
XL Fortran for AIX Fix Pack 6 (December 2013 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 6 (December 2013 PTF) for 14.1
XL C for AIX Fix Pack 7 (January 2014 PTF) for 12.1
XL Fortran for AIX Fix Pack 7 (March 2014 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 7 (March 2014 PTF) for 14.1
XL C for AIX Fix Pack 9 (July 2014 PTF) for 12.1
XL C/C++ for AIX Fix Pack 9 (July 2014 PTF) for 12.1
XL Fortran for AIX Fix Pack 8 (July 2014 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 8 (July 2014 PTF) for 14.1
XL C for AIX Fix Pack 20 (October 2014 PTF) for 10.1
XL C/C++ for AIX Fix Pack 20 (October 2014 PTF) for 10.1
XL Fortran for AIX Fix Pack 20 (October 2014 PTF) for 12.1
XL Fortran Runtime for AIX Fix Pack 20 (October 2014 PTF) for 12.1
XL C for AIX Fix Pack 10 (October 2014 PTF) for 12.1
XL C/C++ for AIX Fix Pack 10 (October 2014 PTF) for 12.1
XL Fortran for AIX Fix Pack 9 (October 2014 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 9 (October 2014 PTF) for 14.1
XL C for AIX Fix Pack 11 (February 2015 PTF) for 12.1
XL Fortran for AIX Fix Pack 10 (February 2015 PTF) for 14.1
XL Fortran Runtime for AIX Fix Pack 10 (February 2015 PTF) for 14.1
XL C for AIX Fix Pack 13 (August 2015 Update) for 12.1
XL Fortran Runtime for AIX Fix Pack 12 (August 2015 Update) for 14.1
XL C for AIX Fix Pack 14 (December 2015 Update) for 12.1
XL Fortran for AIX Fix Pack 14 (December 2015 Update) for 14.1
XL Fortran Runtime for AIX Fix Pack 14 (December 2015 Update) for 14.1
XL C/C++ for AIX Fix Pack 21 (January 2019 Update) for 12.1
XL C for AIX Fix Pack 21 (January 2019 Update) for 12.1
APAR status
Closed as program error.
Error description
There appears to be a performance problem when using the bind and bindlist options to XLSMPOPTS: $ cat matmul.f program matmul1 implicit none real*8, allocatable, dimension(:,:,:) :: a,b,c integer, parameter :: n = 4000 integer i allocate(a(n,n,0:1),b(n,n,0:1),c(n,n,0:1)) a = 1.d0 b = 1.d0 !$OMP parallel do private(i) do i = 0,1 c(:,:,i) = matmul(a(:,:,i),b(:,:,i)) enddo deallocate(a,b,c) end $ $ xlf_r -O -q64 -qsmp=omp matmul.f -o matmul.exe #!/bin/ksh set -x export XLFRTEOPTS=intrinthds=1 export XLSMPOPTS=parthds=2 time ./matmul.exe export XLSMPOPTS=parthds=2:bindlist=proc=0,2 time ./matmul.exe /u/pdemo/bind_bug $ ./run + export XLFRTEOPTS=intrinthds=1 + export XLSMPOPTS=parthds=2 + ./matmul.exe real 0m27.04s user 0m45.03s sys 0m0.00s + export XLSMPOPTS=parthds=2:bindlist=proc=0,2 + ./matmul.exe real 1m6.88s user 0m57.23s sys 0m0.00s
Local fix
n/a
Problem summary
====Users Affected: Users who bind with the XLSMPOPTS option may be affected by this issue. ====Problem Description: This is a problem with the binding code that causes all threads to be bound to a single CPU 0. This causes a performance bottle-neck and leads to the degradation.
Problem conclusion
The binding code has been fixed so that not all threads get bound to the same CPU.
Temporary fix
Comments
APAR Information
APAR number
IV26399
Reported component name
XL SMP AIX
Reported component ID
5725C7401
Reported release
310
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-08-17
Closed date
2012-08-17
Last modified date
2012-08-17
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 SMP AIX
Fixed component ID
5725C7401
Applicable component levels
Document Information
Modified date:
03 October 2021