[Dart-dev] DART/branches Revision: 12768
dart at ucar.edu
dart at ucar.edu
Mon Aug 13 14:31:33 MDT 2018
mizzi at ucar.edu
2018-08-13 14:31:32 -0600 (Mon, 13 Aug 2018)
52
Update dating this branch with syntax corrections.
Modified: DART/branches/mizzi/mkmf/mkmf.template
===================================================================
--- DART/branches/mizzi/mkmf/mkmf.template 2018-08-10 17:26:13 UTC (rev 12767)
+++ DART/branches/mizzi/mkmf/mkmf.template 2018-08-13 20:31:32 UTC (rev 12768)
@@ -122,8 +122,8 @@
#
# NETCDF = /opt/local
-INCS = -I$(NETCDF)/include
-LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf
+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
#FFLAGS = -O2 -CB -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)
#
Copied: DART/branches/mizzi/mkmf/mkmf.template_cu_summit (from rev 12407, DART/branches/mizzi/mkmf/mkmf.template)
===================================================================
--- DART/branches/mizzi/mkmf/mkmf.template_cu_summit (rev 0)
+++ DART/branches/mizzi/mkmf/mkmf.template_cu_summit 2018-08-13 20:31:32 UTC (rev 12768)
@@ -0,0 +1,150 @@
+# Template for Intel Fortran Compiler on Linux clusters and workstations.
+#
+# DART software - Copyright 2004 - 2013 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# DART $Id$
+
+# typical use with mkmf
+# mkmf -t mkmf.template.xxxx ...
+#
+# FFLAGS useful for DEBUGGING. NOTE: The intel compiler can provide a lot more
+# information if you LEAVE the object and module files intact.
+# Do not remove the *.o and *.mod files when debugging code.
+#
+# -g include debugging information. these are all synonyms.
+# -debug full
+# -debug all
+# -O0 setting -g will make this the default (no optimization).
+# it is possible to set -g and then explicitly set -O2 if
+# the behavior being debugged depends on optimization changes.
+# -ftrapuv traps if a local variable is used before being set
+# -C enables all runtime checks. -C and -check all are synonyms.
+# -check all
+# -check <keywords> enables/disables more specific runtime checks.
+# keywords: [arg_temp_created,bounds,overflow,format,pointers,uninit]
+# -warn <keywords> the level of warning messages issued.
+# keywords: [alignments, argument_checking, declarations,
+# errors, fileopt, general, ignore_loc,
+# stderrors, truncated_source, uncalled,
+# uninitialized, unused, usage, all]
+# -fp-stack-check catches conditions where the FP stack is not correct.
+# Typically this is when a real function is called as if it were a
+# subroutine, OR a subroutine is called as if it were a function (return
+# values left of FP stack OR too much data is taken off the FP stack)
+# -vec-reportN controls how much diagnostic output is printed about
+# loops vectorized by the compiler. N = 0 is silent,
+# N can have values up to 5.
+# -traceback tells the compiler to generate extra information in the
+# object file to provide source file traceback information
+# when a severe error occurs at run time
+#
+# FFLAGS useful for bitwise reproducibility and accuracy control
+# (these will slow down performance to various degrees)
+# -fp-model precise control how floating point roundoff is done so it is
+# reproducible from run to run. in simple tests this
+# flag alone was enough to create bitwise reproducible
+# code but slowed execution significantly.
+# -ftz 'flush to zero' underflows result in zero. set by default if
+# any -O other than -O0 set, or if -fpe0 or -fpe1 set.
+# -fpeN controls floating point exception handling. -fpe0 rounds underflow
+# to zero and traps on any other exception type.
+# -pc80 set internal FPU precision to 64 bit significand
+# (default is -pc64 with 53 internal bits)
+#
+# FFLAGS useful for production
+# -O2 default. optimize without too much unrepeatable numerical games
+# -O3 more aggressive optimizations. check numerical differences
+# before using this indiscriminately.
+# -O1 if you get compile-time errors about out of memory or unable to
+# complete compilation because of complexity, try lowering the
+# optimization level on the offending source files.
+# -ipo enable optimizations between routines in separate source files
+# -heap-arrays 10 allocate large arrays from the heap instead of putting them
+# on the stack. the number is the limit in KB for when arrays
+# move from the stack to the heap. this can help if you get stack
+# overflow errors and cannot increase the stack size more.
+# allocating from the stack is faster, but it's usually a smaller
+# size than the heap.
+# -x, -m, -ax, -mcode, -march all these flags tell the compiler to generate
+# processor-specific or vector instructions. either 'man ifort' or
+# ifort --help to see what the current list of options are and
+# which have priority over the others.
+# (for those running on yellowstone, -axavx will enable the advanced
+# vector instructions available on the sandy bridge processors.)
+#
+# FFLAGS possibly useful, not normally used by DART
+# -fpp run Fortran preprocessor on source files prior to compilation
+# -free interpret source as free-format, regardless of file extension
+# -r8 specify default real size. note that for DART we use explicit
More information about the Dart-dev
mailing list