forked from lijiext/lammps
rename to LAMMPS_OMP_COMPAT, improve docs
This commit is contained in:
parent
0bedebc083
commit
6563331d6e
|
@ -242,9 +242,9 @@ if(BUILD_OMP)
|
||||||
|
|
||||||
if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 8.99.9))
|
if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 8.99.9))
|
||||||
# GCC 9.x strictly implements OpenMP 4.0 semantics for consts.
|
# GCC 9.x strictly implements OpenMP 4.0 semantics for consts.
|
||||||
add_definitions(-DLMP_OMP_COMPAT=4)
|
add_definitions(-DLAMMPS_OMP_COMPAT=4)
|
||||||
else()
|
else()
|
||||||
add_definitions(-DLMP_OMP_COMPAT=3)
|
add_definitions(-DLAMMPS_OMP_COMPAT=3)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -264,6 +264,16 @@ cmake -C ../cmake/presets/all_on.cmake -C ../cmake/presets/nolib.cmake -D PKG_GP
|
||||||
</dl>
|
</dl>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><code>LAMMPS_OMP_COMPAT</code></td>
|
||||||
|
<td>Workaround for backwards-incompatible changes regarding predetermined sharing modes in OpenMP 4.x. A value of 3 or 4 should be used, reflecting the version of the OpenMP spec that is implemented by the compiler.</td>
|
||||||
|
<td>
|
||||||
|
<dl>
|
||||||
|
<dt><code>3</code> (default except for known OMP 4.0 compilers)</dt>
|
||||||
|
<dt><code>4</code></dt>
|
||||||
|
</dl>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><code>LAMMPS_MEMALIGN</code></td>
|
<td><code>LAMMPS_MEMALIGN</code></td>
|
||||||
<td>controls the alignment of blocks of memory allocated by LAMMPS</td>
|
<td>controls the alignment of blocks of memory allocated by LAMMPS</td>
|
||||||
|
|
|
@ -147,7 +147,8 @@ semantics, which are incompatible with the OpenMP 3.1 semantics used
|
||||||
in LAMMPS (for maximal compatibility with compiler versions in use).
|
in LAMMPS (for maximal compatibility with compiler versions in use).
|
||||||
LAMMPS will try to detect compilers that use OpenMP 4.0 semantics and
|
LAMMPS will try to detect compilers that use OpenMP 4.0 semantics and
|
||||||
change the directives accordingly, but if your compiler is not
|
change the directives accordingly, but if your compiler is not
|
||||||
detected, you may set the CMake variable ``-D LMP_OMP_COMPAT=4``.
|
detected, you may set the define ``-D LAMMPS_OMP_COMPAT=4`` in ``LMP_INC``
|
||||||
|
or the CMake build command.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
// so this is what LAMMPS primarily uses. For those compilers
|
// so this is what LAMMPS primarily uses. For those compilers
|
||||||
// that strictly implement OpenMP 4.0 (such as GCC 9.0), we
|
// that strictly implement OpenMP 4.0 (such as GCC 9.0), we
|
||||||
// give up default(none).
|
// give up default(none).
|
||||||
#if LMP_OMP_COMPAT == 4
|
#if LAMMPS_OMP_COMPAT == 4
|
||||||
# define LMP_SHARED(...)
|
# define LMP_SHARED(...)
|
||||||
# define LMP_DEFAULT_NONE default(shared)
|
# define LMP_DEFAULT_NONE default(shared)
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in New Issue