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:
@ -361,10 +361,14 @@ intel"_package.html command that can improve performance when using
|
|||||||
"PPPM"_kspace_style.html for long-range electrostatics on processors
|
"PPPM"_kspace_style.html for long-range electrostatics on processors
|
||||||
with SMT. It generates an extra pthread for each MPI task. The thread
|
with SMT. It generates an extra pthread for each MPI task. The thread
|
||||||
is dedicated to performing some of the PPPM calculations and MPI
|
is dedicated to performing some of the PPPM calculations and MPI
|
||||||
communications. On Intel Xeon Phi x200 series CPUs, this will likely
|
communications. This feature requires setting the preprocessor flag
|
||||||
always improve performance, even on a single node. On Intel Xeon
|
-DLMP_INTEL_USELRT in the makefile when compiling LAMMPS. It is unset
|
||||||
processors, using this mode might result in better performance when
|
in the default makefiles ({Makefile.mpi} and {Makefile.serial}) but
|
||||||
using multiple nodes, depending on the machine. To use this mode,
|
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
|
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"
|
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
|
command-line suffix or "package intel" command. For example, if a run
|
||||||
|
|||||||
@ -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
|
ignored and no extra threads are generated. Enabling LRT will replace
|
||||||
the "run_style"_run_style.html with the {verlet/lrt/intel} style that
|
the "run_style"_run_style.html with the {verlet/lrt/intel} style that
|
||||||
is identical to the default {verlet} style aside from supporting the
|
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
|
The {balance} keyword sets the fraction of "pair
|
||||||
style"_pair_style.html work offloaded to the coprocessor for split
|
style"_pair_style.html work offloaded to the coprocessor for split
|
||||||
|
|||||||
@ -9,7 +9,7 @@ SHELL = /bin/sh
|
|||||||
CC = mpiicpc
|
CC = mpiicpc
|
||||||
MIC_OPT = -qoffload-option,mic,compiler,"-fp-model fast=2 -mGLOB_default_function_attrs=\"gather_scatter_loop_unroll=4\""
|
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 \
|
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)
|
-qoverride-limits $(MIC_OPT)
|
||||||
SHFLAGS = -fPIC
|
SHFLAGS = -fPIC
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|||||||
@ -9,7 +9,7 @@ SHELL = /bin/sh
|
|||||||
CC = mpiicpc
|
CC = mpiicpc
|
||||||
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||||
CCFLAGS = -qopenmp -DLAMMPS_MEMALIGN=64 -qno-offload \
|
CCFLAGS = -qopenmp -DLAMMPS_MEMALIGN=64 -qno-offload \
|
||||||
-fno-alias -ansi-alias -restrict $(OPTFLAGS)
|
-fno-alias -ansi-alias -restrict $(OPTFLAGS) -DLMP_INTEL_USELRT
|
||||||
SHFLAGS = -fPIC
|
SHFLAGS = -fPIC
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@ SHELL = /bin/sh
|
|||||||
CC = mpicxx -cxx=icc
|
CC = mpicxx -cxx=icc
|
||||||
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||||
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
|
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
|
SHFLAGS = -fPIC
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@ export OMPI_CXX = icc
|
|||||||
CC = mpicxx
|
CC = mpicxx
|
||||||
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||||
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
|
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
|
SHFLAGS = -fPIC
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@ CC = mpiicpc
|
|||||||
MIC_OPT = -qoffload-arch=mic-avx512 -fp-model fast=2
|
MIC_OPT = -qoffload-arch=mic-avx512 -fp-model fast=2
|
||||||
CCFLAGS = -O3 -qopenmp -DLMP_INTEL_OFFLOAD -DLAMMPS_MEMALIGN=64 \
|
CCFLAGS = -O3 -qopenmp -DLMP_INTEL_OFFLOAD -DLAMMPS_MEMALIGN=64 \
|
||||||
-xHost -fno-alias -ansi-alias -restrict \
|
-xHost -fno-alias -ansi-alias -restrict \
|
||||||
-qoverride-limits $(MIC_OPT)
|
-qoverride-limits $(MIC_OPT) -DLMP_INTEL_USELRT
|
||||||
SHFLAGS = -fPIC
|
SHFLAGS = -fPIC
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|
||||||
|
|||||||
@ -23,7 +23,9 @@ IntegrateStyle(verlet/lrt/intel,VerletLRTIntel)
|
|||||||
#include "verlet.h"
|
#include "verlet.h"
|
||||||
#include "pppm_intel.h"
|
#include "pppm_intel.h"
|
||||||
|
|
||||||
#ifndef LMP_INTEL_NOLRT
|
#ifndef LMP_INTEL_USELRT
|
||||||
|
#define LMP_INTEL_NOLRT
|
||||||
|
#else
|
||||||
|
|
||||||
#ifdef LMP_INTEL_LRT11
|
#ifdef LMP_INTEL_LRT11
|
||||||
#define _LMP_INTEL_LRT_11
|
#define _LMP_INTEL_LRT_11
|
||||||
|
|||||||
Reference in New Issue
Block a user