git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14090 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
sjplimp 2015-10-05 15:19:04 +00:00
parent 0e398e5e65
commit bee7ed920a
9 changed files with 129 additions and 111 deletions

View File

@ -1651,16 +1651,23 @@ writes screen information to a file.N. For both one-partition and
multi-partition mode, if the specified file is “none”, then no screen
output is performed. Option -pscreen will override the name of the
partition screen files file.N.</p>
<div class="highlight-python"><div class="highlight"><pre>-suffix style
<div class="highlight-python"><div class="highlight"><pre>-suffix style args
</pre></div>
</div>
<p>Use variants of various styles if they exist. The specified style can
be <em>cuda</em>, <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or <em>opt</em>. These refer to
optional packages that LAMMPS can be built with, as described above in
be <em>cuda</em>, <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, <em>opt</em>, or <em>hybrid</em>. These refer
to optional packages that LAMMPS can be built with, as described above in
<a class="reference internal" href="#start-3"><span>Section 2.3</span></a>. The &#8220;cuda&#8221; style corresponds to the USER-CUDA
package, the &#8220;gpu&#8221; style to the GPU package, the &#8220;intel&#8221; style to the
USER-INTEL package, the &#8220;kk&#8221; style to the KOKKOS package, the &#8220;opt&#8221;
style to the OPT package, and the &#8220;omp&#8221; style to the USER-OMP package.</p>
style to the OPT package, and the &#8220;omp&#8221; style to the USER-OMP 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, &#8220;-suffix hybrid intel omp&#8221; will use styles from the USER-INTEL
package if they are installed and available, but styles for the USER-OMP
package otherwise.</p>
<p>Along with the &#8220;-package&#8221; command-line switch, this is a convenient
mechanism for invoking accelerator packages and their options without
having to edit an input script.</p>
@ -1681,14 +1688,14 @@ the &#8220;-package gpu&#8221; command-line switch or the <a class="reference in
invokes the default USER-INTEL settings, as if the command &#8220;package
intel 1&#8221; were used at the top of your input script. These settings
can be changed by using the &#8220;-package intel&#8221; command-line switch or
the <a class="reference internal" href="package.html"><em>package intel</em></a> command in your script. If the
USER-OMP package is also installed, the intel suffix will 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 &#8220;package omp 0&#8221; were used at the top of
your input script. These settings can be changed by using the
&#8220;-package omp&#8221; command-line switch or the <a class="reference internal" href="package.html"><em>package omp</em></a>
command in your script.</p>
the <a class="reference internal" href="package.html"><em>package intel</em></a> command in your script. If the
USER-OMP package is also installed, the hybrid style with &#8220;intel omp&#8221;
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 &#8220;package
omp 0&#8221; were used at the top of your input script. These settings can
be changed by using the &#8220;-package omp&#8221; command-line switch or the
<a class="reference internal" href="package.html"><em>package omp</em></a> command in your script.</p>
<p>For the KOKKOS package, using this command-line switch also invokes
the default KOKKOS settings, as if the command &#8220;package kokkos&#8221; were
used at the top of your input script. These settings can be changed

View File

@ -1645,15 +1645,22 @@ multi-partition mode, if the specified file is "none", then no screen
output is performed. Option -pscreen will override the name of the
partition screen files file.N.
-suffix style :pre
-suffix style args :pre
Use variants of various styles if they exist. The specified style can
be {cuda}, {gpu}, {intel}, {kk}, {omp}, or {opt}. These refer to
optional packages that LAMMPS can be built with, as described above in
be {cuda}, {gpu}, {intel}, {kk}, {omp}, {opt}, or {hybrid}. These refer
to optional packages that LAMMPS can be built with, as described above in
"Section 2.3"_#start_3. The "cuda" style corresponds to the USER-CUDA
package, the "gpu" style 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.
style to the OPT package, and the "omp" style to the USER-OMP 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.
Along with the "-package" command-line switch, this is a convenient
mechanism for invoking accelerator packages and their options without
@ -1680,14 +1687,14 @@ For the USER-INTEL package, using this command-line switch also
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 "package intel"_package.html command in your script. If the
USER-OMP package is also installed, the intel suffix will 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 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 "package omp"_package.html
command in your script.
the "package intel"_package.html command in your script. If the
USER-OMP 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
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
"package omp"_package.html command in your script.
For the KOKKOS package, using this command-line switch also invokes
the default KOKKOS settings, as if the command "package kokkos" were

View File

@ -145,15 +145,15 @@ cores. Since less MPI tasks than CPU cores will typically be invoked
when running with coprocessors, this enables the extra CPU cores to be
used for useful computation.</p>
<p>If LAMMPS is built with both the USER-INTEL and USER-OMP packages
intsalled, this mode of operation is made easier to use, because the
&#8220;-suffix intel&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switch</span></a> or
the <a class="reference internal" href="suffix.html"><em>suffix intel</em></a> command will both set a second-choice
suffix to &#8220;omp&#8221; so that styles from the USER-OMP package will be used
if available, after first testing if a style from the USER-INTEL
installed, this mode of operation is made easier to use, with the
&#8220;-suffix hybrid intel omp&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switch</span></a>
or the <a class="reference internal" href="suffix.html"><em>suffix hybrid intel omp</em></a> command will both set a
second-choice suffix to &#8220;omp&#8221; so that styles from the USER-OMP package will be
used if available, after first testing if a style from the USER-INTEL
package is available.</p>
<p>When using the USER-INTEL package, you must choose at build time
whether you are building for CPU-only acceleration or for using the
Xeon Phi in offload mode.</p>
<p>When using the USER-INTEL package, you must choose at build time whether the
binary will support offload to Xeon Phi coprocessors. Binaries supporting
offload can still be run in CPU-only (host-only) mode.</p>
<p>Here is a quick overview of how to use the USER-INTEL package
for CPU-only acceleration:</p>
<ul class="simple">
@ -259,15 +259,14 @@ the physical number of cores (on a node), otherwise performance will
suffer.</p>
<p>If LAMMPS was built with coprocessor support for the USER-INTEL
package, you also need to specify the number of coprocessor/node and
the number of coprocessor threads per MPI task to use. Note that
optionally the number of coprocessor threads per MPI task to use. Note that
coprocessor threads (which run on the coprocessor) are totally
independent from OpenMP threads (which run on the CPU). The default
values for the settings that affect coprocessor threads are typically
fine, as discussed below.</p>
<p>Use the &#8220;-sf intel&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switch</span></a>,
which will automatically append &#8220;intel&#8221; to styles that support it. If
a style does not support it, an &#8220;omp&#8221; suffix is tried next. OpenMP
threads per MPI task can be set via the &#8220;-pk intel Nphi omp Nt&#8221; or
which will automatically append &#8220;intel&#8221; to styles that support it.
OpenMP threads per MPI task can be set via the &#8220;-pk intel Nphi omp Nt&#8221; or
&#8220;-pk omp Nt&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switches</span></a>, which
set Nt = # of OpenMP threads per MPI task to use. The &#8220;-pk omp&#8221; form
is only allowed if LAMMPS was also built with the USER-OMP package.</p>
@ -278,38 +277,36 @@ MPI tasks, unless the <em>tptask</em> option of the &#8220;-pk intel&#8221; <a c
threads per MPI task. See the <a class="reference internal" href="package.html"><em>package intel</em></a> command
for details.</p>
<div class="highlight-python"><div class="highlight"><pre>CPU-only without USER-OMP (but using Intel vectorization on CPU):
lmp_machine -sf intel -in in.script # 1 MPI task
mpirun -np 32 lmp_machine -sf intel -in in.script # 32 MPI tasks on as many nodes as needed (e.g. 2 16-core nodes)
mpirun -np 32 lmp_machine -sf intel -in in.script # 32 MPI tasks on as many nodes as needed (e.g. 2 16-core nodes)
lmp_machine -sf intel -pk intel 0 omp 16 -in in.script # 1 MPI task and 16 threads
</pre></div>
</div>
<div class="highlight-python"><div class="highlight"><pre>CPU-only with USER-OMP (and Intel vectorization on CPU):
lmp_machine -sf intel -pk intel 16 0 -in in.script # 1 MPI task on a 16-core node
mpirun -np 4 lmp_machine -sf intel -pk omp 4 -in in.script # 4 MPI tasks each with 4 threads on a single 16-core node
mpirun -np 32 lmp_machine -sf intel -pk omp 4 -in in.script # ditto on 8 16-core nodes
lmp_machine -sf hybrid intel omp -pk intel 0 omp 16 -in in.script # 1 MPI task on a 16-core node with 16 threads
mpirun -np 4 lmp_machine -sf hybrid intel omp -pk omp 4 -in in.script # 4 MPI tasks each with 4 threads on a single 16-core node
</pre></div>
</div>
<div class="highlight-python"><div class="highlight"><pre>CPUs + Xeon Phi(TM) coprocessors with or without USER-OMP:
lmp_machine -sf intel -pk intel 1 omp 16 -in in.script # 1 MPI task, 16 OpenMP threads on CPU, 1 coprocessor, all 240 coprocessor threads
lmp_machine -sf intel -pk intel 1 omp 16 tptask 32 -in in.script # 1 MPI task, 16 OpenMP threads on CPU, 1 coprocessor, only 32 coprocessor threads
mpirun -np 4 lmp_machine -sf intel -pk intel 1 omp 4 -in in.script # 4 MPI tasks, 4 OpenMP threads/task, 1 coprocessor, 60 coprocessor threads/task
mpirun -np 32 -ppn 4 lmp_machine -sf intel -pk intel 1 omp 4 -in in.script # ditto on 8 16-core nodes
mpirun -np 8 lmp_machine -sf intel -pk intel 4 omp 2 -in in.script # 8 MPI tasks, 2 OpenMP threads/task, 4 coprocessors, 120 coprocessor threads/task
mpirun -np 32 -ppn 16 lmp_machine -sf intel -pk intel 1 -in in.script # 2 nodes with 16 MPI tasks on each, 240 total threads on coprocessor
mpirun -np 16 -ppn 8 lmp_machine -sf intel -pk intel 1 omp 2 -in in.script # 2 nodes, 8 MPI tasks on each node, 2 threads for each task, 240 total threads on coprocessor
mpirun -np 16 -ppn 8 lmp_machine -sf hybrid intel omp -pk intel 1 omp 2 -in in.script # 2 nodes, 8 MPI tasks on each node, 2 threads for each task, 240 total threads on coprocessor, USER-OMP package for some styles
</pre></div>
</div>
<p>Note that if the &#8220;-sf intel&#8221; switch is used, it also invokes two
default commands: <a class="reference internal" href="package.html"><em>package intel 1</em></a>, followed by <a class="reference internal" href="package.html"><em>package omp 0</em></a>. These both set the number of OpenMP threads per
MPI task via the OMP_NUM_THREADS environment variable. The first
command sets the number of Xeon Phi(TM) coprocessors/node to 1 (and
the precision mode to &#8220;mixed&#8221;, as one of its option defaults). The
latter command is not invoked if LAMMPS was not built with the
USER-OMP package. The Nphi = 1 value for the first command is ignored
if LAMMPS was not built with coprocessor support.</p>
<p>Note that if the &#8220;-sf intel&#8221; switch is used, it also invokes a
default command: <a class="reference internal" href="package.html"><em>package intel 1</em></a>. If the &#8220;-sf hybrid intel omp&#8221;
switch is used, the default USER-OMP command <a class="reference internal" href="package.html"><em>package omp 0</em></a> is
also invoked. Both set the number of OpenMP threads per MPI task via the
OMP_NUM_THREADS environment variable. The first command sets the number of
Xeon Phi(TM) coprocessors/node to 1 (and the precision mode to &#8220;mixed&#8221;, as one
of its option defaults). The latter command is not invoked if LAMMPS was not
built with the USER-OMP package. The Nphi = 1 value for the first command is
ignored if LAMMPS was not built with coprocessor support.</p>
<p>Using the &#8220;-pk intel&#8221; or &#8220;-pk omp&#8221; switches explicitly allows for
direct setting of the number of OpenMP threads per MPI task, and
additional options for either of the USER-INTEL or USER-OMP packages.
In particular, the &#8220;-pk intel&#8221; switch sets the number of
coprocessors/node and can limit the number of coprocessor threads per
MPI task. The syntax for these two switches is the same as the
MPI task. The syntax for these two switches is the same as the
<a class="reference internal" href="package.html"><em>package omp</em></a> and <a class="reference internal" href="package.html"><em>package intel</em></a> commands.
See the <a class="reference internal" href="package.html"><em>package</em></a> command doc page for details, including
the default values used for all its options if these switches are not
@ -331,7 +328,7 @@ coprocessor options. Its doc page explains how to set the number of
OpenMP threads via an environment variable if desired.</p>
<p>If LAMMPS was also built with the USER-OMP package, you must also use
the <a class="reference internal" href="package.html"><em>package omp</em></a> command to enable that package, unless
the &#8220;-sf intel&#8221; or &#8220;-pk omp&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switches</span></a> were used. It specifies how many
the &#8220;-sf hybrid intel omp&#8221; or &#8220;-pk omp&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switches</span></a> were used. It specifies how many
OpenMP threads per MPI task to use, as well as other options. Its doc
page explains how to set the number of OpenMP threads via an
environment variable if desired.</p>

View File

@ -31,16 +31,16 @@ when running with coprocessors, this enables the extra CPU cores to be
used for useful computation.
If LAMMPS is built with both the USER-INTEL and USER-OMP packages
intsalled, this mode of operation is made easier to use, because the
"-suffix intel" "command-line switch"_Section_start.html#start_7 or
the "suffix intel"_suffix.html command will both set a second-choice
suffix to "omp" so that styles from the USER-OMP package will be used
if available, after first testing if a style from the USER-INTEL
installed, this mode of operation is made easier to use, with the
"-suffix hybrid intel omp" "command-line switch"_Section_start.html#start_7
or the "suffix hybrid intel omp"_suffix.html command will both set a
second-choice suffix to "omp" so that styles from the USER-OMP package will be
used if available, after first testing if a style from the USER-INTEL
package is available.
When using the USER-INTEL package, you must choose at build time
whether you are building for CPU-only acceleration or for using the
Xeon Phi in offload mode.
When using the USER-INTEL package, you must choose at build time whether the
binary will support offload to Xeon Phi coprocessors. Binaries supporting
offload can still be run in CPU-only (host-only) mode.
Here is a quick overview of how to use the USER-INTEL package
for CPU-only acceleration:
@ -167,16 +167,15 @@ suffer.
If LAMMPS was built with coprocessor support for the USER-INTEL
package, you also need to specify the number of coprocessor/node and
the number of coprocessor threads per MPI task to use. Note that
optionally the number of coprocessor threads per MPI task to use. Note that
coprocessor threads (which run on the coprocessor) are totally
independent from OpenMP threads (which run on the CPU). The default
values for the settings that affect coprocessor threads are typically
fine, as discussed below.
Use the "-sf intel" "command-line switch"_Section_start.html#start_7,
which will automatically append "intel" to styles that support it. If
a style does not support it, an "omp" suffix is tried next. OpenMP
threads per MPI task can be set via the "-pk intel Nphi omp Nt" or
which will automatically append "intel" to styles that support it.
OpenMP threads per MPI task can be set via the "-pk intel Nphi omp Nt" or
"-pk omp Nt" "command-line switches"_Section_start.html#start_7, which
set Nt = # of OpenMP threads per MPI task to use. The "-pk omp" form
is only allowed if LAMMPS was also built with the USER-OMP package.
@ -191,37 +190,34 @@ threads per MPI task. See the "package intel"_package.html command
for details.
CPU-only without USER-OMP (but using Intel vectorization on CPU):
lmp_machine -sf intel -in in.script # 1 MPI task
mpirun -np 32 lmp_machine -sf intel -in in.script # 32 MPI tasks on as many nodes as needed (e.g. 2 16-core nodes) :pre
mpirun -np 32 lmp_machine -sf intel -in in.script # 32 MPI tasks on as many nodes as needed (e.g. 2 16-core nodes)
lmp_machine -sf intel -pk intel 0 omp 16 -in in.script # 1 MPI task and 16 threads :pre
CPU-only with USER-OMP (and Intel vectorization on CPU):
lmp_machine -sf intel -pk intel 16 0 -in in.script # 1 MPI task on a 16-core node
mpirun -np 4 lmp_machine -sf intel -pk omp 4 -in in.script # 4 MPI tasks each with 4 threads on a single 16-core node
mpirun -np 32 lmp_machine -sf intel -pk omp 4 -in in.script # ditto on 8 16-core nodes :pre
lmp_machine -sf hybrid intel omp -pk intel 0 omp 16 -in in.script # 1 MPI task on a 16-core node with 16 threads
mpirun -np 4 lmp_machine -sf hybrid intel omp -pk omp 4 -in in.script # 4 MPI tasks each with 4 threads on a single 16-core node :pre
CPUs + Xeon Phi(TM) coprocessors with or without USER-OMP:
lmp_machine -sf intel -pk intel 1 omp 16 -in in.script # 1 MPI task, 16 OpenMP threads on CPU, 1 coprocessor, all 240 coprocessor threads
lmp_machine -sf intel -pk intel 1 omp 16 tptask 32 -in in.script # 1 MPI task, 16 OpenMP threads on CPU, 1 coprocessor, only 32 coprocessor threads
mpirun -np 4 lmp_machine -sf intel -pk intel 1 omp 4 -in in.script # 4 MPI tasks, 4 OpenMP threads/task, 1 coprocessor, 60 coprocessor threads/task
mpirun -np 32 -ppn 4 lmp_machine -sf intel -pk intel 1 omp 4 -in in.script # ditto on 8 16-core nodes
mpirun -np 8 lmp_machine -sf intel -pk intel 4 omp 2 -in in.script # 8 MPI tasks, 2 OpenMP threads/task, 4 coprocessors, 120 coprocessor threads/task :pre
mpirun -np 32 -ppn 16 lmp_machine -sf intel -pk intel 1 -in in.script # 2 nodes with 16 MPI tasks on each, 240 total threads on coprocessor
mpirun -np 16 -ppn 8 lmp_machine -sf intel -pk intel 1 omp 2 -in in.script # 2 nodes, 8 MPI tasks on each node, 2 threads for each task, 240 total threads on coprocessor
mpirun -np 16 -ppn 8 lmp_machine -sf hybrid intel omp -pk intel 1 omp 2 -in in.script # 2 nodes, 8 MPI tasks on each node, 2 threads for each task, 240 total threads on coprocessor, USER-OMP package for some styles :pre
Note that if the "-sf intel" switch is used, it also invokes two
default commands: "package intel 1"_package.html, followed by "package
omp 0"_package.html. These both set the number of OpenMP threads per
MPI task via the OMP_NUM_THREADS environment variable. The first
command sets the number of Xeon Phi(TM) coprocessors/node to 1 (and
the precision mode to "mixed", as one of its option defaults). The
latter command is not invoked if LAMMPS was not built with the
USER-OMP package. The Nphi = 1 value for the first command is ignored
if LAMMPS was not built with coprocessor support.
Note that if the "-sf intel" switch is used, it also invokes a
default command: "package intel 1"_package.html. If the "-sf hybrid intel omp"
switch is used, the default USER-OMP command "package omp 0"_package.html is
also invoked. Both set the number of OpenMP threads per MPI task via the
OMP_NUM_THREADS environment variable. The first command sets the number of
Xeon Phi(TM) coprocessors/node to 1 (and the precision mode to "mixed", as one
of its option defaults). The latter command is not invoked if LAMMPS was not
built with the USER-OMP package. The Nphi = 1 value for the first command is
ignored if LAMMPS was not built with coprocessor support.
Using the "-pk intel" or "-pk omp" switches explicitly allows for
direct setting of the number of OpenMP threads per MPI task, and
additional options for either of the USER-INTEL or USER-OMP packages.
In particular, the "-pk intel" switch sets the number of
coprocessors/node and can limit the number of coprocessor threads per
MPI task. The syntax for these two switches is the same as the
MPI task. The syntax for these two switches is the same as the
"package omp"_package.html and "package intel"_package.html commands.
See the "package"_package.html command doc page for details, including
the default values used for all its options if these switches are not
@ -248,7 +244,7 @@ OpenMP threads via an environment variable if desired.
If LAMMPS was also built with the USER-OMP package, you must also use
the "package omp"_package.html command to enable that package, unless
the "-sf intel" or "-pk omp" "command-line
the "-sf hybrid intel omp" or "-pk omp" "command-line
switches"_Section_start.html#start_7 were used. It specifies how many
OpenMP threads per MPI task to use, as well as other options. Its doc
page explains how to set the number of OpenMP threads via an

View File

@ -467,7 +467,7 @@ USER-OMP packages, be aware that both packages allow setting of the
single global <em>Nthreads</em> value used by OpenMP. Thus if both package
commands are invoked, you should insure the two values are consistent.
If they are not, the last one invoked will take precedence, for both
packages. Also note that if the &#8220;-sf intel&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switch</span></a> is used, it invokes a &#8220;package
packages. Also note that if the &#8220;-sf hybrid intel omp&#8221; <a class="reference internal" href="Section_start.html#start-7"><span>command-line switch</span></a> is used, it invokes a &#8220;package
intel&#8221; command, followed by a &#8220;package omp&#8221; command, both with a
setting of <em>Nthreads</em> = 0.</p>
</div>

View File

@ -376,7 +376,7 @@ USER-OMP packages, be aware that both packages allow setting of the
single global {Nthreads} value used by OpenMP. Thus if both package
commands are invoked, you should insure the two values are consistent.
If they are not, the last one invoked will take precedence, for both
packages. Also note that if the "-sf intel" "command-line
packages. Also note that if the "-sf hybrid intel omp" "command-line
switch"_"_Section_start.html#start_7 is used, it invokes a "package
intel" command, followed by a "package omp" command, both with a
setting of {Nthreads} = 0.

File diff suppressed because one or more lines are too long

View File

@ -128,11 +128,12 @@
<span id="index-0"></span><h1>suffix command<a class="headerlink" href="#suffix-command" title="Permalink to this headline"></a></h1>
<div class="section" id="syntax">
<h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline"></a></h2>
<div class="highlight-python"><div class="highlight"><pre>suffix style
<div class="highlight-python"><div class="highlight"><pre>suffix style args
</pre></div>
</div>
<ul class="simple">
<li>style = <em>off</em> or <em>on</em> or <em>cuda</em> or <em>gpu</em> or <em>intel</em> or <em>kk</em> or <em>omp</em> or <em>opt</em></li>
<li>style = <em>off</em> or <em>on</em> or <em>cuda</em> or <em>gpu</em> or <em>intel</em> or <em>kk</em> or <em>omp</em> or <em>opt</em> or <em>hybrid</em></li>
<li>args = for hybrid style, default suffix to be used and alternative suffix</li>
</ul>
</div>
<div class="section" id="examples">
@ -141,6 +142,7 @@
suffix on
suffix gpu
suffix intel
suffix hybrid intel omp
suffix kk
</pre></div>
</div>
@ -150,13 +152,13 @@ suffix kk
<p>This command allows you to use variants of various styles if they
exist. In that respect it operates the same as the <a class="reference internal" href="Section_start.html#start-7"><span>-suffix command-line switch</span></a>. It also has options
to turn off or back on any suffix setting made via the command line.</p>
<p>The specified style can be <em>cuda</em>, <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or
<em>opt</em>. These refer to optional packages that LAMMPS can be built
<p>The specified style can be <em>cuda</em>, <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, <em>opt</em>
or <em>hybrid</em>. These refer to optional packages that LAMMPS can be built
with, as described in <a class="reference internal" href="Section_start.html#start-3"><span>this section of the manual</span></a>. The &#8220;cuda&#8221; style corresponds to
the USER-CUDA package, the &#8220;gpu&#8221; style to the GPU package, the &#8220;intel&#8221;
style to the USER-INTEL package, the &#8220;kk&#8221; style to the KOKKOS package,
the &#8220;omp&#8221; style to the USER-OMP package, and the &#8220;opt&#8221; style to the
OPT package,</p>
OPT package.</p>
<p>These are the variants these packages provide:</p>
<ul class="simple">
<li>USER-CUDA = a collection of atom, pair, fix, compute, and intergrate
@ -174,6 +176,7 @@ kspace, compute, and fix styles with support for OpenMP
multi-threading</li>
<li>OPT = a handful of pair styles, cache-optimized for faster CPU
performance</li>
<li>HYBRID = a combination of two packages can be specified (see below)</li>
</ul>
<p>As an example, all of the packages provide a <a class="reference internal" href="pair_lj.html"><em>pair_style lj/cut</em></a> variant, with style names lj/cut/opt, lj/cut/omp,
lj/cut/gpu, lj/cut/intel, lj/cut/cuda, or lj/cut/kk. A variant styles
@ -188,10 +191,12 @@ input script command creates a new <a class="reference internal" href="atom_styl
<a class="reference internal" href="fix.html"><em>fix</em></a>, <a class="reference internal" href="compute.html"><em>compute</em></a>, or <a class="reference internal" href="run_style.html"><em>run</em></a> style.
If the variant version does not exist, the standard version is
created.</p>
<p>When using the intel suffix, LAMMPS will first attempt to use a style
with the intel suffix. If the USER-OMP package is installed, the the
omp suffix will be tried as a second choice, if a requested style is
not available in the USER-INTEL package.</p>
<p>For &#8220;hybrid&#8221;, 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, &#8220;hybrid intel omp&#8221; will use styles from the USER-INTEL package
as a first choice and styles from the USER-OMP package as a second choice
if no USER-INTEL variant is available.</p>
<p>If the specified style is <em>off</em>, then any previously specified suffix
is temporarily disabled, whether it was specified by a command-line
switch or a previous suffix command. If the specified style is <em>on</em>,

View File

@ -10,9 +10,10 @@ suffix command :h3
[Syntax:]
suffix style :pre
suffix style args :pre
style = {off} or {on} or {cuda} or {gpu} or {intel} or {kk} or {omp} or {opt} :ul
style = {off} or {on} or {cuda} or {gpu} or {intel} or {kk} or {omp} or {opt} or {hybrid}
args = for hybrid style, default suffix to be used and alternative suffix :ul
[Examples:]
@ -20,6 +21,7 @@ suffix off
suffix on
suffix gpu
suffix intel
suffix hybrid intel omp
suffix kk :pre
[Description:]
@ -29,14 +31,14 @@ exist. In that respect it operates the same as the "-suffix
command-line switch"_Section_start.html#start_7. It also has options
to turn off or back on any suffix setting made via the command line.
The specified style can be {cuda}, {gpu}, {intel}, {kk}, {omp}, or
{opt}. These refer to optional packages that LAMMPS can be built
The specified style can be {cuda}, {gpu}, {intel}, {kk}, {omp}, {opt}
or {hybrid}. These refer to optional packages that LAMMPS can be built
with, as described in "this section of the
manual"_Section_start.html#start_3. The "cuda" style corresponds to
the USER-CUDA package, the "gpu" style 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 package,
OPT package.
These are the variants these packages provide:
@ -59,7 +61,9 @@ kspace, compute, and fix styles with support for OpenMP
multi-threading :l
OPT = a handful of pair styles, cache-optimized for faster CPU
performance :ule,l
performance :l
HYBRID = a combination of two packages can be specified (see below) :ule,l
As an example, all of the packages provide a "pair_style
lj/cut"_pair_lj.html variant, with style names lj/cut/opt, lj/cut/omp,
@ -76,10 +80,12 @@ input script command creates a new "atom"_atom_style.html,
If the variant version does not exist, the standard version is
created.
When using the intel suffix, LAMMPS will first attempt to use a style
with the intel suffix. If the USER-OMP package is installed, the the
omp suffix will be tried as a second choice, if a requested style is
not available in the USER-INTEL package.
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
if no USER-INTEL variant is available.
If the specified style is {off}, then any previously specified suffix
is temporarily disabled, whether it was specified by a command-line