rename USER-OMP to OPENMP

This commit is contained in:
Axel Kohlmeyer
2021-06-29 17:48:22 -04:00
parent c085e55695
commit 1dc25b0e10
586 changed files with 257 additions and 276 deletions

2
.github/CODEOWNERS vendored
View File

@ -41,7 +41,7 @@ src/ML-PACE/* @yury-lysogorskiy
src/USER-PLUMED/* @gtribello
src/USER-PHONON/* @lingtikong
src/USER-PTM/* @pmla
src/USER-OMP/* @akohlmey
src/OPENMP/* @akohlmey
src/USER-QMMM/* @akohlmey
src/USER-REAXC/* @hasanmetin
src/USER-REACTION/* @jrgissing

View File

@ -148,7 +148,7 @@ set(STANDARD_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS DIPOLE
ML-RANN USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD MACHDYN USER-SMTBQ USER-SPH
USER-TALLY USER-UEF USER-VTK ML-QUIP USER-QMMM USER-YAFF ML-PACE USER-BROWNIAN)
set(SUFFIX_PACKAGES CORESHELL GPU KOKKOS OPT USER-INTEL USER-OMP)
set(SUFFIX_PACKAGES CORESHELL GPU KOKKOS OPT USER-INTEL OPENMP)
foreach(PKG ${STANDARD_PACKAGES} ${SUFFIX_PACKAGES})
option(PKG_${PKG} "Build ${PKG} Package" OFF)
@ -496,7 +496,7 @@ endif()
# packages which selectively include variants based on enabled styles
# e.g. accelerator packages
######################################################################
foreach(PKG_WITH_INCL CORESHELL QEQ USER-OMP USER-SDPD KOKKOS OPT USER-INTEL GPU)
foreach(PKG_WITH_INCL CORESHELL QEQ OPENMP USER-SDPD KOKKOS OPT USER-INTEL GPU)
if(PKG_${PKG_WITH_INCL})
include(Packages/${PKG_WITH_INCL})
endif()

View File

@ -0,0 +1,40 @@
set(OPENMP_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/OPENMP)
set(OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/thr_data.cpp
${OPENMP_SOURCES_DIR}/thr_omp.cpp
${OPENMP_SOURCES_DIR}/fix_omp.cpp
${OPENMP_SOURCES_DIR}/fix_nh_omp.cpp
${OPENMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp
${OPENMP_SOURCES_DIR}/domain_omp.cpp)
target_compile_definitions(lammps PRIVATE -DLMP_USER_OMP)
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${OPENMP_SOURCES}")
# detects styles which have OPENMP version
RegisterStylesExt(${OPENMP_SOURCES_DIR} omp OMP_SOURCES)
RegisterFixStyle(${OPENMP_SOURCES_DIR}/fix_omp.h)
get_property(OPENMP_SOURCES GLOBAL PROPERTY OMP_SOURCES)
# manually add package dependent source files from OPENMP that do not provide styles
if(PKG_ASPHERE)
list(APPEND OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/fix_nh_asphere_omp.cpp)
endif()
if(PKG_RIGID)
list(APPEND OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/fix_rigid_nh_omp.cpp)
endif()
if(PKG_USER-REAXC)
list(APPEND OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/reaxc_bond_orders_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_hydrogen_bonds_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_nonbonded_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_bonds_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_init_md_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_torsion_angles_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_forces_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_multi_body_omp.cpp
${OPENMP_SOURCES_DIR}/reaxc_valence_angles_omp.cpp)
endif()
target_sources(lammps PRIVATE ${OPENMP_SOURCES})
target_include_directories(lammps PRIVATE ${OPENMP_SOURCES_DIR})

View File

@ -1,40 +0,0 @@
set(USER-OMP_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-OMP)
set(USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/thr_data.cpp
${USER-OMP_SOURCES_DIR}/thr_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_nh_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp
${USER-OMP_SOURCES_DIR}/domain_omp.cpp)
target_compile_definitions(lammps PRIVATE -DLMP_USER_OMP)
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${USER-OMP_SOURCES}")
# detects styles which have USER-OMP version
RegisterStylesExt(${USER-OMP_SOURCES_DIR} omp OMP_SOURCES)
RegisterFixStyle(${USER-OMP_SOURCES_DIR}/fix_omp.h)
get_property(USER-OMP_SOURCES GLOBAL PROPERTY OMP_SOURCES)
# manually add package dependent source files from USER-OMP that do not provide styles
if(PKG_ASPHERE)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_nh_asphere_omp.cpp)
endif()
if(PKG_RIGID)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_rigid_nh_omp.cpp)
endif()
if(PKG_USER-REAXC)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/reaxc_bond_orders_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_hydrogen_bonds_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_nonbonded_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_bonds_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_init_md_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_torsion_angles_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_forces_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_multi_body_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_valence_angles_omp.cpp)
endif()
target_sources(lammps PRIVATE ${USER-OMP_SOURCES})
target_include_directories(lammps PRIVATE ${USER-OMP_SOURCES_DIR})

View File

@ -8,7 +8,7 @@ set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
USER-ADIOS USER-ATC USER-AWPMD USER-BROWNIAN USER-BOCS CG-DNA CG-SDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
ML-HDNNP USER-INTEL LATBOLTZ USER-MANIFOLD USER-MDI MEAM USER-MESODPD
USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP
USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF OPENMP
ML-PACE USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB ML-QUIP ML-RANN
USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD MACHDYN USER-SMTBQ USER-SPH
USER-TALLY USER-UEF USER-VTK USER-YAFF USER-DIELECTRIC)

View File

@ -10,7 +10,7 @@ set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
USER-ADIOS USER-ATC USER-AWPMD USER-BROWNIAN USER-BOCS CG-DNA CG-SDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
ML-HDNNP USER-INTEL LATBOLTZ USER-MANIFOLD USER-MDI MEAM USER-MESODPD
USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP
USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF OPENMP
ML-PACE USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB ML-QUIP ML-RANN
USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD MACHDYN USER-SMTBQ USER-SPH
USER-TALLY USER-UEF USER-VTK USER-YAFF USER-DIELECTRIC)

View File

@ -4,7 +4,7 @@ set(WIN_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
USER-ATC USER-AWPMD USER-BOCS USER-BROWNIAN CG-DNA CG-SDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP
ML-HDNNP USER-INTEL USER-MANIFOLD USER-MDI MEAM USER-MESODPD
USER-MESONT USER-MISC USER-MGPT USER-MOFFF USER-MOLFILE USER-OMP
USER-MESONT USER-MISC USER-MGPT USER-MOFFF USER-MOLFILE OPENMP
USER-PHONON USER-PTM USER-QTB USER-REACTION USER-REAXC
USER-SDPD MACHDYN USER-SMTBQ USER-SPH USER-TALLY USER-UEF
USER-YAFF USER-DIELECTRIC)

View File

@ -7,7 +7,7 @@ set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE
PLUGIN POEMS PYTHON QEQ REPLICA RIGID SHOCK ML-SNAP SPIN SRD VORONOI
USER-BROWNIAN USER-BOCS CG-DNA CG-SDK USER-COLVARS
USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP MEAM
USER-MESODPD USER-MISC USER-MOFFF USER-OMP USER-PHONON USER-REACTION
USER-MESODPD USER-MISC USER-MOFFF OPENMP USER-PHONON USER-REACTION
USER-REAXC USER-SDPD USER-SPH MACHDYN USER-UEF USER-YAFF USER-DIELECTRIC)
foreach(PKG ${ALL_PACKAGES})

View File

@ -135,7 +135,7 @@ For example "-pk gpu 2" is the same as "package gpu 2" in the input
script. The possible styles and options are discussed in the
.B LAMMPS
manual for the "package" command. This switch can be used multiple
times, e.g. to set options for the USER-INTEL and USER-OMP packages
times, e.g. to set options for the USER-INTEL and OPENMP packages
when used together. Along with the "-sf" or "-suffix" switch, this
is a convenient mechanism for invoking accelerator packages and their
options without having to edit an input script.

View File

@ -120,9 +120,9 @@ self-installed MPICH or OpenMPI, so you should study the provided
documentation to find out how to build and link with it.
The majority of OpenMP (threading) support in LAMMPS is provided by the
``USER-OMP`` package; see the :doc:`Speed_omp`
``OPENMP`` package; see the :doc:`Speed_omp`
page for details. The ``USER-INTEL`` package also includes OpenMP
threading (it is compatible with ``USER-OMP`` and will usually fall
threading (it is compatible with ``OPENMP`` and will usually fall
back on styles from that package, if a ``USER-INTEL`` does not exist)
and adds vectorization support when compiled with compatible compilers,
in particular the Intel compilers on top of OpenMP. Also, the ``KOKKOS``
@ -325,7 +325,7 @@ LAMMPS.
.. code-block:: bash
Makefile.opt # OPT package
Makefile.omp # USER-OMP package
Makefile.omp # OPENMP package
Makefile.intel_cpu # USER-INTEL package for CPUs
Makefile.intel_coprocessor # USER-INTEL package for KNLs
Makefile.gpu # GPU package

View File

@ -310,7 +310,7 @@ and working.
parameter needs to be adjusted. Typically a value around 1.0e-13
can be used, but it may need to be as large as 1.0e-8 in some
cases.
- The tests for pair styles from OPT, USER-OMP and USER-INTEL are
- The tests for pair styles from OPT, OPENMP and USER-INTEL are
performed with automatically rescaled epsilon to account for
additional loss of precision from code optimizations and different
summation orders.
@ -345,7 +345,7 @@ and compared. If the fix is a thermostat and thus the internal property
``t_target`` can be extracted, then this is compared to the reference
data. The tests are repeated with the respa run style.
If the fix has a multi-threaded version in the USER-OMP package, then
If the fix has a multi-threaded version in the OPENMP package, then
the entire set of tests is repeated for that version as well.
For this to work, some additional conditions have to be met by the

View File

@ -56,7 +56,7 @@ This is the list of packages that may require additional steps.
* :ref:`USER-NETCDF <user-netcdf>`
* :ref:`ML-PACE <ml-pace>`
* :ref:`USER-PLUMED <user-plumed>`
* :ref:`USER-OMP <user-omp>`
* :ref:`OPENMP <openmp>`
* :ref:`USER-QMMM <user-qmmm>`
* :ref:`ML-QUIP <ml-quip>`
* :ref:`USER-SCAFACOS <user-scafacos>`
@ -1537,13 +1537,13 @@ USER-INTEL package
To build with this package, you must choose which hardware you want to
build for, either x86 CPUs or Intel KNLs in offload mode. You should
also typically :ref:`install the USER-OMP package <user-omp>`, as it can be
also typically :ref:`install the OPENMP package <openmp>`, as it can be
used in tandem with the USER-INTEL package to good effect, as explained
on the :doc:`Speed_intel` page.
When using Intel compilers version 16.0 or later is required. You can
also use the GNU or Clang compilers and they will provide performance
improvements over regular styles and USER-OMP styles, but less so than
improvements over regular styles and OPENMP styles, but less so than
with the Intel compilers. Please also note, that some compilers have
been found to apply memory alignment constraints incompletely or
incorrectly and thus can cause segmentation faults in otherwise correct
@ -1740,9 +1740,9 @@ on your system.
----------
.. _user-omp:
.. _openmp:
USER-OMP package
OPENMP package
-------------------------------
.. tabs::
@ -1750,13 +1750,13 @@ USER-OMP package
.. tab:: CMake build
No additional settings are required besides ``-D
PKG_USER-OMP=yes``. If CMake detects OpenMP compiler support, the
USER-OMP code will be compiled with multi-threading support
PKG_OPENMP=yes``. If CMake detects OpenMP compiler support, the
OPENMP code will be compiled with multi-threading support
enabled, otherwise as optimized serial code.
.. tab:: Traditional make
To enable multi-threading support in the USER-OMP package (and
To enable multi-threading support in the OPENMP package (and
other styles supporting OpenMP) the following compile and link
flags must be added to your Makefile.machine file. See
``src/MAKE/OPTIONS/Makefile.omp`` for an example.

View File

@ -120,7 +120,7 @@ settings may become outdated:
make intel_cpu # build with the USER-INTEL package optimized for CPUs
make knl # build with the USER-INTEL package optimized for KNLs
make opt # build with the OPT package optimized for CPUs
make omp # build with the USER-OMP package optimized for OpenMP
make omp # build with the OPENMP package optimized for OpenMP
make kokkos_omp # build with the KOKKOS package for OpenMP
make kokkos_cuda_mpi # build with the KOKKOS package for GPUs
make kokkos_phi # build with the KOKKOS package for KNLs

View File

@ -37,7 +37,7 @@ packages:
+--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+
| :ref:`USER-ATC <user-atc>` | :ref:`USER-AWPMD <user-awpmd>` | :ref:`USER-COLVARS <user-colvars>` | :ref:`USER-H5MD <user-h5md>` | :ref:`ML-HDNNP <ml-hdnnp>` | :ref:`USER-INTEL <user-intel>` |
+--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+
| :ref:`USER-MOLFILE <user-molfile>` | :ref:`USER-NETCDF <user-netcdf>` | :ref:`ML-PACE <ml-pace>` | :ref:`USER-PLUMED <user-plumed>` | :ref:`USER-OMP <user-omp>` | :ref:`USER-QMMM <user-qmmm>` |
| :ref:`USER-MOLFILE <user-molfile>` | :ref:`USER-NETCDF <user-netcdf>` | :ref:`ML-PACE <ml-pace>` | :ref:`USER-PLUMED <user-plumed>` | :ref:`OPENMP <openmp>` | :ref:`USER-QMMM <user-qmmm>` |
+--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+
| :ref:`ML-QUIP <ml-quip>` | :ref:`USER-SCAFACOS <user-scafacos>` | :ref:`MACHDYN <machdyn>` | :ref:`USER-VTK <user-vtk>` | | |
+--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+

View File

@ -64,7 +64,7 @@ LAMMPS can use them if they are available on your system.
selected, then CMake will try to detect, if threaded FFTW
libraries are available and enable them by default. This setting
is independent of whether OpenMP threads are enabled and a
packages like KOKKOS or USER-OMP is used. If CMake cannot detect
packages like KOKKOS or OPENMP is used. If CMake cannot detect
the FFT library, you can set these variables to assist:
.. code-block:: bash

View File

@ -18,7 +18,7 @@ Bond_style potentials
All LAMMPS :doc:`bond_style <bond_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
@ -57,7 +57,7 @@ Angle_style potentials
All LAMMPS :doc:`angle_style <angle_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
@ -99,7 +99,7 @@ Dihedral_style potentials
All LAMMPS :doc:`dihedral_style <dihedral_style>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
@ -135,7 +135,7 @@ Improper_style potentials
All LAMMPS :doc:`improper_style <improper_style>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::

View File

@ -17,7 +17,7 @@ Compute commands
An alphabetic list of all LAMMPS :doc:`compute <compute>` commands.
Some styles have accelerated versions. This is indicated by
additional letters in parenthesis: g = GPU, i = USER-INTEL, k =
KOKKOS, o = USER-OMP, t = OPT.
KOKKOS, o = OPENMP, t = OPT.
.. table_from_list::
:columns: 5

View File

@ -16,7 +16,7 @@ Fix commands
An alphabetic list of all LAMMPS :doc:`fix <fix>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::

View File

@ -16,7 +16,7 @@ KSpace solvers
All LAMMPS :doc:`kspace_style <kspace_style>` solvers. Some styles have
accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::

View File

@ -16,7 +16,7 @@ Pair_style potentials
All LAMMPS :doc:`pair_style <pair_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::

View File

@ -38,7 +38,7 @@ REAX package
The REAX package has been removed since it was superseded by the
:ref:`USER-REAXC package <PKG-USER-REAXC>`. The USER-REAXC
package has been tested to yield equivalent results to the REAX package,
offers better performance, supports OpenMP multi-threading via USER-OMP,
offers better performance, supports OpenMP multi-threading via OPENMP,
and GPU and threading parallelization through KOKKOS. The new pair styles
are not syntax compatible with the removed reax pair style, so input
files will have to be adapted.

View File

@ -404,7 +404,7 @@ noise). Then it will restart from the previously generated restart and
compare with the reference and also start from the data file. A final
check will use multi-cutoff r-RESPA (if supported by the pair style) at
a 1:1 split and compare to the Verlet results. These sets of tests are
run with multiple test fixtures for accelerated styles (OPT, USER-OMP,
run with multiple test fixtures for accelerated styles (OPT, OPENMP,
USER-INTEL) and for the latter two with 4 OpenMP threads enabled. For
these tests the relative error (epsilon) is lowered by a common factor
due to the additional numerical noise, but the tests are still comparing

View File

@ -5899,7 +5899,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
other.
*Must set number of threads via package omp command*
Because you are using the USER-OMP package, set the number of threads
Because you are using the OPENMP package, set the number of threads
via its settings, not by the pair_style snap nthreads setting.
*Must shrink-wrap piston boundary*
@ -6352,8 +6352,8 @@ keyword to allow for additional bonds to be formed
The KOKKOS package must be installed via "make yes-kokkos" before
LAMMPS is built, and the "-k on" must be used to enable the package.
*Package omp command without USER-OMP package installed*
The USER-OMP package must be installed via "make yes-user-omp" before
*Package omp command without OPENMP package installed*
The OPENMP package must be installed via "make yes-openmp" before
LAMMPS is built.
*Pair body requires atom style body*
@ -8070,7 +8070,7 @@ keyword to allow for additional bonds to be formed
*Using suffix kk without KOKKOS package enabled*
Self-explanatory.
*Using suffix omp without USER-OMP package installed*
*Using suffix omp without OPENMP package installed*
Self-explanatory.
*Using update dipole flag requires atom attribute mu*

View File

@ -529,7 +529,7 @@ This will most likely cause errors in kinetic fluctuations.
*OMP_NUM_THREADS environment is not set.*
This environment variable must be set appropriately to use the
USER-OMP package.
OPENMP package.
*One or more atoms are time integrated more than once*
This is probably an error since you typically do not want to

View File

@ -93,7 +93,7 @@ page gives those details.
* :ref:`USER-MOFFF <PKG-USER-MOFFF>`
* :ref:`USER-MOLFILE <PKG-USER-MOLFILE>`
* :ref:`USER-NETCDF <PKG-USER-NETCDF>`
* :ref:`USER-OMP <PKG-USER-OMP>`
* :ref:`OPENMP <PKG-OPENMP>`
* :ref:`ML-PACE <PKG-ML-PACE>`
* :ref:`USER-PHONON <PKG-USER-PHONON>`
* :ref:`USER-PLUMED <PKG-USER-PLUMED>`
@ -447,7 +447,7 @@ style name. The :doc:`KOKKOS package <Speed_kokkos>` page gives
details of what hardware and software is required on your system, and
how to build and use this package. Its styles can be invoked at run
time via the "-sf kk" or "-suffix kk" :doc:`command-line switches <Run_options>`. Also see the :ref:`GPU <PKG-GPU>`, :ref:`OPT <PKG-OPT>`,
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`USER-OMP <PKG-USER-OMP>` packages, which
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`OPENMP <PKG-OPENMP>` packages, which
have styles optimized for CPUs, KNLs, and GPUs.
You must have a C++14 compatible compiler to use this package.
@ -802,7 +802,7 @@ CHARMM, and Morse potentials. The styles have an "opt" suffix in
their style name. The :doc:`OPT package <Speed_opt>` page gives
details of how to build and use this package. Its styles can be
invoked at run time via the "-sf opt" or "-suffix opt" :doc:`command-line switches <Run_options>`. See also the :ref:`KOKKOS <PKG-KOKKOS>`,
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`USER-OMP <PKG-USER-OMP>` packages, which
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`OPENMP <PKG-OPENMP>` packages, which
have styles optimized for CPU performance.
**Authors:** James Fischer (High Performance Technologies), David Richie,
@ -1642,7 +1642,7 @@ All of them have an "intel" in their style name. The
compilers are required on your system, and how to build and use this
package. Its styles can be invoked at run time via the "-sf intel" or
"-suffix intel" :doc:`command-line switches <Run_options>`. Also see
the :ref:`KOKKOS <PKG-KOKKOS>`, :ref:`OPT <PKG-OPT>`, and :ref:`USER-OMP <PKG-USER-OMP>` packages,
the :ref:`KOKKOS <PKG-KOKKOS>`, :ref:`OPT <PKG-OPT>`, and :ref:`OPENMP <PKG-OPENMP>` packages,
which have styles optimized for CPUs and KNLs.
You need to have an Intel compiler, version 14 or higher to take full
@ -2021,9 +2021,9 @@ This package has :ref:`specific installation instructions <user-netcdf>` on the
----------
.. _PKG-USER-OMP:
.. _PKG-OPENMP:
USER-OMP package
OPENMP package
----------------
**Contents:**
@ -2031,7 +2031,7 @@ USER-OMP package
Hundreds of pair, fix, compute, bond, angle, dihedral, improper, and
kspace styles which are altered to enable threading on many-core CPUs
via OpenMP directives. All of them have an "omp" in their style name.
The :doc:`USER-OMP package <Speed_omp>` page gives details of what hardware
The :doc:`OPENMP package <Speed_omp>` page gives details of what hardware
and compilers are required on your system, and how to build and use
this package. Its styles can be invoked at run time via the "-sf omp"
or "-suffix omp" :doc:`command-line switches <Run_options>`. Also see
@ -2046,7 +2046,7 @@ packages, which have styles optimized for CPUs.
and the link flag "-fopenmp" (for GNU compilers, you have to look up
the equivalent flags for other compilers) must be used to build LAMMPS.
When using Intel compilers, also the "-restrict" flag is required.
The USER-OMP package can be compiled without enabling OpenMP; then
The OPENMP package can be compiled without enabling OpenMP; then
all code will be compiled as serial and the only improvement over the
regular styles are some data access optimization. These flags should
be added to the CCFLAGS and LINKFLAGS lines of your Makefile.machine.
@ -2057,16 +2057,17 @@ install/un-install the package and build LAMMPS in the usual manner:
**Install:**
This package has :ref:`specific installation instructions <user-omp>` on the :doc:`Build extras <Build_extras>` page.
This package has :ref:`specific installation instructions <openmp>` on
the :doc:`Build extras <Build_extras>` page.
**Supporting info:**
* src/USER-OMP: filenames -> commands
* src/USER-OMP/README
* src/OPENMP: filenames -> commands
* src/OPENMP/README
* :doc:`Accelerator packages <Speed_packages>`
* :doc:`USER-OMP package <Speed_omp>`
* :doc:`Section 2.6 -sf omp <Run_options>`
* :doc:`Section 2.6 -pk omp <Run_options>`
* :doc:`OPENMP package <Speed_omp>`
* :doc:`Command line option -suffix/-sf omp <Run_options>`
* :doc:`Command line option -package/-pk omp <Run_options>`
* :doc:`package omp <package>`
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`,

View File

@ -87,7 +87,7 @@ package:
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
| :ref:`USER-NETCDF <PKG-USER-NETCDF>` | dump output via NetCDF | :doc:`dump netcdf <dump_netcdf>` | n/a | ext |
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
| :ref:`USER-OMP <PKG-USER-OMP>` | OpenMP-enabled styles | :doc:`Speed omp <Speed_omp>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
| :ref:`OPENMP <PKG-OPENMP>` | OpenMP-enabled styles | :doc:`Speed omp <Speed_omp>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
| :ref:`ML-PACE <PKG-ML-PACE>` | Fast implementation of Atomic Cluster Expansion (ACE) potential | :doc:`pair pace <pair_pace>` | USER/pace | ext |
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+

View File

@ -89,7 +89,7 @@ in the :doc:`the KOKKOS package page <Speed_kokkos>`, this switch must be set to
running with KOKKOS-enabled styles the package provides. If the
switch is not set (the default), LAMMPS will operate as if the KOKKOS
package were not installed; i.e. you can run standard LAMMPS or with
the GPU or USER-OMP packages, for testing or benchmarking purposes.
the GPU or OPENMP packages, for testing or benchmarking purposes.
Additional optional keyword/value pairs can be specified which
determine how Kokkos will use the underlying hardware on your
@ -274,7 +274,7 @@ script. For example "-package gpu 2" or "-pk gpu 2" is the same as
:doc:`package gpu 2 <package>` in the input script. The possible styles
and args are documented on the :doc:`package <package>` doc page. This
switch can be used multiple times, e.g. to set options for the
USER-INTEL and USER-OMP packages which can be used together.
USER-INTEL and OPENMP packages which can be used together.
Along with the "-suffix" command-line switch, this is a convenient
mechanism for invoking accelerator packages and their options without
@ -542,14 +542,14 @@ refer to optional packages that LAMMPS can be built with, as described
in :doc:`Accelerate performance <Speed>`. The "gpu" style corresponds to the
GPU package, the "intel" style to the USER-INTEL package, the "kk"
style to the KOKKOS package, the "opt" style to the OPT package, and
the "omp" style to the USER-OMP package. The hybrid style is the only
the "omp" style to the OPENMP package. The hybrid style is the only
style that accepts arguments. It allows for two packages to be
specified. The first package specified is the default and will be used
if it is available. If no style is available for the first package,
the style for the second package will be used if available. For
example, "-suffix hybrid intel omp" will use styles from the
USER-INTEL package if they are installed and available, but styles for
the USER-OMP package otherwise.
the OPENMP package otherwise.
Along with the "-package" command-line switch, this is a convenient
mechanism for invoking accelerator packages and their options without
@ -575,10 +575,10 @@ invokes the default USER-INTEL settings, as if the command "package
intel 1" were used at the top of your input script. These settings
can be changed by using the "-package intel" command-line switch or
the :doc:`package intel <package>` command in your script. If the
USER-OMP package is also installed, the hybrid style with "intel omp"
OPENMP package is also installed, the hybrid style with "intel omp"
arguments can be used to make the omp suffix a second choice, if a
requested style is not available in the USER-INTEL package. It will
also invoke the default USER-OMP settings, as if the command "package
also invoke the default OPENMP settings, as if the command "package
omp 0" were used at the top of your input script. These settings can
be changed by using the "-package omp" command-line switch or the
:doc:`package omp <package>` command in your script.

View File

@ -11,7 +11,7 @@ To run a serial (non-MPI) executable, follow these steps:
in.file is the name of your LAMMPS input script.
Note that the serial executable includes support for multi-threading
parallelization from the styles in the USER-OMP packages. To run with
parallelization from the styles in the OPENMP packages. To run with
4 threads, you can type this:
.. code-block:: bash

View File

@ -67,8 +67,8 @@ section below for examples where this has been done.
pair style - on the CPU. This can often be easily achieved with placing
a *suffix off* command before and a *suffix on* command after the
*kspace_style pppm* command.
* The KOKKOS/OpenMP and USER-OMP package have different thread management
strategies, which should result in USER-OMP being more efficient for a
* The KOKKOS/OpenMP and OPENMP package have different thread management
strategies, which should result in OPENMP being more efficient for a
small number of threads with increasing overhead as the number of threads
per MPI rank grows. The KOKKOS/OpenMP kernels have less overhead in that
case, but have lower performance with few threads.

View File

@ -150,7 +150,7 @@ hardware, which pair style is used, the number of atoms/GPU, and the
precision used on the GPU (double, single, mixed). Using the GPU package
in OpenCL mode on CPUs (which uses vectorization and multithreading) is
usually resulting in inferior performance compared to using LAMMPS' native
threading and vectorization support in the USER-OMP and USER-INTEL packages.
threading and vectorization support in the OPENMP and USER-INTEL packages.
See the `Benchmark page <https://www.lammps.org/bench.html>`_ of the
LAMMPS web site for performance of the GPU package on various

View File

@ -185,7 +185,7 @@ can start running so that the CPU pipeline is still being used
efficiently. Although benefits can be seen by launching a MPI task
for every hardware thread, for multinode simulations, we recommend
that OpenMP threads are used for SMT instead, either with the
USER-INTEL package, :doc:`USER-OMP package <Speed_omp>`, or
USER-INTEL package, :doc:`OPENMP package <Speed_omp>`, or
:doc:`KOKKOS package <Speed_kokkos>`. In the example above, up
to 36X speedups can be observed by using all 36 physical cores with
LAMMPS. By using all 72 hardware threads, an additional 10-30%
@ -409,7 +409,7 @@ when using offload.
Not all styles are supported in the USER-INTEL package. You can mix
the USER-INTEL package with styles from the :doc:`OPT <Speed_opt>`
package or the :doc:`USER-OMP package <Speed_omp>`. Of course, this
package or the :doc:`OPENMP package <Speed_omp>`. Of course, this
requires that these packages were installed at build time. This can
performed automatically by using "-sf hybrid intel opt" or "-sf hybrid
intel omp" command-line options. Alternatively, the "opt" and "omp"

View File

@ -390,10 +390,10 @@ Generally speaking, the following rules of thumb apply:
* When running on CPUs only, with a single thread per MPI task,
performance of a KOKKOS style is somewhere between the standard
(un-accelerated) styles (MPI-only mode), and those provided by the
USER-OMP package. However the difference between all 3 is small (less
OPENMP package. However the difference between all 3 is small (less
than 20%).
* When running on CPUs only, with multiple threads per MPI task,
performance of a KOKKOS style is a bit slower than the USER-OMP
performance of a KOKKOS style is a bit slower than the OPENMP
package.
* When running large number of atoms per GPU, KOKKOS is typically faster
than the GPU package when compiled for double precision. The benefit

View File

@ -1,7 +1,7 @@
USER-OMP package
OPENMP package
================
The USER-OMP package was developed by Axel Kohlmeyer at Temple
The OPENMP package was developed by Axel Kohlmeyer at Temple
University. It provides optimized and multi-threaded versions
of many pair styles, nearly all bonded styles (bond, angle, dihedral,
improper), several Kspace styles, and a few fix styles. It uses
@ -15,13 +15,13 @@ To enable multi-threading, your compiler must support the OpenMP interface.
You should have one or more multi-core CPUs, as multiple threads can only be
launched by each MPI task on the local node (using shared memory).
Building LAMMPS with the USER-OMP package
Building LAMMPS with the OPENMP package
"""""""""""""""""""""""""""""""""""""""""
See the :ref:`Build extras <user-omp>` doc page for
See the :ref:`Build extras <openmp>` doc page for
instructions.
Run with the USER-OMP package from the command line
Run with the OPENMP package from the command line
"""""""""""""""""""""""""""""""""""""""""""""""""""
These examples assume one or more 16-core nodes.
@ -39,7 +39,7 @@ tasks used per node. E.g. the mpirun command in MPICH does this via
its -np and -ppn switches. Ditto for OpenMPI via -np and -npernode.
You need to choose how many OpenMP threads per MPI task will be used
by the USER-OMP package. Note that the product of MPI tasks \*
by the OPENMP package. Note that the product of MPI tasks \*
threads/task should not exceed the physical number of cores (on a
node), otherwise performance will suffer.
@ -55,7 +55,7 @@ details, including the default values used if it is not specified. It
also gives more details on how to set the number of threads via the
OMP_NUM_THREADS environment variable.
Or run with the USER-OMP package by editing an input script
Or run with the OPENMP package by editing an input script
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The discussion above for the mpirun/mpiexec command, MPI tasks/node,
@ -69,7 +69,7 @@ Use the :doc:`suffix omp <suffix>` command, or you can explicitly add an
pair_style lj/cut/omp 2.5
You must also use the :doc:`package omp <package>` command to enable the
USER-OMP package. When you do this you also specify how many threads
OPENMP package. When you do this you also specify how many threads
per MPI task to use. The command doc page explains other options and
how to set the number of threads via the OMP_NUM_THREADS environment
variable.
@ -82,10 +82,10 @@ reduction in the "Pair time", "Bond time", "KSpace time", and "Loop
time" values printed at the end of a run.
You may see a small performance advantage (5 to 20%) when running a
USER-OMP style (in serial or parallel) with a single thread per MPI
OPENMP style (in serial or parallel) with a single thread per MPI
task, versus running standard LAMMPS with its standard un-accelerated
styles (in serial or all-MPI parallelization with 1 task/core). This
is because many of the USER-OMP styles contain similar optimizations
is because many of the OPENMP styles contain similar optimizations
to those used in the OPT package, described in
:doc:`the OPT package <Speed_opt>` doc page.
@ -95,19 +95,19 @@ tested via benchmark runs for a specific simulation running on a
specific machine, paying attention to guidelines discussed in the next
sub-section.
A description of the multi-threading strategy used in the USER-OMP
A description of the multi-threading strategy used in the OPENMP
package and some performance examples are
`presented here <http://sites.google.com/site/akohlmey/software/lammps-icms/lammps-icms-tms2011-talk.pdf?attredirects=0&d=1>`_.
Guidelines for best performance
"""""""""""""""""""""""""""""""
For many problems on current generation CPUs, running the USER-OMP
For many problems on current generation CPUs, running the OPENMP
package with a single thread/task is faster than running with multiple
threads/task. This is because the MPI parallelization in LAMMPS is
often more efficient than multi-threading as implemented in the
USER-OMP package. The parallel efficiency (in a threaded sense) also
varies for different USER-OMP styles.
OPENMP package. The parallel efficiency (in a threaded sense) also
varies for different OPENMP styles.
Using multiple threads/task can be more effective under the following
circumstances:
@ -143,7 +143,7 @@ circumstances:
sometimes be achieved by increasing the length of the Coulombic cutoff
and thus reducing the work done by the long-range solver. Using the
:doc:`run_style verlet/split <run_style>` command, which is compatible
with the USER-OMP package, is an alternative way to reduce the number
with the OPENMP package, is an alternative way to reduce the number
of MPI tasks assigned to the KSpace calculation.
Additional performance tips are as follows:

View File

@ -22,7 +22,7 @@ standard or user packages:
+-----------------------------------------+-------------------------------------------------------+
| :doc:`KOKKOS Package <Speed_kokkos>` | for NVIDIA GPUs, Intel Xeon Phi, and OpenMP threading |
+-----------------------------------------+-------------------------------------------------------+
| :doc:`USER-OMP Package <Speed_omp>` | for OpenMP threading and generic CPU optimizations |
| :doc:`OPENMP Package <Speed_omp>` | for OpenMP threading and generic CPU optimizations |
+-----------------------------------------+-------------------------------------------------------+
| :doc:`OPT Package <Speed_opt>` | generic CPU optimizations |
+-----------------------------------------+-------------------------------------------------------+
@ -41,7 +41,7 @@ Inverting this list, LAMMPS currently has acceleration support for
three kinds of hardware, via the listed packages:
+-----------------+-----------------------------------------------------------------------------------------------------------------------------+
| Many-core CPUs | :doc:`USER-INTEL <Speed_intel>`, :doc:`KOKKOS <Speed_kokkos>`, :doc:`USER-OMP <Speed_omp>`, :doc:`OPT <Speed_opt>` packages |
| Many-core CPUs | :doc:`USER-INTEL <Speed_intel>`, :doc:`KOKKOS <Speed_kokkos>`, :doc:`OPENMP <Speed_omp>`, :doc:`OPT <Speed_opt>` packages |
+-----------------+-----------------------------------------------------------------------------------------------------------------------------+
| GPUs | :doc:`GPU <Speed_gpu>`, :doc:`KOKKOS <Speed_kokkos>` packages |
+-----------------+-----------------------------------------------------------------------------------------------------------------------------+
@ -86,7 +86,7 @@ listed above:
+--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
| install the accelerator package | make yes-opt, make yes-user-intel, etc |
+--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
| add compile/link flags to Makefile.machine in src/MAKE | only for USER-INTEL, KOKKOS, USER-OMP, OPT packages |
| add compile/link flags to Makefile.machine in src/MAKE | only for USER-INTEL, KOKKOS, OPENMP, OPT packages |
+--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
| re-build LAMMPS | make machine |
+--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+
@ -167,7 +167,7 @@ are in the individual accelerator sections.
run using OpenMP on multicore CPUs, on an NVIDIA or AMD GPU, or on an
Intel Xeon Phi in "native" mode. The speed-up depends on a variety of
factors, as discussed on the KOKKOS accelerator page.
* Styles with an "omp" suffix are part of the USER-OMP package and allow
* Styles with an "omp" suffix are part of the OPENMP package and allow
a pair-style to be run in multi-threaded mode using OpenMP. This can
be useful on nodes with high-core counts when using less MPI processes
than cores is advantageous, e.g. when running with PPPM so that FFTs

View File

@ -6,7 +6,7 @@ page. The accelerated styles take the same arguments and should
produce the same results, except for round-off and precision issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
OPENMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
You can specify the accelerated styles explicitly in your input script

View File

@ -64,7 +64,7 @@ page. The accelerated styles take the same arguments and should
produce the same results, except for round-off and precision issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
OPENMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
You can specify the accelerated styles explicitly in your input script

View File

@ -319,7 +319,7 @@ styles take the same arguments and should produce the same results,
except for round-off and precision issues.
Note that other acceleration packages in LAMMPS, specifically the GPU,
USER-INTEL, USER-OMP, and OPT packages do not use accelerated atom
USER-INTEL, OPENMP, and OPT packages do not use accelerated atom
styles.
The accelerated styles are part of the KOKKOS package. They are only

View File

@ -72,7 +72,7 @@ page. The accelerated styles take the same arguments and should
produce the same results, except for round-off and precision issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
OPENMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the :doc:`Build package
<Build_package>` doc page for more info.

View File

@ -90,7 +90,7 @@ to debug error messages like "All pair coeffs are not set".
The *accelerator* category prints out information about compile time
settings of included accelerator support for the GPU, KOKKOS, USER-INTEL,
and USER-OMP packages.
and OPENMP packages.
The *styles* category prints the list of styles available in the
current LAMMPS binary. It supports one of the following options

View File

@ -421,7 +421,7 @@ calculations, along with the FFTs themselves, on the GPU or (optionally) threade
on the CPU when using OpenMP and FFTW3.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP, and OPT packages respectively. They are only enabled if
OPENMP, and OPT packages respectively. They are only enabled if
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
See the :doc:`Speed packages <Speed_packages>` doc page for more

View File

@ -131,7 +131,7 @@ Description
This command invokes package-specific settings for the various
accelerator packages available in LAMMPS. Currently the following
packages use settings from this command: GPU, USER-INTEL, KOKKOS, and
USER-OMP.
OPENMP.
If this command is specified in an input script, it must be near the
top of the script, before the simulation box has been defined. This
@ -152,7 +152,7 @@ accelerator settings.
The KOKKOS package requires a "-k on" :doc:`command-line switch <Run_options>` respectively, which invokes a "package
kokkos" command with default settings.
For the GPU, USER-INTEL, and USER-OMP packages, if a "-sf gpu" or "-sf
For the GPU, USER-INTEL, and OPENMP packages, if a "-sf gpu" or "-sf
intel" or "-sf omp" :doc:`command-line switch <Run_options>` is used to
auto-append accelerator suffixes to various styles in the input
script, then those switches also invoke a "package gpu", "package
@ -556,7 +556,7 @@ result in better performance for certain configurations and system sizes.
----------
The *omp* style invokes settings associated with the use of the
USER-OMP package.
OPENMP package.
The *Nthreads* argument sets the number of OpenMP threads allocated for
each MPI task. For example, if your system has nodes with dual
@ -595,12 +595,12 @@ for OpenMPI. Check your MPI documentation for additional details.
What combination of threads and MPI tasks gives the best performance
is difficult to predict and can depend on many components of your
input. Not all features of LAMMPS support OpenMP threading via the
USER-OMP package and the parallel efficiency can be very different,
OPENMP package and the parallel efficiency can be very different,
too.
.. note::
If you build LAMMPS with the GPU, USER-INTEL, and / or USER-OMP
If you build LAMMPS with the GPU, USER-INTEL, and / or OPENMP
packages, be aware these packages all allow setting of the *Nthreads*
value via their package commands, but there is only a single global
*Nthreads* value used by OpenMP. Thus if multiple package commands are
@ -649,7 +649,7 @@ with the KOKKOS package. See the :doc:`Build package <Build_package>`
doc page for more info.
The omp style of this command can only be invoked if LAMMPS was built
with the USER-OMP package. See the :doc:`Build package <Build_package>`
with the OPENMP package. See the :doc:`Build package <Build_package>`
doc page for more info.
Related commands

View File

@ -73,7 +73,7 @@ depending on your available hardware, as discussed on the :doc:`Speed packages <
the same arguments and should produce the same results, except for
round-off and precision issues.
The accelerated style is part of the USER-OMP. They are only enabled
The accelerated style is part of the OPENMP. They are only enabled
if LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
You can specify the accelerated style explicitly in your input script

View File

@ -389,7 +389,7 @@ corresponding suffix to all sub-styles, if those versions
exist. Otherwise the non-accelerated version will be used.
The individual accelerated sub-styles are part of the GPU, KOKKOS,
USER-INTEL, USER-OMP, and OPT packages, respectively. They are only
USER-INTEL, OPENMP, and OPT packages, respectively. They are only
enabled if LAMMPS was built with those packages. See the :doc:`Build
package <Build_package>` doc page for more info.

View File

@ -167,7 +167,7 @@ page. The accelerated styles take the same arguments and should
produce the same results, except for round-off and precision issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
OPENMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
You can specify the accelerated styles explicitly in your input script

View File

@ -308,7 +308,7 @@ Restrictions
The *verlet/split* style can only be used if LAMMPS was built with the
REPLICA package. Correspondingly the *respa/omp* style is available
only if the USER-OMP package was included. See the :doc:`Build package <Build_package>` doc page for more info.
only if the OPENMP package was included. See the :doc:`Build package <Build_package>` doc page for more info.
Whenever using rRESPA, the user should experiment with trade-offs in
speed and accuracy for their system, and verify that they are

View File

@ -37,7 +37,7 @@ The specified style can be *gpu*\ , *intel*\ , *kk*\ , *omp*\ , *opt* or
with, as described on the :doc:`Build package <Build_package>` doc page.
The "gpu" style corresponds to the GPU package, the "intel" style to
the USER-INTEL package, the "kk" style to the KOKKOS package, the
"omp" style to the USER-OMP package, and the "opt" style to the OPT
"omp" style to the OPENMP package, and the "opt" style to the OPT
package.
These are the variants these packages provide:
@ -50,7 +50,7 @@ These are the variants these packages provide:
* KOKKOS = a collection of atom, pair, and fix styles optimized to run
using the Kokkos library on various kinds of hardware, including GPUs
via CUDA and many-core chips via OpenMP or threading.
* USER-OMP = a collection of pair, bond, angle, dihedral, improper,
* OPENMP = a collection of pair, bond, angle, dihedral, improper,
kspace, compute, and fix styles with support for OpenMP
multi-threading
* OPT = a handful of pair styles, cache-optimized for faster CPU
@ -75,7 +75,7 @@ For "hybrid", two packages are specified. The first is used whenever
available. If a style with the first suffix is not available, the style
with the suffix for the second package will be used if available. For
example, "hybrid intel omp" will use styles from the USER-INTEL package
as a first choice and styles from the USER-OMP package as a second choice
as a first choice and styles from the OPENMP package as a second choice
if no USER-INTEL variant is available.
If the specified style is *off*\ , then any previously specified suffix

View File

@ -943,7 +943,7 @@ features or LAMMPS, *respa* allows to check whether the inner/middle/outer
mode of r-RESPA is supported. In the various style categories,
the checking is also done using suffix flags, if available and enabled.
Example 1: disable use of suffix for pppm when using GPU package (i.e. run it on the CPU concurrently to running the pair style on the GPU), but do use the suffix otherwise (e.g. with USER-OMP).
Example 1: disable use of suffix for pppm when using GPU package (i.e. run it on the CPU concurrently to running the pair style on the GPU), but do use the suffix otherwise (e.g. with OPENMP).
.. code-block:: LAMMPS

View File

@ -44,7 +44,7 @@ include(LAMMPSInterfaceCXX)
# building the plugins
add_library(morse2plugin MODULE morse2plugin.cpp pair_morse2.cpp pair_morse2_omp.cpp)
target_include_directories(morse2plugin PRIVATE "${LAMMPS_HEADER_DIR}/USER-OMP")
target_include_directories(morse2plugin PRIVATE "${LAMMPS_HEADER_DIR}/OPENMP")
target_link_libraries(morse2plugin PRIVATE lammps)
add_library(nve2plugin MODULE nve2plugin.cpp fix_nve2.cpp)

View File

@ -1,5 +1,5 @@
CXX=mpicxx
CXXFLAGS=-I../../src -Wall -Wextra -O3 -fPIC -I../../src/USER-OMP -fopenmp
CXXFLAGS=-I../../src -Wall -Wextra -O3 -fPIC -I../../src/OPENMP -fopenmp
LD=$(CXX) -shared -rdynamic -fopenmp
DSOEXT=.so

View File

@ -1,5 +1,5 @@
CXX=mpicxx
CXXFLAGS=-I../../src -Wall -Wextra -O3 -fPIC -I../../src/USER-OMP
CXXFLAGS=-I../../src -Wall -Wextra -O3 -fPIC -I../../src/OPENMP
LD=$(CXX) -bundle -rdynamic -Wl,-undefined,dynamic_lookup
DSOEXT=.dylib

View File

@ -1,5 +1,5 @@
CXX=g++
CXXFLAGS=-I../../src -I../../src/STUBS -Wall -Wextra -O3 -fPIC -I../../src/USER-OMP -fopenmp
CXXFLAGS=-I../../src -I../../src/STUBS -Wall -Wextra -O3 -fPIC -I../../src/OPENMP -fopenmp
LD=$(CXX) -shared -rdynamic -fopenmp
DSOEXT=.so

View File

@ -1536,7 +1536,7 @@ class lammps(object):
"""
result = {}
for p in ['GPU', 'KOKKOS', 'USER-INTEL', 'USER-OMP']:
for p in ['GPU', 'KOKKOS', 'USER-INTEL', 'OPENMP']:
result[p] = {}
c = 'api'
result[p][c] = []

View File

@ -47,7 +47,7 @@ depend () {
if (test $1 = "ASPHERE") then
depend GPU
depend USER-OMP
depend OPENMP
depend CG-DNA
depend USER-INTEL
fi
@ -55,22 +55,22 @@ fi
if (test $1 = "CLASS2") then
depend GPU
depend KOKKOS
depend USER-OMP
depend OPENMP
fi
if (test $1 = "COLLOID") then
depend GPU
depend USER-OMP
depend OPENMP
fi
if (test $1 = "DIPOLE") then
depend USER-MISC
depend USER-OMP
depend OPENMP
fi
if (test $1 = "GRANULAR") then
depend KOKKOS
depend USER-OMP
depend OPENMP
fi
if (test $1 = "KSPACE") then
@ -78,7 +78,7 @@ if (test $1 = "KSPACE") then
depend GPU
depend KOKKOS
depend OPT
depend USER-OMP
depend OPENMP
depend USER-INTEL
depend USER-PHONON
depend USER-FEP
@ -90,7 +90,7 @@ if (test $1 = "MANYBODY") then
depend OPT
depend QEQ
depend USER-MISC
depend USER-OMP
depend OPENMP
fi
if (test $1 = "MOLECULE") then
@ -98,12 +98,12 @@ if (test $1 = "MOLECULE") then
depend KOKKOS
depend USER-MISC
depend USER-FEP
depend USER-OMP
depend OPENMP
depend USER-INTEL
fi
if (test $1 = "PERI") then
depend USER-OMP
depend OPENMP
fi
if (test $1 = "PYTHON") then
@ -112,7 +112,7 @@ fi
if (test $1 = "RIGID") then
depend KOKKOS
depend USER-OMP
depend OPENMP
depend USER-SDPD
fi
@ -124,7 +124,7 @@ fi
if (test $1 = "CG-SDK") then
depend GPU
depend KOKKOS
depend USER-OMP
depend OPENMP
fi
if (test $1 = "USER-DPD") then
@ -132,20 +132,20 @@ if (test $1 = "USER-DPD") then
fi
if (test $1 = "USER-DRUDE") then
depend USER-OMP
depend OPENMP
fi
if (test $1 = "USER-FEP") then
depend USER-OMP
depend OPENMP
fi
if (test $1 = "USER-MISC") then
depend GPU
depend USER-OMP
depend OPENMP
depend USER-INTEL
fi
if (test $1 = "USER-REAXC") then
depend KOKKOS
depend USER-OMP
depend OPENMP
fi

View File

@ -1532,7 +1532,7 @@ void PPPMKokkos<DeviceType>::operator()(TagPPPM_make_rho_atomic, const int &i) c
template<class DeviceType>
KOKKOS_INLINE_FUNCTION
void PPPMKokkos<DeviceType>::operator() (TagPPPM_make_rho, typename Kokkos::TeamPolicy<DeviceType, TagPPPM_make_rho>::member_type dev) const {
// adapted from USER-OMP/pppm.cpp:
// adapted from OPENMP/pppm.cpp:
// determine range of grid points handled by this thread
int tid = dev.league_rank();

View File

@ -1,4 +1,4 @@
# omp = USER-OMP package, MPI with its default compiler
# omp = OPENMP package, MPI with its default compiler
SHELL = /bin/sh

View File

@ -63,7 +63,7 @@ the compiler wrapped by mpicxx. Setting this requires a different
syntax for different MPIs.
Makefile.opt OPT package, using default MPI
Makefile.omp USER-OMP package, using default MPI
Makefile.omp OPENMP package, using default MPI
Makefile.gpu GPU package, using default MPI
Makefile.intel_cpu_intelmpi USER-INTEL package for CPU with Intel MPI

View File

@ -55,7 +55,7 @@ PACKUSER = user-adios user-atc user-awpmd user-brownian user-bocs cg-dna \
cg-sdk user-colvars user-dielectric user-diffraction user-dpd user-drude \
user-eff user-fep user-h5md ml-hdnnp user-intel latboltz user-manifold \
user-mdi meam user-mesodpd user-mesont user-mgpt user-misc \
user-mofff user-molfile user-netcdf user-omp user-phonon \
user-mofff user-molfile user-netcdf openmp user-phonon \
ml-pace user-plumed user-ptm user-qmmm user-qtb ml-quip \
ml-rann user-reaction user-reaxc user-scafacos machdyn user-smtbq \
user-sdpd user-sph user-tally user-uef user-vtk user-yaff

Some files were not shown because too many files have changed in this diff Show More