forked from FESOM/fesom2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.in_gnu_impi
45 lines (35 loc) · 1.5 KB
/
Makefile.in_gnu_impi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# Compiler and Linker
CC = gcc
MPICC = mpicc
MPIFC = mpif90
LD = $(MPIFC)
# Optimization specs for compiler - used for FESOM an parms.
# Metis falls back to conservative and non-compiler specific -O2, as
# it is only used in the less runtime-critical setup phase.
OPT = -O3 -march=native -funroll-loops -ffree-line-length-none
COPT = -O3 -march=native -funroll-loops -DLINUX -DUNDER_ -DMPI2 -Iinclude
## Options for debugging:
# OPT = -g -fbounds-check -fbacktrace
# Preprocessor flags for FESOM2
CPP_DEFS = -DDISABLE_MULTITHREADING
# NetCDF library and include definitions
NCFDIR = /global/AWIsoft/netcdf/4.6.1_gnu
NC_LIB = -L$(NCFDIR)/lib -Wl,-rpath,$(NCFDIR)/lib -lnetcdff
NC_INC = -I$(NCFDIR)/include
# Definitions for MPI, if not set by compiler wrappers
MPIROOT =
MPI_LIB =
MPI_INC =
## For partitioning, the FESOM initialization offers an interface to Metis 5.
## The option -DPART_WEIGHTED distributes 2D _and_ 3D-nodes equally, but the
## partitioning might be quite irregular.
## Without DPART_WEIGHTED, only the number of 2D nodes is considered for load balancing.
## You can start Metis 5 with different random seeds -> different partitions.
METIS_DEFS = -DMETIS_VERSION=5 -DPART_WEIGHTED -DMETISRANDOMSEED=35243
# METISRANDDOMSEED: any integer
# Used to compile the fesom wrapper to parms
PARMS_DEFS = -DUSE_MPI -DREAL=double -DDBL -DVOID_POINTER_SIZE_8
#######################################################
# for pARMS and metis Library, archive and options
AR = ar qv
RANLIB = ranlib