Closed
Description
I am trying to build e604107 on an AArch64 system with NVHPC Fortran 21.2-0.
It appears that REAL16 support in NVFortran isn't what Open-MPI is looking for, but I do not care about REAL16 support and would prefer to just not have it in the build.
I see this is not a new problem (#63) but cannot figure out how to disable REAL16 now.
$ make V=1 VERBOSE=1
/bin/sh ../../../../../libtool --tag=FC --mode=compile nvfortran -c -o psizeof_f.lo psizeof_f.f90
libtool: compile: nvfortran -c psizeof_f.f90 -o .libs/psizeof_f.o
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 641)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_scalar
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 651)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r1
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 661)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r2
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 671)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r3
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 681)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r4
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 691)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r5
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 701)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r6
NVFORTRAN-S-0087-Non-constant expression where constant expression required (psizeof_f.f90: 711)
0 inform, 0 warnings, 1 severes, 0 fatal for pmpi_sizeof_real16_r7
make: *** [Makefile:2369: psizeof_f.lo] Error 1
$ grep -i real16 psizeof_f.f90
SUBROUTINE PMPI_Sizeof_real16_scalar(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16)::x
END SUBROUTINE PMPI_Sizeof_real16_scalar
SUBROUTINE PMPI_Sizeof_real16_r1(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(*)::x
END SUBROUTINE PMPI_Sizeof_real16_r1
SUBROUTINE PMPI_Sizeof_real16_r2(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r2
SUBROUTINE PMPI_Sizeof_real16_r3(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r3
SUBROUTINE PMPI_Sizeof_real16_r4(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,1,1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r4
SUBROUTINE PMPI_Sizeof_real16_r5(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,1,1,1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r5
SUBROUTINE PMPI_Sizeof_real16_r6(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,1,1,1,1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r6
SUBROUTINE PMPI_Sizeof_real16_r7(x, size, ierror)
USE, INTRINSIC :: iso_fortran_env, ONLY: REAL16
REAL(REAL16), DIMENSION(1,1,1,1,1,1,*)::x
END SUBROUTINE PMPI_Sizeof_real16_r7
Reproduce
You need to use GCC for C/C++ and NVIDIA Fortran to reproduce this.
$ ../configure CC=gcc CXX=g++ FC=nvfortran --disable-man-pages && make -j100
commit 1da3f93c7a0b8acff53637a3510cb745e71e1b16 (HEAD -> master, origin/master, origin/HEAD)
Merge: 23833935f3 a2cd6a95e2
Author: Jeff Squyres <jsquyres@cisco.com>
Date: Tue Mar 16 10:26:37 2021 -0400
Merge pull request #8626 from mkurnosov/scatter-bmtree-fix-tmpbuf
coll/base: reduce memory consumption in Scatter
Metadata
Metadata
Assignees
Labels
No labels