[Dart-dev] DART/branches Revision: 13155
dart at ucar.edu
dart at ucar.edu
Thu May 2 17:14:30 MDT 2019
thoar at ucar.edu
2019-05-02 17:14:30 -0600 (Thu, 02 May 2019)
72
Trying not to hammer Arthur's inheritance of the MKL library location.
Modified: DART/branches/mizzi/mkmf/mkmf.template
===================================================================
--- DART/branches/mizzi/mkmf/mkmf.template 2019-05-02 23:08:09 UTC (rev 13154)
+++ DART/branches/mizzi/mkmf/mkmf.template 2019-05-02 23:14:30 UTC (rev 13155)
@@ -73,6 +73,16 @@
# which have priority over the others.
# (for those running on yellowstone, -axavx will enable the advanced
# vector instructions available on the sandy bridge processors.)
+# -assume buffered_io allows the runtime library to buffer up individual
+# writes before calling the operating system. in particular, we
+# write our observation sequence files as a series of many individual
+# calls to the write() routine. when debugging you do not want to
+# buffer so you can see the last output before the program dies.
+# for production, however, you want to batch up writes into larger
+# blocks before stopping to do i/o to disk. an alternative at
+# runtime is to set FORT_BUFFERED to 'true' in your environment.
+# (e.g. csh family: setenv FORT_BUFFERED true or
+# ksh family: export FORT_BUFFERED=true).
#
# FFLAGS possibly useful, not normally used by DART
# -fpp run Fortran preprocessor on source files prior to compilation
@@ -122,30 +132,33 @@
#
# NETCDF = /opt/local
+# The Intel Math Kernel Library has support for the lapack and blas libraries.
+# The Intel-provided scripts to enable run-time use of the Intel compilers
+# usually set and environment variable (sometimes 'MKLROOT')
+#
+# CURC_MKL_INC = ${MKLROOT}
+
INCS = -I$(NETCDF)/include -I${CURC_MKL_INC}
-LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf -L${CURC_MKL_LIB} -lmkl_rt -lmkl_lapack95_lp64 -lmkl_blas95_lp64 -lm -lpthread
+LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf \
+ -L${CURC_MKL_LIB} -lmkl_rt -lmkl_lapack95_lp64 -lmkl_blas95_lp64 -lm -lpthread
#FFLAGS = -O2 -ftz -vec-report0 -mcmodel=medium -shared-intel -fp-model precise $(INCS)
-##FFLAGS = -g -C -CB -ftz -vec-report0 -mcmodel=medium -shared-intel -fp-model precise $(INCS)
+##FFLAGS = -g -C -ftz -vec-report0 -mcmodel=medium -shared-intel -fp-model precise $(INCS)
#
# for development or debugging, use this instead:
-# FFLAGS = -g -C -CB -check noarg_temp_created -fpe0 -mcmodel=large -shared-intel \
+# FFLAGS = -g -C -check noarg_temp_created -fpe0 -mcmodel=large -shared-intel \
# -fp-model precise -ftrapuv -traceback \
# -warn declarations,uncalled,unused $(INCS)
#
-# for speed on yellowstone (verify against a run with with -O and -fp-model precise
+# for speed (verify against a run with with -O and -fp-model precise
# that the numerical differences aren't too large to be acceptable):
- FFLAGS = -O3 -axavx -xCORE-AVX2 $(INCS)
-# FFLAGS = -O3 -axavx -ipo -vec-report0 $(INCS)
-#
-# Some optimized (BLAS, LAPACK) libraries may be available with:
-# LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf -lmkl -lmkl_lapack -lguide -lpthread
-#
-# If you get this error: libimf.so: warning: warning: feupdateenv is not implemented
-# try adding: -limf -lm to your LIBS line.
-#
- LDFLAGS = $(FFLAGS) $(LIBS)
-#
+
+FFLAGS = -O3 -axavx -xCORE-AVX2 $(INCS)
+
+# FFLAGS = -O3 -axavx -ipo $(INCS)
+
+LDFLAGS = $(FFLAGS) $(LIBS)
+
# <next few lines under version control, do not edit>
# $URL$
# $Revision$
More information about the Dart-dev
mailing list