reverse the pre-processor logic of the LRT mode define

with this change, the USER-INTEL package can be installed and
compiled without having to alter makefiles for adding -lpthread.
All "intel optimized" makefiles have been updated to have the
LRT feature enabled. This change will allow us to include the
USER-INTEL package in several automated testing configurations
and thus allows to detect incompatibilities and compilation issus faster.
This commit is contained in:
Axel Kohlmeyer
2017-09-06 14:05:39 -04:00
parent aad8cd10ff
commit cdb6ec7419
8 changed files with 18 additions and 11 deletions

View File

@ -361,10 +361,14 @@ intel"_package.html command that can improve performance when using
"PPPM"_kspace_style.html for long-range electrostatics on processors
with SMT. It generates an extra pthread for each MPI task. The thread
is dedicated to performing some of the PPPM calculations and MPI
communications. On Intel Xeon Phi x200 series CPUs, this will likely
always improve performance, even on a single node. On Intel Xeon
processors, using this mode might result in better performance when
using multiple nodes, depending on the machine. To use this mode,
communications. This feature requires setting the preprocessor flag
-DLMP_INTEL_USELRT in the makefile when compiling LAMMPS. It is unset
in the default makefiles ({Makefile.mpi} and {Makefile.serial}) but
it is set in all makefiles tuned for the USER-INTEL package. On Intel
Xeon Phi x200 series CPUs, the LRT feature will likely improve
performance, even on a single node. On Intel Xeon processors, using
this mode might result in better performance when using multiple nodes,
depending on the specific machine configuration. To enable LRT mode,
specify that the number of OpenMP threads is one less than would
normally be used for the run and add the "lrt yes" option to the "-pk"
command-line suffix or "package intel" command. For example, if a run

View File

@ -335,7 +335,8 @@ from the USER-INTEL package is not used, then the LRT setting is
ignored and no extra threads are generated. Enabling LRT will replace
the "run_style"_run_style.html with the {verlet/lrt/intel} style that
is identical to the default {verlet} style aside from supporting the
LRT feature.
LRT feature. This feature requires setting the preprocessor flag
-DLMP_INTEL_USELRT in the makefile when compiling LAMMPS.
The {balance} keyword sets the fraction of "pair
style"_pair_style.html work offloaded to the coprocessor for split

View File

@ -9,7 +9,7 @@ SHELL = /bin/sh
CC = mpiicpc
MIC_OPT = -qoffload-option,mic,compiler,"-fp-model fast=2 -mGLOB_default_function_attrs=\"gather_scatter_loop_unroll=4\""
CCFLAGS = -g -O3 -qopenmp -DLMP_INTEL_OFFLOAD -DLAMMPS_MEMALIGN=64 \
-xHost -fno-alias -ansi-alias -restrict \
-xHost -fno-alias -ansi-alias -restrict -DLMP_INTEL_USELRT \
-qoverride-limits $(MIC_OPT)
SHFLAGS = -fPIC
DEPFLAGS = -M

View File

@ -9,7 +9,7 @@ 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)
-fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_USELRT
SHFLAGS = -fPIC
DEPFLAGS = -M

View File

@ -9,7 +9,7 @@ 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)
-fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_USELRT
SHFLAGS = -fPIC
DEPFLAGS = -M

View File

@ -10,7 +10,7 @@ export OMPI_CXX = icc
CC = mpicxx
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)
-fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_USELRT
SHFLAGS = -fPIC
DEPFLAGS = -M

View File

@ -10,7 +10,7 @@ CC = mpiicpc
MIC_OPT = -qoffload-arch=mic-avx512 -fp-model fast=2
CCFLAGS = -O3 -qopenmp -DLMP_INTEL_OFFLOAD -DLAMMPS_MEMALIGN=64 \
-xHost -fno-alias -ansi-alias -restrict \
-qoverride-limits $(MIC_OPT)
-qoverride-limits $(MIC_OPT) -DLMP_INTEL_USELRT
SHFLAGS = -fPIC
DEPFLAGS = -M

View File

@ -23,7 +23,9 @@ IntegrateStyle(verlet/lrt/intel,VerletLRTIntel)
#include "verlet.h"
#include "pppm_intel.h"
#ifndef LMP_INTEL_NOLRT
#ifndef LMP_INTEL_USELRT
#define LMP_INTEL_NOLRT
#else
#ifdef LMP_INTEL_LRT11
#define _LMP_INTEL_LRT_11