From 15cebf780d804246f0a831b88736fd0e8c2598a5 Mon Sep 17 00:00:00 2001 From: Juan ESCOBAR <juan.escobar@aero.obs-mip.fr> Date: Mon, 12 Jun 2023 10:52:50 +0200 Subject: [PATCH] Juan 12/06/203:Rules.LXgfortran.mk, add option for compilation for AMD-GPU with sourceryg/2022.09-7 --- src/Rules.LXgfortran.mk | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/Rules.LXgfortran.mk b/src/Rules.LXgfortran.mk index b4a1cf079..57725d3b1 100644 --- a/src/Rules.LXgfortran.mk +++ b/src/Rules.LXgfortran.mk @@ -8,8 +8,6 @@ # # ########################################################## # -# Gfortran version -GFV=$(shell gfortran --version | grep -E -m1 -o ' [[:digit:]\.]{2,}( |$$)' | sed 's/\.//g' ) # #OBJDIR_PATH=/home/escj/azertyuiopqsdfghjklm/wxcvbn/azertyuiopqsdfghjklmwxcvbn # @@ -20,7 +18,7 @@ OPT_PERF2 = -O2 OPT_CHECK = -fbounds-check -finit-real=nan OPT_I8 = -fdefault-integer-8 OPT_R8 = -fdefault-real-8 -fdefault-double-8 -OPT_OPENACC = -fopenacc -foffload=-march=gfx90a +OPT_OPENACC = -fopenacc # ifeq "$(VER_USER)" "ZSOLVER" CPPFLAGS += -DCARTESIANGEOMETRY -DPIECEWISELINEAR @@ -66,8 +64,8 @@ CFLAGS += -g -O0 endif # ifeq "$(OPTLEVEL)" "OPENACC" -CPPFLAGS += -DMNH_OPENACC -fopenacc -#OPT_BASE += -foffload=-lm +CPPFLAGS += -DMNH_OPENACC +OPT_BASE += -foffload=-march=gfx90a -foffload=-g -foffload=-lm -fno-fast-math -fno-associative-math OPT = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2) OPT0 = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF0) OPT_NOCB = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2) @@ -76,9 +74,13 @@ CXXFLAGS = $(OPT_OPENACC) #$(OBJS_REPROD) : OPT = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2) -Mvect=nosimd -Minfo=all -g endif # -CC = gcc -CXX = g++ -FC = gfortran +CC ?= gcc +CXX ?= g++ +FC ?= gfortran + +# Gfortran version +GFV=$(shell $(F90) --version | grep -E -m1 -o ' [[:digit:]\.]{2,}( |$$)' | sed 's/\.//g' ) + ifeq "$(VER_MPI)" "MPIAUTO" F90 = mpif90 CPPFLAGS_SURCOUCHE += -DMNH_USE_MPI_STATUSES_IGNORE @@ -87,7 +89,7 @@ ifeq "$(VER_MPI)" "MPICRAY" F90 = ftn CPPFLAGS_SURCOUCHE += -DMNH_USE_MPI_STATUSES_IGNORE else -F90 = gfortran +F90 ?= gfortran endif endif # @@ -98,7 +100,7 @@ FX90 = $(F90) FX90FLAGS = $(OPT) # #LDFLAGS = -Wl,-warn-once -LDFLAGS = $(OPT) +LDFLAGS += $(OPT) # # preprocessing flags # @@ -107,12 +109,12 @@ CPP = mnh_expand # CPPFLAGS_C += -DLITTLE_endian CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DDEV_NULL +CPPFLAGS_SURCOUCHE += -DDEV_NULL -DMPIVIDE CPPFLAGS_RAD = CPPFLAGS_NEWLFI = -DSWAPIO -DLINUX -DLFI_INT=${LFI_INT} CPPFLAGS_MNH = -DMNH=MNH -DSFX_MNH CPPFLAGS_MNH += -imacros MNH_OPENACC_NV_CR.CPP -CPPFLAGS_MNH += -DMNH_EXPAND +CPPFLAGS_MNH += -DMNH_EXPAND -DMNH_EXPAND_LOOP ifdef VER_GA CPPFLAGS_SURCOUCHE += -DMNH_GA INC += -I${GA_ROOT}/include -- GitLab