Commit 5e892696 authored by Michael Brown's avatar Michael Brown
Browse files

Minor adjustments to intel makefiles and documentation based on the reversed

preprocessor logic and default memory align. Removing knl_coprocessor makefile.
parent d2aa05cb
Loading
Loading
Loading
Loading
+23 −19
Original line number Diff line number Diff line
@@ -27,12 +27,12 @@ LAMMPS to run on the CPU cores and coprocessor cores simultaneously.
Angle Styles: charmm, harmonic :ulb,l
Bond Styles: fene, fourier, harmonic :l
Dihedral Styles: charmm, harmonic, opls :l
Fixes: nve, npt, nvt, nvt/sllod :l
Fixes: nve, npt, nvt, nvt/sllod, nve/asphere :l
Improper Styles: cvff, harmonic :l
Pair Styles: airebo, airebo/morse, buck/coul/cut, buck/coul/long, 
buck, dpd, eam, eam/alloy, eam/fs, gayberne, lj/charmm/coul/charmm, 
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long, rebo,
sw, tersoff :l
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long, 
rebo, sw, tersoff :l
K-Space Styles: pppm, pppm/disp :l
:ule

@@ -54,11 +54,12 @@ warmup run (for use with offload benchmarks).
:c,image(JPG/user_intel.png)

Results are speedups obtained on Intel Xeon E5-2697v4 processors
(code-named Broadwell) and Intel Xeon Phi 7250 processors
(code-named Knights Landing) with "June 2017" LAMMPS built with
Intel Parallel Studio 2017 update 2. Results are with 1 MPI task
per physical core. See {src/USER-INTEL/TEST/README} for the raw
simulation rates and instructions to reproduce.
(code-named Broadwell), Intel Xeon Phi 7250 processors (code-named
Knights Landing), and Intel Xeon Gold 6148 processors (code-named
Skylake) with "June 2017" LAMMPS built with Intel Parallel Studio
2017 update 2. Results are with 1 MPI task per physical core. See
{src/USER-INTEL/TEST/README} for the raw simulation rates and
instructions to reproduce.

:line

@@ -124,8 +125,8 @@ For Intel Xeon Phi CPUs:
Runs should be performed using MCDRAM. :ulb,l
:ule

For simulations using {kspace_style pppm} on Intel CPUs
supporting AVX-512:
For simulations using {kspace_style pppm} on Intel CPUs supporting
AVX-512:

Add "kspace_modify diff ad" to the input script :ulb,l
The command-line option should be changed to
@@ -242,14 +243,17 @@ However, if you do not have coprocessors on your system, building
without offload support will produce a smaller binary.

The general requirements for Makefiles with the USER-INTEL package
are as follows. "-DLAMMPS_MEMALIGN=64" is required for CCFLAGS. When
using Intel compilers, "-restrict" is required and "-qopenmp" is
highly recommended for CCFLAGS and LINKFLAGS. LIB should include
"-ltbbmalloc". For builds supporting offload, "-DLMP_INTEL_OFFLOAD"
is required for CCFLAGS and "-qoffload" is required for LINKFLAGS.
Other recommended CCFLAG options for best performance are
"-O2 -fno-alias -ansi-alias -qoverride-limits fp-model fast=2
-no-prec-div".
are as follows. When using Intel compilers, "-restrict" is required 
and "-qopenmp" is highly recommended for CCFLAGS and LINKFLAGS. 
CCFLAGS should include "-DLMP_INTEL_USELRT" (unless POSIX Threads
are not supported in the build environment) and "-DLMP_USE_MKL_RNG"
(unless Intel Math Kernel Library (MKL) is not available in the build
environment). For Intel compilers, LIB should include "-ltbbmalloc" 
or if the library is not available, "-DLMP_INTEL_NO_TBB" can be added
to CCFLAGS. For builds supporting offload, "-DLMP_INTEL_OFFLOAD" is
required for CCFLAGS and "-qoffload" is required for LINKFLAGS. Other
recommended CCFLAG options for best performance are "-O2 -fno-alias
-ansi-alias -qoverride-limits fp-model fast=2 -no-prec-div".

NOTE: The vectorization and math capabilities can differ depending on
the CPU. For Intel compilers, the "-x" flag specifies the type of
+4 −3
Original line number Diff line number Diff line
@@ -15,13 +15,14 @@ SHELL = /bin/sh

CC =		CC
OPTFLAGS =      -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS =	-g -qopenmp -DLAMMPS_MEMALIGN=64 -qno-offload \
                -fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_NO_TBB
CCFLAGS =	-qopenmp -qno-offload -fno-alias -ansi-alias -restrict \
                -DLMP_INTEL_USELRT -DLMP_USE_MKL_RNG -DLMP_INTEL_NO_TBB \
                $(OPTFLAGS)
SHFLAGS =	-fPIC
DEPFLAGS =	-M

LINK =		CC
LINKFLAGS =	-g -qopenmp $(OPTFLAGS)
LINKFLAGS =	-qopenmp $(OPTFLAGS)
LIB =           
SIZE =		size

+4 −5
Original line number Diff line number Diff line
@@ -8,15 +8,14 @@ SHELL = /bin/sh

CC =		mpiicpc 
OPTFLAGS =      -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS =	-g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
                -fno-alias -ansi-alias -restrict $(OPTFLAGS) \
		-DLMP_USE_MKL_RNG
CCFLAGS =	-qopenmp -qno-offload -fno-alias -ansi-alias -restrict \
                -DLMP_INTEL_USELRT -DLMP_USE_MKL_RNG $(OPTFLAGS)
SHFLAGS =	-fPIC
DEPFLAGS =	-M

LINK =		mpiicpc
LINKFLAGS =	-g -qopenmp $(OPTFLAGS)
LIB =           -ltbbmalloc -ltbbmalloc_proxy
LINKFLAGS =	-qopenmp $(OPTFLAGS)
LIB =           -ltbbmalloc
SIZE =		size

ARCHIVE =	ar
+2 −3
Original line number Diff line number Diff line
@@ -8,9 +8,8 @@ SHELL = /bin/sh

CC =		mpiicpc 
OPTFLAGS =      -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS =	-qopenmp -DLAMMPS_MEMALIGN=64 -qno-offload \
                -fno-alias -ansi-alias -restrict $(OPTFLAGS) \
		-DLMP_USE_MKL_RNG -DLMP_INTEL_USELRT
CCFLAGS =	-qopenmp -qno-offload -fno-alias -ansi-alias -restrict \
                -DLMP_INTEL_USELRT -DLMP_USE_MKL_RNG $(OPTFLAGS)
SHFLAGS =	-fPIC
DEPFLAGS =	-M

+3 −3
Original line number Diff line number Diff line
@@ -8,13 +8,13 @@ SHELL = /bin/sh

CC =		mpicxx -cxx=icc
OPTFLAGS =      -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS =	-g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
                -fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_USELRT
CCFLAGS =	-qopenmp -qno-offload -fno-alias -ansi-alias -restrict \
                -DLMP_INTEL_USELRT -DLMP_USE_MKL_RNG $(OPTFLAGS)
SHFLAGS =	-fPIC
DEPFLAGS =	-M

LINK =		mpicxx -cxx=icc
LINKFLAGS =	-g -qopenmp $(OPTFLAGS)
LINKFLAGS =	-qopenmp $(OPTFLAGS)
LIB =           
SIZE =		size

Loading