Changeset 5718


Ignore:
Timestamp:
Jun 19, 2025, 1:27:30 PM (4 weeks ago)
Author:
yann meurdesoif
Message:

Manage isnan non standard fortran intrinsic function with wrapper that switch to ieee_is_nan when preprocessing key CPP_USE_IEEE_IS_NAN is set.

This is mandatory for nvdia compiler that is not accept the isnan function. Due to not well understood side effect with MPI initialization on irene, for now we offer the 2 possibility, and by default, CPP_USE_IEEE_IS_NAN is set only for nvidia compilers.
YM

Location:
LMDZ6/trunk
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/arch/arch-IRENE_NVIDIA.fcm

    r5391 r5718  
    77%MAKE                gmake
    88%FPP_FLAGS           -P -traditional
    9 %FPP_DEF             NC_DOUBLE FFT_MKL
     9%FPP_DEF             NC_DOUBLE FFT_MKL CPP_USE_IEEE_IS_NAN
    1010%BASE_FFLAGS         -i4 -r8
    1111%PROD_FFLAGS         -gopt -traceback -fast
  • LMDZ6/trunk/arch/arch-IRENE_NVIDIA_ACC.fcm

    r5391 r5718  
    77%MAKE                gmake
    88%FPP_FLAGS           -P -traditional
    9 %FPP_DEF             NC_DOUBLE FFT_MKL
     9%FPP_DEF             NC_DOUBLE FFT_MKL CPP_USE_IEEE_IS_NAN
    1010%BASE_FFLAGS         -i4 -r8 -acc=gpu -gpu=cc70
    1111%PROD_FFLAGS         -gopt -traceback -fast -gpu=fastmath
  • LMDZ6/trunk/arch/arch-JEANZAY_NVIDIA.fcm

    r5350 r5718  
    77%MAKE                gmake
    88%FPP_FLAGS           -P -traditional
    9 %FPP_DEF             NC_DOUBLE FFT_MKL
     9%FPP_DEF             NC_DOUBLE FFT_MKL CPP_USE_IEEE_IS_NAN
    1010%BASE_FFLAGS         -i4 -r8
    1111%PROD_FFLAGS         -gopt -traceback -fast
  • LMDZ6/trunk/arch/arch-JEANZAY_NVIDIA_ACC.fcm

    r5351 r5718  
    77%MAKE                gmake
    88%FPP_FLAGS           -P -traditional
    9 %FPP_DEF             NC_DOUBLE FFT_MKL
     9%FPP_DEF             NC_DOUBLE FFT_MKL CPP_USE_IEEE_IS_NAN
    1010%BASE_FFLAGS         -i4 -r8 -acc=gpu -gpu=cc70
    1111%PROD_FFLAGS         -gopt -traceback -fast -gpu=fastmath
  • LMDZ6/trunk/libf/phylmd/Dust/checknanqfi.f90

    r5561 r5718  
    11SUBROUTINE checknanqfi(zq,qmin,qmax,comment)
    22  USE dimphy
     3  USE lmdz_is_nan, ONLY : is_nan
    34  IMPLICIT NONE
    45
     
    1617     DO i = 1, klon
    1718!        IF (zq(i,k).GT.qmax .OR. zq(i,k).LT.qmin) THEN
    18         IF (isnan(zq(i,k))) THEN
     19        IF (is_nan(zq(i,k))) THEN
    1920           jbad = jbad + 1
    2021           jadrs(jbad) = i
Note: See TracChangeset for help on using the changeset viewer.