Compare commits
231 Commits
patch_6Jul
...
patch_11Au
| Author | SHA1 | Date | |
|---|---|---|---|
| 0b3f1b8a15 | |||
| b209a4e246 | |||
| 27553283c3 | |||
| df56b2d6a4 | |||
| c6d923b6c8 | |||
| 6d24be8bb7 | |||
| 52bec0f380 | |||
| f68c6254d4 | |||
| 146aa4cdbd | |||
| 2f3747eb6e | |||
| 2bc6ad80d4 | |||
| f9a515efd3 | |||
| 5b55744209 | |||
| 0dc3cbaa8a | |||
| ce62c41252 | |||
| 4e97b57508 | |||
| 7f437d7690 | |||
| 77a628e4ef | |||
| f01103dd08 | |||
| 81f4d7ecb5 | |||
| 210a77c5a0 | |||
| 6780c73907 | |||
| be25a7d9a4 | |||
| 691d1b730d | |||
| 95ece8a6c0 | |||
| b7b1257b01 | |||
| 30431d4edb | |||
| c53a84a967 | |||
| b7b62f6893 | |||
| d2b0c287d2 | |||
| b3244f9c98 | |||
| 8bba29d91e | |||
| 135b1650f1 | |||
| 0a54c34e34 | |||
| a8f6a95cba | |||
| e0f9a7c34c | |||
| aaf17bde3f | |||
| 5ad8a3332d | |||
| ca7a3a6316 | |||
| 163ed27618 | |||
| 23ca0099f7 | |||
| 59ac6ef573 | |||
| 2fa16bcd4c | |||
| e84b6d8067 | |||
| 96d3712817 | |||
| b395ef00b4 | |||
| d3169eeab3 | |||
| 71553cf732 | |||
| 9bfd9267fa | |||
| 7d0d701eaf | |||
| 841a92c7fa | |||
| 85120842dd | |||
| 3ebf561e0d | |||
| ffb778cf9b | |||
| f3850da9fe | |||
| e7d9aabca6 | |||
| e3973796ba | |||
| c494ec35e2 | |||
| 6d0a228624 | |||
| acf6d54ec1 | |||
| 0427f6205e | |||
| 72419b6313 | |||
| da7a5f55d3 | |||
| 934cbbbeca | |||
| 2806f070a4 | |||
| 715c797df0 | |||
| fd6e11f821 | |||
| f7a243a4d9 | |||
| f0d286358e | |||
| 51a06334ad | |||
| aa5ea95a0f | |||
| 60c67b07dc | |||
| a59b7e4d56 | |||
| 2eaea2d274 | |||
| 1ddace4dba | |||
| af3d0ca381 | |||
| c24e316baa | |||
| 2c6e177d5c | |||
| 7b2182833f | |||
| 1afab981b0 | |||
| 1af937e99d | |||
| 4e0a249e27 | |||
| edc756a65f | |||
| a477f26477 | |||
| b1b399d5c3 | |||
| 00474ab09d | |||
| 733ea61bf1 | |||
| 5c13b087e4 | |||
| ec23aef20b | |||
| 61b1487cbd | |||
| 3449d42267 | |||
| e53583d9c6 | |||
| 551001f172 | |||
| 5dbe2df854 | |||
| 3f83396837 | |||
| 59db5f6a17 | |||
| 1b704bab18 | |||
| c98f6140e7 | |||
| 5031f5b807 | |||
| 9d0d90c038 | |||
| 66154e8a8b | |||
| d2f76ae394 | |||
| 3cd597e948 | |||
| eca61226c2 | |||
| fac3e3daa2 | |||
| 72e5f537c8 | |||
| 84065dde21 | |||
| bdd2f3a6b2 | |||
| a351977c59 | |||
| 8499e72cdc | |||
| ef9fb944c7 | |||
| 187a80be77 | |||
| 355aad9691 | |||
| ec42a60587 | |||
| ee6cac826e | |||
| f181a0bfab | |||
| 52a1c54d50 | |||
| fcf9607a66 | |||
| 81f342aafa | |||
| 7ccb0d37cd | |||
| 03cd4c5255 | |||
| 148364949e | |||
| 17aff29fe2 | |||
| f96b9e0dcf | |||
| 5cbaf7ca1d | |||
| 02572a4099 | |||
| 49b4cf9a77 | |||
| 49e6c2eb7d | |||
| a92d792537 | |||
| 085cbee116 | |||
| 4ad9528999 | |||
| 358915d16e | |||
| d9186c8fde | |||
| bc5186bc30 | |||
| c083d5d6f3 | |||
| c3a2ed0d1b | |||
| 23033404b0 | |||
| bda0730169 | |||
| 992ce79701 | |||
| d7355801df | |||
| 4ec07422f0 | |||
| 3f297382ac | |||
| 296e572e69 | |||
| cc9b3864bf | |||
| bbb4d63db9 | |||
| 1c92eecea7 | |||
| a04711b21f | |||
| e084d4dad6 | |||
| 522bc13d67 | |||
| 14f1d646ad | |||
| 3b1134c164 | |||
| 4d4c03a1e4 | |||
| e5405cdb04 | |||
| 8a1db83b73 | |||
| de45a46529 | |||
| 32ca58bdf2 | |||
| 111786e92e | |||
| 132cee9840 | |||
| 609c8b1e87 | |||
| 9988030409 | |||
| fc36754ca2 | |||
| 3a46c34c2f | |||
| cb935730c0 | |||
| 983eb0e80d | |||
| fc6c10c9a9 | |||
| a3a0c9b144 | |||
| b64849d574 | |||
| e58bcd8b4a | |||
| ef2f4980e9 | |||
| d3a45f6d50 | |||
| d0cc1dfbb8 | |||
| de8d417aec | |||
| 0af9203fdc | |||
| c24fca61f3 | |||
| 01e848387a | |||
| 734729b0a4 | |||
| a419c7c57c | |||
| 69d97fa60c | |||
| a9ff593763 | |||
| ddc9621325 | |||
| f717a70638 | |||
| f7f4a24930 | |||
| 338fc28970 | |||
| 5a1e020bf0 | |||
| c8939d8df6 | |||
| e30c5fc956 | |||
| c29e8fba9b | |||
| 8d592f4b9e | |||
| c9a0d38a3e | |||
| b5e9e90bb6 | |||
| 92395e9bb4 | |||
| 71ddcaf0b6 | |||
| fe888e4622 | |||
| b0be8b24ea | |||
| 16fc2d6fe1 | |||
| 7193fffe0d | |||
| 23925b3a57 | |||
| 423e3b6389 | |||
| 8be6d5bfd8 | |||
| a62eb43791 | |||
| 33be51af54 | |||
| 47649ff50f | |||
| fa469ae1d0 | |||
| e493b6a648 | |||
| 8c3f6947ad | |||
| 894e0c3cf5 | |||
| d451dbb1a0 | |||
| 6eddc1a2ee | |||
| 1bf1cb150f | |||
| 9fa4588eb7 | |||
| f5440a777b | |||
| 92831f185b | |||
| 8e279d4ec8 | |||
| cbd8f99754 | |||
| b720f39163 | |||
| ff761d639a | |||
| d2f7f4843a | |||
| 7e42af18bc | |||
| 74d63c24fd | |||
| 769870cfc9 | |||
| e0521f27b4 | |||
| 5eb5391b20 | |||
| d3b8e688c9 | |||
| 67d474df2a | |||
| 8f37285b05 | |||
| ef72145540 | |||
| d17d99b9dd | |||
| 68b2a454b5 | |||
| 23c3f5622a | |||
| 6311d33a5d | |||
| e136a9db02 |
2
LICENSE
@ -3,7 +3,7 @@ GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
@ -1,55 +1,21 @@
|
||||
These are input scripts used to run versions of several of the
|
||||
benchmarks in the top-level bench directory using the GPU and
|
||||
USER-CUDA accelerator packages. The results of running these scripts
|
||||
on two different machines (a desktop with 2 Tesla GPUs and the ORNL
|
||||
Titan supercomputer) are shown on the "GPU (Fermi)" section of the
|
||||
Benchmark page of the LAMMPS WWW site: lammps.sandia.gov/bench.
|
||||
benchmarks in the top-level bench directory using the GPU accelerator
|
||||
package. The results of running these scripts on two different machines
|
||||
(a desktop with 2 Tesla GPUs and the ORNL Titan supercomputer) are shown
|
||||
on the "GPU (Fermi)" section of the Benchmark page of the LAMMPS WWW
|
||||
site: lammps.sandia.gov/bench.
|
||||
|
||||
Examples are shown below of how to run these scripts. This assumes
|
||||
you have built 3 executables with both the GPU and USER-CUDA packages
|
||||
you have built 3 executables with the GPU package
|
||||
installed, e.g.
|
||||
|
||||
lmp_linux_single
|
||||
lmp_linux_mixed
|
||||
lmp_linux_double
|
||||
|
||||
The precision (single, mixed, double) refers to the GPU and USER-CUDA
|
||||
package precision. See the README files in the lib/gpu and lib/cuda
|
||||
directories for instructions on how to build the packages with
|
||||
different precisions. The GPU and USER-CUDA sub-sections of the
|
||||
doc/Section_accelerate.html file also describes this process.
|
||||
|
||||
Make.py -d ~/lammps -j 16 -p #all orig -m linux -o cpu -a exe
|
||||
Make.py -d ~/lammps -j 16 -p #all opt orig -m linux -o opt -a exe
|
||||
Make.py -d ~/lammps -j 16 -p #all omp orig -m linux -o omp -a exe
|
||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
||||
-gpu mode=double arch=20 -o gpu_double -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
||||
-gpu mode=mixed arch=20 -o gpu_mixed -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
||||
-gpu mode=single arch=20 -o gpu_single -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
||||
-cuda mode=double arch=20 -o cuda_double -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
||||
-cuda mode=mixed arch=20 -o cuda_mixed -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
||||
-cuda mode=single arch=20 -o cuda_single -a libs exe
|
||||
Make.py -d ~/lammps -j 16 -p #all intel orig -m linux -o intel_cpu -a exe
|
||||
Make.py -d ~/lammps -j 16 -p #all kokkos orig -m linux -o kokkos_omp -a exe
|
||||
Make.py -d ~/lammps -j 16 -p #all kokkos orig -kokkos cuda arch=20 \
|
||||
-m cuda -o kokkos_cuda -a exe
|
||||
|
||||
Make.py -d ~/lammps -j 16 -p #all opt omp gpu cuda intel kokkos orig \
|
||||
-gpu mode=double arch=20 -cuda mode=double arch=20 -m linux \
|
||||
-o all -a libs exe
|
||||
|
||||
Make.py -d ~/lammps -j 16 -p #all opt omp gpu cuda intel kokkos orig \
|
||||
-kokkos cuda arch=20 -gpu mode=double arch=20 \
|
||||
-cuda mode=double arch=20 -m cuda -o all_cuda -a libs exe
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
||||
To run on just CPUs (without using the GPU or USER-CUDA styles),
|
||||
To run on just CPUs (without using the GPU styles),
|
||||
do something like the following:
|
||||
|
||||
mpirun -np 1 lmp_linux_double -v x 8 -v y 8 -v z 8 -v t 100 < in.lj
|
||||
@ -81,23 +47,5 @@ node via a "-ppn" setting.
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
||||
To run with the USER-CUDA package, do something like the following:
|
||||
|
||||
mpirun -np 1 lmp_linux_single -c on -sf cuda -v x 16 -v y 16 -v z 16 -v t 100 < in.lj
|
||||
mpirun -np 2 lmp_linux_double -c on -sf cuda -pk cuda 2 -v x 32 -v y 64 -v z 64 -v t 100 < in.eam
|
||||
|
||||
The "xyz" settings determine the problem size. The "t" setting
|
||||
determines the number of timesteps. The "np" setting determines how
|
||||
many MPI tasks (per node) the problem will run on. The numeric
|
||||
argument to the "-pk" setting is the number of GPUs (per node); 1 GPU
|
||||
is the default. Note that the number of MPI tasks must equal the
|
||||
number of GPUs (both per node) with the USER-CUDA package.
|
||||
|
||||
These mpirun commands run on a single node. To run on multiple nodes,
|
||||
scale up the "-np" setting, and control the number of MPI tasks per
|
||||
node via a "-ppn" setting.
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
||||
If the script has "titan" in its name, it was run on the Titan
|
||||
supercomputer at ORNL.
|
||||
|
||||
46
bench/README
@ -71,49 +71,33 @@ integration
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Here is a src/Make.py command which will perform a parallel build of a
|
||||
LAMMPS executable "lmp_mpi" with all the packages needed by all the
|
||||
examples. This assumes you have an MPI installed on your machine so
|
||||
that "mpicxx" can be used as the wrapper compiler. It also assumes
|
||||
you have an Intel compiler to use as the base compiler. You can leave
|
||||
off the "-cc mpi wrap=icc" switch if that is not the case. You can
|
||||
also leave off the "-fft fftw3" switch if you do not have the FFTW
|
||||
(v3) installed as an FFT package, in which case the default KISS FFT
|
||||
library will be used.
|
||||
|
||||
cd src
|
||||
Make.py -j 16 -p none molecule manybody kspace granular rigid orig \
|
||||
-cc mpi wrap=icc -fft fftw3 -a file mpi
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Here is how to run each problem, assuming the LAMMPS executable is
|
||||
named lmp_mpi, and you are using the mpirun command to launch parallel
|
||||
runs:
|
||||
|
||||
Serial (one processor runs):
|
||||
|
||||
lmp_mpi < in.lj
|
||||
lmp_mpi < in.chain
|
||||
lmp_mpi < in.eam
|
||||
lmp_mpi < in.chute
|
||||
lmp_mpi < in.rhodo
|
||||
lmp_mpi -in in.lj
|
||||
lmp_mpi -in in.chain
|
||||
lmp_mpi -in in.eam
|
||||
lmp_mpi -in in.chute
|
||||
lmp_mpi -in in.rhodo
|
||||
|
||||
Parallel fixed-size runs (on 8 procs in this case):
|
||||
|
||||
mpirun -np 8 lmp_mpi < in.lj
|
||||
mpirun -np 8 lmp_mpi < in.chain
|
||||
mpirun -np 8 lmp_mpi < in.eam
|
||||
mpirun -np 8 lmp_mpi < in.chute
|
||||
mpirun -np 8 lmp_mpi < in.rhodo
|
||||
mpirun -np 8 lmp_mpi -in in.lj
|
||||
mpirun -np 8 lmp_mpi -in in.chain
|
||||
mpirun -np 8 lmp_mpi -in in.eam
|
||||
mpirun -np 8 lmp_mpi -in in.chute
|
||||
mpirun -np 8 lmp_mpi -in in.rhodo
|
||||
|
||||
Parallel scaled-size runs (on 16 procs in this case):
|
||||
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.lj
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.chain.scaled
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.eam
|
||||
mpirun -np 16 lmp_mpi -var x 4 -var y 4 < in.chute.scaled
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.rhodo.scaled
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.lj
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.chain.scaled
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.eam
|
||||
mpirun -np 16 lmp_mpi -var x 4 -var y 4 -in in.chute.scaled
|
||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.rhodo.scaled
|
||||
|
||||
For each of the scaled-size runs you must set 3 variables as -var
|
||||
command line switches. The variables x,y,z are used in the input
|
||||
|
||||
BIN
doc/src/Eqs/fix_wall_ees.jpg
Normal file
|
After Width: | Height: | Size: 104 KiB |
10
doc/src/Eqs/fix_wall_ees.tex
Normal file
@ -0,0 +1,10 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3 \sigma_{n}^2+3 r \sigma_{n}^4\right) }{945 \left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r \sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{ \left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12 \sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n < r < r_c
|
||||
$$
|
||||
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/JPG/bow_tutorial_01.png
Executable file
|
After Width: | Height: | Size: 32 KiB |
BIN
doc/src/JPG/bow_tutorial_01_small.png
Executable file
|
After Width: | Height: | Size: 15 KiB |
BIN
doc/src/JPG/bow_tutorial_02.png
Executable file
|
After Width: | Height: | Size: 41 KiB |
BIN
doc/src/JPG/bow_tutorial_02_small.png
Executable file
|
After Width: | Height: | Size: 16 KiB |
BIN
doc/src/JPG/bow_tutorial_03.png
Executable file
|
After Width: | Height: | Size: 42 KiB |
BIN
doc/src/JPG/bow_tutorial_03_small.png
Executable file
|
After Width: | Height: | Size: 20 KiB |
BIN
doc/src/JPG/bow_tutorial_04.png
Executable file
|
After Width: | Height: | Size: 54 KiB |
BIN
doc/src/JPG/bow_tutorial_04_small.png
Executable file
|
After Width: | Height: | Size: 21 KiB |
BIN
doc/src/JPG/bow_tutorial_05.png
Executable file
|
After Width: | Height: | Size: 16 KiB |
BIN
doc/src/JPG/bow_tutorial_06.png
Executable file
|
After Width: | Height: | Size: 13 KiB |
BIN
doc/src/JPG/bow_tutorial_07.png
Executable file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
doc/src/JPG/bow_tutorial_08.png
Executable file
|
After Width: | Height: | Size: 24 KiB |
BIN
doc/src/JPG/bow_tutorial_09.png
Executable file
|
After Width: | Height: | Size: 18 KiB |
BIN
doc/src/JPG/bow_tutorial_10.png
Executable file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
doc/src/JPG/fix_wall_ees_image.jpg
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
@ -1,7 +1,7 @@
|
||||
<!-- HTML_ONLY -->
|
||||
<HEAD>
|
||||
<TITLE>LAMMPS Users Manual</TITLE>
|
||||
<META NAME="docnumber" CONTENT="6 Jul 2017 version">
|
||||
<META NAME="docnumber" CONTENT="11 Aug 2017 version">
|
||||
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
|
||||
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
|
||||
</HEAD>
|
||||
@ -21,7 +21,7 @@
|
||||
<H1></H1>
|
||||
|
||||
LAMMPS Documentation :c,h3
|
||||
6 Jul 2017 version :c,h4
|
||||
11 Aug 2017 version :c,h4
|
||||
|
||||
Version info: :h4
|
||||
|
||||
@ -261,7 +261,6 @@ END_RST -->
|
||||
:link(start_6,Section_start.html#start_6)
|
||||
:link(start_7,Section_start.html#start_7)
|
||||
:link(start_8,Section_start.html#start_8)
|
||||
:link(start_9,Section_start.html#start_9)
|
||||
|
||||
:link(cmd_1,Section_commands.html#cmd_1)
|
||||
:link(cmd_2,Section_commands.html#cmd_2)
|
||||
|
||||
@ -56,7 +56,7 @@ timings; you can simply extrapolate from short runs.
|
||||
|
||||
For the set of runs, look at the timing data printed to the screen and
|
||||
log file at the end of each LAMMPS run. "This
|
||||
section"_Section_start.html#start_8 of the manual has an overview.
|
||||
section"_Section_start.html#start_7 of the manual has an overview.
|
||||
|
||||
Running on one (or a few processors) should give a good estimate of
|
||||
the serial performance and what portions of the timestep are taking
|
||||
@ -226,16 +226,16 @@ re-build LAMMPS |
|
||||
make machine |
|
||||
prepare and test a regular LAMMPS simulation |
|
||||
lmp_machine -in in.script; mpirun -np 32 lmp_machine -in in.script |
|
||||
enable specific accelerator support via '-k on' "command-line switch"_Section_start.html#start_7, |
|
||||
enable specific accelerator support via '-k on' "command-line switch"_Section_start.html#start_6, |
|
||||
only needed for KOKKOS package |
|
||||
set any needed options for the package via "-pk" "command-line switch"_Section_start.html#start_7 or "package"_package.html command, |
|
||||
set any needed options for the package via "-pk" "command-line switch"_Section_start.html#start_6 or "package"_package.html command, |
|
||||
only if defaults need to be changed |
|
||||
use accelerated styles in your input via "-sf" "command-line switch"_Section_start.html#start_7 or "suffix"_suffix.html command | lmp_machine -in in.script -sf gpu
|
||||
use accelerated styles in your input via "-sf" "command-line switch"_Section_start.html#start_6 or "suffix"_suffix.html command | lmp_machine -in in.script -sf gpu
|
||||
:tb(c=2,s=|)
|
||||
|
||||
Note that the first 4 steps can be done as a single command, using the
|
||||
src/Make.py tool. This tool is discussed in "Section
|
||||
2.4"_Section_start.html#start_4 of the manual, and its use is
|
||||
Note that the first 4 steps can be done as a single command with
|
||||
suitable make command invocations. This is discussed in "Section
|
||||
4"_Section_packages.html of the manual, and its use is
|
||||
illustrated in the individual accelerator sections. Typically these
|
||||
steps only need to be done once, to create an executable that uses one
|
||||
or more accelerator packages.
|
||||
|
||||
@ -734,7 +734,9 @@ package"_Section_start.html#start_3.
|
||||
"smd/wall/surface"_fix_smd_wall_surface.html,
|
||||
"temp/rescale/eff"_fix_temp_rescale_eff.html,
|
||||
"ti/spring"_fix_ti_spring.html,
|
||||
"ttm/mod"_fix_ttm.html :tb(c=6,ea=c)
|
||||
"ttm/mod"_fix_ttm.html,
|
||||
"wall/ees"_fix_wall_ees.html,
|
||||
"wall/region/ees"_fix_wall_ees.html :tb(c=6,ea=c)
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -71,7 +71,7 @@ style", with ... being fix, compute, pair, etc, it means that you
|
||||
mistyped the style name or that the command is part of an optional
|
||||
package which was not compiled into your executable. The list of
|
||||
available styles in your executable can be listed by using "the -h
|
||||
command-line argument"_Section_start.html#start_7. The installation
|
||||
command-line argument"_Section_start.html#start_6. The installation
|
||||
and compilation of optional packages is explained in the "installation
|
||||
instructions"_Section_start.html#start_3.
|
||||
|
||||
|
||||
@ -49,6 +49,7 @@ Lists of both kinds of directories are given below.
|
||||
Lowercase directories :h4
|
||||
|
||||
accelerate: run with various acceleration options (OpenMP, GPU, Phi)
|
||||
airebo: polyethylene with AIREBO potential
|
||||
balance: dynamic load balancing, 2d system
|
||||
body: body particles, 2d system
|
||||
cmap: CMAP 5-body contributions to CHARMM force field
|
||||
|
||||
@ -54,7 +54,7 @@ restart files can be saved to disk using the "restart"_restart.html
|
||||
command. At a later time, these binary files can be read via a
|
||||
"read_restart"_read_restart.html command in a new script. Or they can
|
||||
be converted to text data files using the "-r command-line
|
||||
switch"_Section_start.html#start_7 and read by a
|
||||
switch"_Section_start.html#start_6 and read by a
|
||||
"read_data"_read_data.html command in a new script.
|
||||
|
||||
Here we give examples of 2 scripts that read either a binary restart
|
||||
@ -337,7 +337,7 @@ All of the above examples work whether you are running on 1 or
|
||||
multiple processors, but assumed you are running LAMMPS on a single
|
||||
partition of processors. LAMMPS can be run on multiple partitions via
|
||||
the "-partition" command-line switch as described in "this
|
||||
section"_Section_start.html#start_7 of the manual.
|
||||
section"_Section_start.html#start_6 of the manual.
|
||||
|
||||
In the last 2 examples, if LAMMPS were run on 3 partitions, the same
|
||||
scripts could be used if the "index" and "loop" variables were
|
||||
@ -387,7 +387,7 @@ for more info on packages.
|
||||
In all these cases, you must run with one or more processors per
|
||||
replica. The processors assigned to each replica are determined at
|
||||
run-time by using the "-partition command-line
|
||||
switch"_Section_start.html#start_7 to launch LAMMPS on multiple
|
||||
switch"_Section_start.html#start_6 to launch LAMMPS on multiple
|
||||
partitions, which in this context are the same as replicas. E.g.
|
||||
these commands:
|
||||
|
||||
@ -395,7 +395,7 @@ mpirun -np 16 lmp_linux -partition 8x2 -in in.temper
|
||||
mpirun -np 8 lmp_linux -partition 8x1 -in in.neb :pre
|
||||
|
||||
would each run 8 replicas, on either 16 or 8 processors. Note the use
|
||||
of the "-in command-line switch"_Section_start.html#start_7 to specify
|
||||
of the "-in command-line switch"_Section_start.html#start_6 to specify
|
||||
the input script which is required when running in multi-replica mode.
|
||||
|
||||
Also note that with MPI installed on a machine (e.g. your desktop),
|
||||
@ -1872,7 +1872,7 @@ void lammps_free(void *) :pre
|
||||
|
||||
The lammps_open() function is used to initialize LAMMPS, passing in a
|
||||
list of strings as if they were "command-line
|
||||
arguments"_Section_start.html#start_7 when LAMMPS is run in
|
||||
arguments"_Section_start.html#start_6 when LAMMPS is run in
|
||||
stand-alone mode from the command line, and a MPI communicator for
|
||||
LAMMPS to run under. It returns a ptr to the LAMMPS object that is
|
||||
created, and which is used in subsequent library calls. The
|
||||
|
||||
@ -25,6 +25,17 @@ There are two kinds of packages in LAMMPS, standard and user packages:
|
||||
"Table of standard packages"_#table_standard
|
||||
"Table of user packages"_#table_user :ul
|
||||
|
||||
Either of these kinds of packages may work as is, may require some
|
||||
additional code compiled located in the lib folder, or may require
|
||||
an external library to be downloaded, compiled, installed, and LAMMPS
|
||||
configured to know about its location and additional compiler flags.
|
||||
You can often do the build of the internal or external libraries
|
||||
in one step by typing "make lib-name args='...'" from the src dir,
|
||||
with appropriate arguments included in args='...'. If you just type
|
||||
"make lib-name" you should see a help message about supported flags
|
||||
and some examples. For more details about this, please study the
|
||||
tables below and the sections about the individual packages.
|
||||
|
||||
Standard packages are supported by the LAMMPS developers and are
|
||||
written in a syntax and style consistent with the rest of LAMMPS.
|
||||
This means the developers will answer questions about them, debug and
|
||||
@ -34,7 +45,9 @@ LAMMPS.
|
||||
User packages have been contributed by users, and begin with the
|
||||
"user" prefix. If they are a single command (single file), they are
|
||||
typically in the user-misc package. User packages don't necessarily
|
||||
meet the requirements of the standard packages. If you have problems
|
||||
meet the requirements of the standard packages. This means the
|
||||
developers will try to keep things working and usually can answer
|
||||
technical questions about compiling the package. If you have problems
|
||||
using a feature provided in a user package, you may need to contact
|
||||
the contributor directly to get help. Information on how to submit
|
||||
additions you make to LAMMPS as single files or as a standard or user
|
||||
@ -78,10 +91,10 @@ Package, Description, Doc page, Example, Library
|
||||
"COMPRESS"_#COMPRESS, I/O compression, "dump */gz"_dump.html, -, sys
|
||||
"CORESHELL"_#CORESHELL, adiabatic core/shell model, "Section 6.6.25"_Section_howto.html#howto_25, coreshell, -
|
||||
"DIPOLE"_#DIPOLE, point dipole particles, "pair_style dipole/cut"_pair_dipole.html, dipole, -
|
||||
"GPU"_#GPU, GPU-enabled styles, "Section 5.3.1"_accelerate_gpu.html, WWW bench, int
|
||||
"GPU"_#GPU, GPU-enabled styles, "Section 5.3.1"_accelerate_gpu.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, int
|
||||
"GRANULAR"_#GRANULAR, granular systems, "Section 6.6.6"_Section_howto.html#howto_6, pour, -
|
||||
"KIM"_#KIM, openKIM wrapper, "pair_style kim"_pair_kim.html, kim, ext
|
||||
"KOKKOS"_#KOKKOS, Kokkos-enabled styles, "Section 5.3.3"_accelerate_kokkos.html, WWW bench, -
|
||||
"KIM"_#KIM, OpenKIM wrapper, "pair_style kim"_pair_kim.html, kim, ext
|
||||
"KOKKOS"_#KOKKOS, Kokkos-enabled styles, "Section 5.3.3"_accelerate_kokkos.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, -
|
||||
"KSPACE"_#KSPACE, long-range Coulombic solvers, "kspace_style"_kspace_style.html, peptide, -
|
||||
"MANYBODY"_#MANYBODY, many-body potentials, "pair_style tersoff"_pair_tersoff.html, shear, -
|
||||
"MC"_#MC, Monte Carlo options, "fix gcmc"_fix_gcmc.html, -, -
|
||||
@ -90,7 +103,7 @@ Package, Description, Doc page, Example, Library
|
||||
"MOLECULE"_#MOLECULE, molecular system force fields, "Section 6.6.3"_Section_howto.html#howto_3, peptide, -
|
||||
"MPIIO"_#MPIIO, MPI parallel I/O dump and restart, "dump"_dump.html, -, -
|
||||
"MSCG"_#MSCG, multi-scale coarse-graining wrapper, "fix mscg"_fix_mscg.html, mscg, ext
|
||||
"OPT"_#OPT, optimized pair styles, "Section 5.3.5"_accelerate_opt.html, WWW bench, -
|
||||
"OPT"_#OPT, optimized pair styles, "Section 5.3.5"_accelerate_opt.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, -
|
||||
"PERI"_#PERI, Peridynamics models, "pair_style peri"_pair_peri.html, peri, -
|
||||
"POEMS"_#POEMS, coupled rigid body motion, "fix poems"_fix_poems.html, rigid, int
|
||||
"PYTHON"_#PYTHON, embed Python code in an input script, "python"_python.html, python, sys
|
||||
@ -101,8 +114,7 @@ Package, Description, Doc page, Example, Library
|
||||
"SHOCK"_#SHOCK, shock loading methods, "fix msst"_fix_msst.html, -, -
|
||||
"SNAP"_#SNAP, quantum-fitted potential, "pair snap"_pair_snap.html, snap, -
|
||||
"SRD"_#SRD, stochastic rotation dynamics, "fix srd"_fix_srd.html, srd, -
|
||||
"VORONOI"_#VORONOI, Voronoi tesselation, "compute voronoi/atom"_compute_voronoi_atom.html, -, ext
|
||||
:tb(ea=c,ca1=l)
|
||||
"VORONOI"_#VORONOI, Voronoi tesselation, "compute voronoi/atom"_compute_voronoi_atom.html, -, ext :tb(ea=c,ca1=l)
|
||||
|
||||
[USER packages] :link(table_user),p
|
||||
|
||||
@ -118,7 +130,7 @@ Package, Description, Doc page, Example, Library
|
||||
"USER-EFF"_#USER-EFF, electron force field,"pair_style eff/cut"_pair_eff.html, USER/eff, -
|
||||
"USER-FEP"_#USER-FEP, free energy perturbation,"compute fep"_compute_fep.html, USER/fep, -
|
||||
"USER-H5MD"_#USER-H5MD, dump output via HDF5,"dump h5md"_dump_h5md.html, -, ext
|
||||
"USER-INTEL"_#USER-INTEL, optimized Intel CPU and KNL styles,"Section 5.3.2"_accelerate_intel.html, WWW bench, -
|
||||
"USER-INTEL"_#USER-INTEL, optimized Intel CPU and KNL styles,"Section 5.3.2"_accelerate_intel.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, -
|
||||
"USER-LB"_#USER-LB, Lattice Boltzmann fluid,"fix lb/fluid"_fix_lb_fluid.html, USER/lb, -
|
||||
"USER-MANIFOLD"_#USER-MANIFOLD, motion on 2d surfaces,"fix manifoldforce"_fix_manifoldforce.html, USER/manifold, -
|
||||
"USER-MEAMC"_#USER-MEAMC, modified EAM potential (C++), "pair_style meam/c"_pair_meam.html, meam, -
|
||||
@ -126,7 +138,7 @@ Package, Description, Doc page, Example, Library
|
||||
"USER-MISC"_#USER-MISC, single-file contributions, USER-MISC/README, USER/misc, -
|
||||
"USER-MOLFILE"_#USER-MOLFILE, "VMD"_vmd_home molfile plug-ins,"dump molfile"_dump_molfile.html, -, ext
|
||||
"USER-NETCDF"_#USER-NETCDF, dump output via NetCDF,"dump netcdf"_dump_netcdf.html, -, ext
|
||||
"USER-OMP"_#USER-OMP, OpenMP-enabled styles,"Section 5.3.4"_accelerate_omp.html, WWW bench, -
|
||||
"USER-OMP"_#USER-OMP, OpenMP-enabled styles,"Section 5.3.4"_accelerate_omp.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, -
|
||||
"USER-PHONON"_#USER-PHONON, phonon dynamical matrix,"fix phonon"_fix_phonon.html, USER/phonon, -
|
||||
"USER-QMMM"_#USER-QMMM, QM/MM coupling,"fix qmmm"_fix_qmmm.html, USER/qmmm, ext
|
||||
"USER-QTB"_#USER-QTB, quantum nuclear effects,"fix qtb"_fix_qtb.html "fix qbmsst"_fix_qbmsst.html, qtb, -
|
||||
@ -136,8 +148,7 @@ Package, Description, Doc page, Example, Library
|
||||
"USER-SMTBQ"_#USER-SMTBQ, second moment tight binding QEq potential,"pair_style smtbq"_pair_smtbq.html, USER/smtbq, -
|
||||
"USER-SPH"_#USER-SPH, smoothed particle hydrodynamics,"SPH User Guide"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, -
|
||||
"USER-TALLY"_#USER-TALLY, pairwise tally computes,"compute XXX/tally"_compute_tally.html, USER/tally, -
|
||||
"USER-VTK"_#USER-VTK, dump output via VTK, "compute vtk"_dump_vtk.html, -, ext
|
||||
:tb(ea=c,ca1=l)
|
||||
"USER-VTK"_#USER-VTK, dump output via VTK, "compute vtk"_dump_vtk.html, -, ext :tb(ea=c,ca1=l)
|
||||
|
||||
:line
|
||||
:line
|
||||
@ -364,12 +375,15 @@ GPU package :link(GPU),h4
|
||||
[Contents:]
|
||||
|
||||
Dozens of pair styles and a version of the PPPM long-range Coulombic
|
||||
solver optimized for NVIDIA GPUs. All such styles have a "gpu" as a
|
||||
suffix in their style name. "Section 5.3.1"_accelerate_gpu.html gives
|
||||
details of what hardware and Cuda software is required on your system,
|
||||
solver optimized for GPUs. All such styles have a "gpu" as a
|
||||
suffix in their style name. The GPU code can be compiled with either
|
||||
CUDA or OpenCL, however the OpenCL variants are no longer actively
|
||||
maintained and only the CUDA versions are regularly tested.
|
||||
"Section 5.3.1"_accelerate_gpu.html gives details of what
|
||||
hardware and GPU software is required on your system,
|
||||
and details on how to build and use this package. Its styles can be
|
||||
invoked at run time via the "-sf gpu" or "-suffix gpu" "command-line
|
||||
switches"_Section_start.html#start_7. See also the "KOKKOS"_#KOKKOS
|
||||
switches"_Section_start.html#start_6. See also the "KOKKOS"_#KOKKOS
|
||||
package, which has GPU-enabled styles.
|
||||
|
||||
[Authors:] Mike Brown (Intel) while at Sandia and ORNL and Trung Nguyen
|
||||
@ -378,32 +392,41 @@ package, which has GPU-enabled styles.
|
||||
[Install or un-install:]
|
||||
|
||||
Before building LAMMPS with this package, you must first build the GPU
|
||||
library in lib/gpu from a set of provided C and Cuda files. You can
|
||||
library in lib/gpu from a set of provided C and CUDA files. You can
|
||||
do this manually if you prefer; follow the instructions in
|
||||
lib/gpu/README. You can also do it in one step from the lammps/src
|
||||
lib/gpu/README. Please note, that the GPU library uses MPI calls, so
|
||||
you have to make certain to use the same MPI library (or the STUBS
|
||||
library) settings as the main LAMMPS code. That same applies to the
|
||||
-DLAMMPS_BIGBIG, -DLAMMPS_SMALLBIG, or -DLAMMPS_SMALLSMALL define.
|
||||
|
||||
You can also do it in one step from the lammps/src
|
||||
dir, using a command like these, which simply invoke the
|
||||
lib/gpu/Install.py script with the specified args:
|
||||
|
||||
make lib-gpu # print help message
|
||||
make lib-gpu args="-m" # build GPU library with default Makefile.linux
|
||||
make lib-gpu args="-i xk7 -p single -o xk7.single" # create new Makefile.xk7.single, altered for single-precision
|
||||
make lib-gpu args="-i xk7 -p single -o xk7.single -m" # ditto, also build GPU library
|
||||
make lib-gpu # print help message
|
||||
make lib-gpu args="-b" # build GPU library with default Makefile.linux
|
||||
make lib-gpu args="-m xk7 -p single -o xk7.single" # create new Makefile.xk7.single, altered for single-precision
|
||||
make lib-gpu args="-m mpi -p mixed -b" # build GPU library with mixed precision using settings in Makefile.mpi :pre
|
||||
|
||||
Note that this procedure starts with one of the existing
|
||||
Makefile.machine files in lib/gpu. It allows you to alter 4 important
|
||||
settings in that Makefile, via the -h, -a, -p, -e switches,
|
||||
and save the new Makefile, if desired:
|
||||
Note that this procedure through the '-m machine' flag starts with one of
|
||||
the existing Makefile.machine files in lib/gpu. For your convenience,
|
||||
machine makefiles for "mpi" and "serial" are provided, which have the
|
||||
same settings as the corresponding machine makefiles in the main LAMMPS
|
||||
source folder. In addition you can alter 4 important settings in that
|
||||
Makefile, via the -h, -a, -p, -e switches, and also save a copy of the
|
||||
new Makefile, if desired:
|
||||
|
||||
CUDA_HOME = where NVIDIA Cuda software is installed on your system
|
||||
CUDA_HOME = where NVIDIA CUDA software is installed on your system
|
||||
CUDA_ARCH = what GPU hardware you have (see help message for details)
|
||||
CUDA_PRECISION = precision (double, mixed, single)
|
||||
EXTRAMAKE = which Makefile.lammps.* file to copy to Makefile.lammps :ul
|
||||
|
||||
If the library build is successful, 2 files should be created:
|
||||
lib/gpu/libgpu.a and lib/gpu/Makefile.lammps. The latter has settings
|
||||
that enable LAMMPS to link with Cuda libraries. If the settings in
|
||||
Makefile.lammps for your machine are not correct, the LAMMPS build
|
||||
will fail.
|
||||
If the library build is successful, at least 3 files should be created:
|
||||
lib/gpu/libgpu.a, lib/gpu/nvc_get_devices, and lib/gpu/Makefile.lammps.
|
||||
The latter has settings that enable LAMMPS to link with CUDA libraries.
|
||||
If the settings in Makefile.lammps for your machine are not correct,
|
||||
the LAMMPS build will fail, and lib/gpu/Makefile.lammps may need to
|
||||
be edited.
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
@ -427,8 +450,8 @@ src/GPU/README
|
||||
lib/gpu/README
|
||||
"Section 5.3"_Section_accelerate.html#acc_3
|
||||
"Section 5.3.1"_accelerate_gpu.html
|
||||
"Section 2.7 -sf gpu"_Section_start.html#start_7
|
||||
"Section 2.7 -pk gpu"_Section_start.html#start_7
|
||||
"Section 2.6 -sf gpu"_Section_start.html#start_6
|
||||
"Section 2.6 -pk gpu"_Section_start.html#start_6
|
||||
"package gpu"_package.html
|
||||
Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5 for pair styles followed by (g)
|
||||
"Benchmarks page"_http://lammps.sandia.gov/bench.html of web site :ul
|
||||
@ -492,14 +515,40 @@ Minnesota).
|
||||
|
||||
[Install or un-install:]
|
||||
|
||||
Using this package requires the KIM library and its models
|
||||
(interatomic potentials) to be downloaded and installed on your
|
||||
system. The library can be downloaded and built in lib/kim or
|
||||
elsewhere on your system. Details of the download, build, and install
|
||||
process for KIM are given in the lib/kim/README file.
|
||||
Before building LAMMPS with this package, you must first download and
|
||||
build the KIM library and include the KIM models that you want to
|
||||
use. You can do this manually if you prefer; follow the instructions
|
||||
in lib/kim/README. You can also do it in one step from the lammps/src
|
||||
dir, using a command like these, which simply invoke the
|
||||
lib/kim/Install.py script with the specified args.
|
||||
|
||||
Once that process is complete, you can then install/un-install the
|
||||
package and build LAMMPS in the usual manner:
|
||||
make lib-kim # print help message
|
||||
make lib-kim args="-b " # (re-)install KIM API lib with only example models
|
||||
make lib-kim args="-b -a Glue_Ercolessi_Adams_Al__MO_324507536345_001" # ditto plus one model
|
||||
make lib-kim args="-b -a everything" # install KIM API lib with all models
|
||||
make lib-kim args="-n -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # add one model or model driver
|
||||
make lib-kim args="-p /usr/local/kim-api" # use an existing KIM API installation at the provided location
|
||||
make lib-kim args="-p /usr/local/kim-api -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # ditto but add one model or driver :pre
|
||||
|
||||
Note that in LAMMPS lingo, a KIM model driver is a pair style
|
||||
(e.g. EAM or Tersoff). A KIM model is a pair style for a particular
|
||||
element or alloy and set of parameters, e.g. EAM for Cu with a
|
||||
specific EAM potential file. Also note that installing the KIM API
|
||||
library with all its models, may take around 30 min to build. Of
|
||||
course you only need to do that once.
|
||||
|
||||
See the list of KIM model drivers here:
|
||||
https://openkim.org/kim-items/model-drivers/alphabetical
|
||||
|
||||
See the list of all KIM models here:
|
||||
https://openkim.org/kim-items/models/by-model-drivers
|
||||
|
||||
See the list of example KIM models included by default here:
|
||||
https://openkim.org/kim-api in the "What is in the KIM API source
|
||||
package?" section
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
|
||||
make yes-kim
|
||||
make machine :pre
|
||||
@ -523,13 +572,13 @@ KOKKOS package :link(KOKKOS),h4
|
||||
|
||||
Dozens of atom, pair, bond, angle, dihedral, improper, fix, compute
|
||||
styles adapted to compile using the Kokkos library which can convert
|
||||
them to OpenMP or Cuda code so that they run efficiently on multicore
|
||||
them to OpenMP or CUDA code so that they run efficiently on multicore
|
||||
CPUs, KNLs, or GPUs. All the styles have a "kk" as a suffix in their
|
||||
style name. "Section 5.3.3"_accelerate_kokkos.html 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" "command-line
|
||||
switches"_Section_start.html#start_7. Also see the "GPU"_#GPU,
|
||||
switches"_Section_start.html#start_6. Also see the "GPU"_#GPU,
|
||||
"OPT"_#OPT, "USER-INTEL"_#USER-INTEL, and "USER-OMP"_#USER-OMP
|
||||
packages, which have styles optimized for CPUs, KNLs, and GPUs.
|
||||
|
||||
@ -553,28 +602,28 @@ files for examples.
|
||||
For multicore CPUs using OpenMP:
|
||||
|
||||
KOKKOS_DEVICES = OpenMP
|
||||
KOKKOS_ARCH = HSW # HSW = Haswell, SNB = SandyBridge, BDW = Broadwell, etc
|
||||
KOKKOS_ARCH = HSW # HSW = Haswell, SNB = SandyBridge, BDW = Broadwell, etc :pre
|
||||
|
||||
For Intel KNLs using OpenMP:
|
||||
|
||||
KOKKOS_DEVICES = OpenMP
|
||||
KOKKOS_ARCH = KNL
|
||||
KOKKOS_ARCH = KNL :pre
|
||||
|
||||
For NVIDIA GPUs using Cuda:
|
||||
For NVIDIA GPUs using CUDA:
|
||||
|
||||
KOKKOS_DEVICES = Cuda
|
||||
KOKKOS_ARCH = Pascal60,Power8 # P100 hosted by an IBM Power8, etc
|
||||
KOKKOS_ARCH = Kepler37,Power8 # K80 hosted by an IBM Power8, etc
|
||||
KOKKOS_ARCH = Kepler37,Power8 # K80 hosted by an IBM Power8, etc :pre
|
||||
|
||||
For GPUs, you also need these 2 lines in your Makefile.machine before
|
||||
the CC line is defined, in this case for use with OpenMPI mpicxx. The
|
||||
2 lines define a nvcc wrapper compiler, which will use nvcc for
|
||||
compiling Cuda files or use a C++ compiler for non-Kokkos, non-Cuda
|
||||
compiling CUDA files or use a C++ compiler for non-Kokkos, non-CUDA
|
||||
files.
|
||||
|
||||
KOKKOS_ABSOLUTE_PATH = $(shell cd $(KOKKOS_PATH); pwd)
|
||||
export OMPI_CXX = $(KOKKOS_ABSOLUTE_PATH)/config/nvcc_wrapper
|
||||
CC = mpicxx
|
||||
CC = mpicxx :pre
|
||||
|
||||
Once you have an appropriate Makefile.machine, you can
|
||||
install/un-install the package and build LAMMPS in the usual manner.
|
||||
@ -597,9 +646,9 @@ src/KOKKOS/README
|
||||
lib/kokkos/README
|
||||
"Section 5.3"_Section_accelerate.html#acc_3
|
||||
"Section 5.3.3"_accelerate_kokkos.html
|
||||
"Section 2.7 -k on ..."_Section_start.html#start_7
|
||||
"Section 2.7 -sf kk"_Section_start.html#start_7
|
||||
"Section 2.7 -pk kokkos"_Section_start.html#start_7
|
||||
"Section 2.6 -k on ..."_Section_start.html#start_6
|
||||
"Section 2.6 -sf kk"_Section_start.html#start_6
|
||||
"Section 2.6 -pk kokkos"_Section_start.html#start_6
|
||||
"package kokkos"_package.html
|
||||
Styles sections of "Section 3.5"_Section_commands.html#cmd_5 for styles followed by (k)
|
||||
"Benchmarks page"_http://lammps.sandia.gov/bench.html of web site :ul
|
||||
@ -710,6 +759,12 @@ MEAM package :link(MEAM),h4
|
||||
|
||||
A pair style for the modified embedded atom (MEAM) potential.
|
||||
|
||||
Please note that the MEAM package has been superseded by the
|
||||
"USER-MEAMC"_#USER-MEAMC package, which is a direct translation
|
||||
of the MEAM package to C++. USER-MEAMC contains additional
|
||||
optimizations making it run faster than MEAM on most machines,
|
||||
while providing the identical features and USER interface.
|
||||
|
||||
[Author:] Greg Wagner (Northwestern U) while at Sandia.
|
||||
|
||||
[Install or un-install:]
|
||||
@ -720,9 +775,10 @@ follow the instructions in lib/meam/README. You can also do it in one
|
||||
step from the lammps/src dir, using a command like these, which simply
|
||||
invoke the lib/meam/Install.py script with the specified args:
|
||||
|
||||
make lib-meam # print help message
|
||||
make lib-meam args="-m gfortran" # build with GNU Fortran compiler
|
||||
make lib-meam args="-m ifort" # build with Intel ifort compiler :pre
|
||||
make lib-meam # print help message
|
||||
make lib-meam args="-m mpi" # build with default Fortran compiler compatible with your MPI library
|
||||
make lib-meam args="-m serial" # build with compiler compatible with "make serial" (GNU Fortran)
|
||||
make lib-meam args="-m ifort" # build with Intel Fortran compiler using Makefile.ifort :pre
|
||||
|
||||
The build should produce two files: lib/meam/libmeam.a and
|
||||
lib/meam/Makefile.lammps. The latter is copied from an existing
|
||||
@ -765,6 +821,9 @@ A variety of compute, fix, pair, dump styles with specialized
|
||||
capabilities that don't align with other packages. Do a directory
|
||||
listing, "ls src/MISC", to see the list of commands.
|
||||
|
||||
NOTE: the MISC package contains styles that require using the
|
||||
-restrict flag, when compiling with Intel compilers.
|
||||
|
||||
[Install or un-install:]
|
||||
|
||||
make yes-misc
|
||||
@ -878,9 +937,9 @@ University of Chicago.
|
||||
|
||||
Before building LAMMPS with this package, you must first download and
|
||||
build the MS-CG library. Building the MS-CG library and using it from
|
||||
LAMMPS requires a C++11 compatible compiler, and that LAPACK and GSL
|
||||
(GNU Scientific Library) libraries be installed on your machine. See
|
||||
the lib/mscg/README and MSCG/Install files for more details.
|
||||
LAMMPS requires a C++11 compatible compiler and that the GSL
|
||||
(GNU Scientific Library) headers and libraries are installed on your
|
||||
machine. See the lib/mscg/README and MSCG/Install files for more details.
|
||||
|
||||
Assuming these libraries are in place, you can do the download and
|
||||
build of MS-CG manually if you prefer; follow the instructions in
|
||||
@ -888,15 +947,16 @@ lib/mscg/README. You can also do it in one step from the lammps/src
|
||||
dir, using a command like these, which simply invoke the
|
||||
lib/mscg/Install.py script with the specified args:
|
||||
|
||||
make lib-mscg # print help message
|
||||
make lib-mscg args="-g -b -l" # download and build in default lib/mscg/MSCG-release-master
|
||||
make lib-mscg args="-h . MSCG -g -b -l" # download and build in lib/mscg/MSCG
|
||||
make lib-mscg args="-h ~ MSCG -g -b -l" # download and build in ~/mscg :pre
|
||||
make lib-mscg # print help message
|
||||
make lib-mscg args="-b -m serial" # download and build in lib/mscg/MSCG-release-master
|
||||
# with the settings compatible with "make serial"
|
||||
make lib-mscg args="-b -m mpi" # download and build in lib/mscg/MSCG-release-master
|
||||
# with the settings compatible with "make mpi"
|
||||
make lib-mscg args="-p /usr/local/mscg-release" # use the existing MS-CG installation in /usr/local/mscg-release :pre
|
||||
|
||||
Note that the final -l switch is to create 2 symbolic (soft) links,
|
||||
"includelink" and "liblink", in lib/mscg to point to the MS-CG src
|
||||
dir. When LAMMPS builds it will use these links. You should not need
|
||||
to edit the lib/mscg/Makefile.lammps file.
|
||||
Note that 2 symbolic (soft) links, "includelink" and "liblink", will be created in lib/mscg
|
||||
to point to the MS-CG src/installation dir. When LAMMPS is built in src it will use these links.
|
||||
You should not need to edit the lib/mscg/Makefile.lammps file.
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
@ -926,7 +986,7 @@ CHARMM, and Morse potentials. The styles have an "opt" suffix in
|
||||
their style name. "Section 5.3.5"_accelerate_opt.html 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" "command-line
|
||||
switches"_Section_start.html#start_7. See also the "KOKKOS"_#KOKKOS,
|
||||
switches"_Section_start.html#start_6. See also the "KOKKOS"_#KOKKOS,
|
||||
"USER-INTEL"_#USER-INTEL, and "USER-OMP"_#USER-OMP packages, which
|
||||
have styles optimized for CPU performance.
|
||||
|
||||
@ -942,18 +1002,18 @@ make no-opt
|
||||
make machine :pre
|
||||
|
||||
NOTE: The compile flag "-restrict" must be used to build LAMMPS with
|
||||
the OPT package. It should be added to the CCFLAGS line of your
|
||||
Makefile.machine. See Makefile.opt in src/MAKE/OPTIONS for an
|
||||
example.
|
||||
the OPT package when using Intel compilers. It should be added to
|
||||
the CCFLAGS line of your Makefile.machine. See Makefile.opt in
|
||||
src/MAKE/OPTIONS for an example.
|
||||
|
||||
CCFLAGS: add -restrict :ul
|
||||
CCFLAGS: add -restrict for Intel compilers :ul
|
||||
|
||||
[Supporting info:]
|
||||
|
||||
src/OPT: filenames -> commands
|
||||
"Section 5.3"_Section_accelerate.html#acc_3
|
||||
"Section 5.3.5"_accelerate_opt.html
|
||||
"Section 2.7 -sf opt"_Section_start.html#start_7
|
||||
"Section 2.6 -sf opt"_Section_start.html#start_6
|
||||
Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5 for pair styles followed by (t)
|
||||
"Benchmarks page"_http://lammps.sandia.gov/bench.html of web site :ul
|
||||
|
||||
@ -1015,9 +1075,10 @@ follow the instructions in lib/poems/README. You can also do it in
|
||||
one step from the lammps/src dir, using a command like these, which
|
||||
simply invoke the lib/poems/Install.py script with the specified args:
|
||||
|
||||
make lib-poems # print help message
|
||||
make lib-poems args="-m g++" # build with GNU g++ compiler
|
||||
make lib-poems args="-m icc" # build with Intel icc compiler :pre
|
||||
make lib-poems # print help message
|
||||
make lib-poems args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
|
||||
make lib-poems args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
|
||||
make lib-poems args="-m icc" # build with Intel icc compiler :pre
|
||||
|
||||
The build should produce two files: lib/poems/libpoems.a and
|
||||
lib/poems/Makefile.lammps. The latter is copied from an existing
|
||||
@ -1127,9 +1188,10 @@ follow the instructions in lib/reax/README. You can also do it in one
|
||||
step from the lammps/src dir, using a command like these, which simply
|
||||
invoke the lib/reax/Install.py script with the specified args:
|
||||
|
||||
make lib-reax # print help message
|
||||
make lib-reax args="-m gfortran" # build with GNU Fortran compiler
|
||||
make lib-reax args="-m ifort" # build with Intel ifort compiler :pre
|
||||
make lib-reax # print help message
|
||||
make lib-reax args="-m serial" # build with GNU Fortran compiler (settings as with "make serial")
|
||||
make lib-reax args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
||||
make lib-reax args="-m ifort" # build with Intel ifort compiler :pre
|
||||
|
||||
The build should produce two files: lib/reax/libreax.a and
|
||||
lib/reax/Makefile.lammps. The latter is copied from an existing
|
||||
@ -1346,15 +1408,15 @@ one step from the lammps/src dir, using a command like these, which
|
||||
simply invoke the lib/voronoi/Install.py script with the specified
|
||||
args:
|
||||
|
||||
make lib-voronoi # print help message
|
||||
make lib-voronoi args="-g -b -l" # download and build in default lib/voronoi/voro++-0.4.6
|
||||
make lib-voronoi args="-h . voro++ -g -b -l" # download and build in lib/voronoi/voro++
|
||||
make lib-voronoi args="-h ~ voro++ -g -b -l" # download and build in ~/voro++ :pre
|
||||
make lib-voronoi # print help message
|
||||
make lib-voronoi args="-b" # download and build the default version in lib/voronoi/voro++-<version>
|
||||
make lib-voronoi args="-p $HOME/voro++" # use existing Voro++ installation in $HOME/voro++
|
||||
make lib-voronoi args="-b -v voro++0.4.6" # download and build the 0.4.6 version in lib/voronoi/voro++-0.4.6 :pre
|
||||
|
||||
Note that the final -l switch is to create 2 symbolic (soft) links,
|
||||
"includelink" and "liblink", in lib/voronoi to point to the Voro++ src
|
||||
dir. When LAMMPS builds it will use these links. You should not need
|
||||
to edit the lib/voronoi/Makefile.lammps file.
|
||||
Note that 2 symbolic (soft) links, "includelink" and "liblink", are
|
||||
created in lib/voronoi to point to the Voro++ src dir. When LAMMPS
|
||||
builds in src it will use these links. You should not need to edit
|
||||
the lib/voronoi/Makefile.lammps file.
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
@ -1396,7 +1458,8 @@ from the lammps/src dir, using a command like these, which simply
|
||||
invoke the lib/atc/Install.py script with the specified args:
|
||||
|
||||
make lib-atc # print help message
|
||||
make lib-atc args="-m g++" # build with GNU g++ compiler
|
||||
make lib-atc args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
|
||||
make lib-atc args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
|
||||
make lib-atc args="-m icc" # build with Intel icc compiler :pre
|
||||
|
||||
The build should produce two files: lib/atc/libatc.a and
|
||||
@ -1413,8 +1476,10 @@ can either exist on your system, or you can use the files provided in
|
||||
lib/linalg. In the latter case you also need to build the library
|
||||
in lib/linalg with a command like these:
|
||||
|
||||
make lib-linalg # print help message
|
||||
make lib-atc args="-m gfortran" # build with GNU Fortran compiler
|
||||
make lib-linalg # print help message
|
||||
make lib-linalg args="-m serial" # build with GNU Fortran compiler (settings as with "make serial")
|
||||
make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
||||
make lib-linalg args="-m gfortran" # build with GNU Fortran compiler :pre
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
@ -1454,9 +1519,10 @@ follow the instructions in lib/awpmd/README. You can also do it in
|
||||
one step from the lammps/src dir, using a command like these, which
|
||||
simply invoke the lib/awpmd/Install.py script with the specified args:
|
||||
|
||||
make lib-awpmd # print help message
|
||||
make lib-awpmd args="-m g++" # build with GNU g++ compiler
|
||||
make lib-awpmd args="-m icc" # build with Intel icc compiler :pre
|
||||
make lib-awpmd # print help message
|
||||
make lib-awpmd args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
|
||||
make lib-awpmd args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
|
||||
make lib-awpmd args="-m icc" # build with Intel icc compiler :pre
|
||||
|
||||
The build should produce two files: lib/awpmd/libawpmd.a and
|
||||
lib/awpmd/Makefile.lammps. The latter is copied from an existing
|
||||
@ -1472,8 +1538,10 @@ these can either exist on your system, or you can use the files
|
||||
provided in lib/linalg. In the latter case you also need to build the
|
||||
library in lib/linalg with a command like these:
|
||||
|
||||
make lib-linalg # print help message
|
||||
make lib-atc args="-m gfortran" # build with GNU Fortran compiler
|
||||
make lib-linalg # print help message
|
||||
make lib-linalg args="-m serial" # build with GNU Fortran compiler (settings as with "make serial")
|
||||
make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
||||
make lib-linalg args="-m gfortran" # build with GNU Fortran compiler :pre
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
@ -1566,9 +1634,11 @@ Restraints. A "fix colvars"_fix_colvars.html command is implemented
|
||||
which wraps a COLVARS library, which implements these methods.
|
||||
simulations.
|
||||
|
||||
[Authors:] Axel Kohlmeyer (Temple U). The COLVARS library was written
|
||||
by Giacomo Fiorin (ICMS, Temple University, Philadelphia, PA, USA) and
|
||||
Jerome Henin (LISM, CNRS, Marseille, France).
|
||||
[Authors:] The COLVARS library is written and maintained by
|
||||
Giacomo Fiorin (ICMS, Temple University, Philadelphia, PA, USA)
|
||||
and Jerome Henin (LISM, CNRS, Marseille, France), originally for
|
||||
the NAMD MD code, but with portability in mind. Axel Kohlmeyer
|
||||
(Temple U) provided the interface to LAMMPS.
|
||||
|
||||
[Install or un-install:]
|
||||
|
||||
@ -1580,7 +1650,9 @@ which simply invoke the lib/colvars/Install.py script with the
|
||||
specified args:
|
||||
|
||||
make lib-colvars # print help message
|
||||
make lib-colvars args="-m g++" # build with GNU g++ compiler :pre
|
||||
make lib-colvars args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
|
||||
make lib-colvars args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
|
||||
make lib-colvars args="-m g++-debug" # build with GNU g++ compiler and colvars debugging enabled :pre
|
||||
|
||||
The build should produce two files: lib/colvars/libcolvars.a and
|
||||
lib/colvars/Makefile.lammps. The latter is copied from an existing
|
||||
@ -1863,12 +1935,17 @@ All of them have an "intel" in their style name. "Section
|
||||
5.3.2"_accelerate_intel.html 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 intel" or
|
||||
"-suffix intel" "command-line switches"_Section_start.html#start_7.
|
||||
"-suffix intel" "command-line switches"_Section_start.html#start_6.
|
||||
Also see the "KOKKOS"_#KOKKOS, "OPT"_#OPT, and "USER-OMP"_#USER-OMP
|
||||
packages, which have styles optimized for CPUs and KNLs.
|
||||
|
||||
You need to have an Intel compiler, version 14 or higher to take full
|
||||
advantage of this package.
|
||||
advantage of this package. While compilation with GNU compilers is
|
||||
supported, performance will be suboptimal.
|
||||
|
||||
NOTE: the USER-INTEL package contains styles that require using the
|
||||
-restrict flag, when compiling with Intel compilers.
|
||||
|
||||
|
||||
[Author:] Mike Brown (Intel).
|
||||
|
||||
@ -1885,17 +1962,17 @@ For CPUs:
|
||||
|
||||
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
|
||||
-fno-alias -ansi-alias -restrict $(OPTFLAGS)
|
||||
-fno-alias -ansi-alias -restrict $(OPTFLAGS)
|
||||
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
|
||||
LIB = -ltbbmalloc -ltbbmalloc_proxy
|
||||
LIB = -ltbbmalloc -ltbbmalloc_proxy :pre
|
||||
|
||||
For KNLs:
|
||||
|
||||
OPTFLAGS = -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload \
|
||||
-fno-alias -ansi-alias -restrict $(OPTFLAGS)
|
||||
-fno-alias -ansi-alias -restrict $(OPTFLAGS)
|
||||
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
|
||||
LIB = -ltbbmalloc
|
||||
LIB = -ltbbmalloc :pre
|
||||
|
||||
Once you have an appropriate Makefile.machine, you can
|
||||
install/un-install the package and build LAMMPS in the usual manner.
|
||||
@ -1919,8 +1996,8 @@ src/USER-INTEL: filenames -> commands
|
||||
src/USER-INTEL/README
|
||||
"Section 5.3"_Section_accelerate.html#acc_3
|
||||
"Section 5.3.2"_accelerate_gpu.html
|
||||
"Section 2.7 -sf intel"_Section_start.html#start_7
|
||||
"Section 2.7 -pk intel"_Section_start.html#start_7
|
||||
"Section 2.6 -sf intel"_Section_start.html#start_6
|
||||
"Section 2.6 -pk intel"_Section_start.html#start_6
|
||||
"package intel"_package.html
|
||||
Styles sections of "Section 3.5"_Section_commands.html#cmd_5 for styles followed by (i)
|
||||
src/USER-INTEL/TEST
|
||||
@ -2193,18 +2270,22 @@ via OpenMP directives. All of them have an "omp" in their style name.
|
||||
"Section 5.3.4"_accelerate_omp.html 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" "command-line switches"_Section_start.html#start_7.
|
||||
"-suffix omp" "command-line switches"_Section_start.html#start_6.
|
||||
Also see the "KOKKOS"_#KOKKOS, "OPT"_#OPT, and
|
||||
"USER-INTEL"_#USER-INTEL packages, which have styles optimized for
|
||||
CPUs.
|
||||
|
||||
[Author:] Axel Kohlmeyer (Temple U).
|
||||
|
||||
NOTE: The compile flags "-restrict" and "-fopenmp" must be used to
|
||||
build LAMMPS with the USER-OMP package, as well as the link flag
|
||||
"-fopenmp". They should be added to the CCFLAGS and LINKFLAGS lines
|
||||
of your Makefile.machine. See src/MAKE/OPTIONS/Makefile.omp for an
|
||||
example.
|
||||
NOTE: To enable multi-threading support the compile flag "-fopenmp"
|
||||
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
|
||||
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.
|
||||
See src/MAKE/OPTIONS/Makefile.omp for an example.
|
||||
|
||||
Once you have an appropriate Makefile.machine, you can
|
||||
install/un-install the package and build LAMMPS in the usual manner:
|
||||
@ -2217,7 +2298,7 @@ make machine :pre
|
||||
make no-user-omp
|
||||
make machine :pre
|
||||
|
||||
CCFLAGS: add -fopenmp and -restrict
|
||||
CCFLAGS: add -fopenmp (and -restrict when using Intel compilers)
|
||||
LINKFLAGS: add -fopenmp :ul
|
||||
|
||||
[Supporting info:]
|
||||
@ -2226,8 +2307,8 @@ src/USER-OMP: filenames -> commands
|
||||
src/USER-OMP/README
|
||||
"Section 5.3"_Section_accelerate.html#acc_3
|
||||
"Section 5.3.4"_accelerate_omp.html
|
||||
"Section 2.7 -sf omp"_Section_start.html#start_7
|
||||
"Section 2.7 -pk omp"_Section_start.html#start_7
|
||||
"Section 2.6 -sf omp"_Section_start.html#start_6
|
||||
"Section 2.6 -pk omp"_Section_start.html#start_6
|
||||
"package omp"_package.html
|
||||
Styles sections of "Section 3.5"_Section_commands.html#cmd_5 for styles followed by (o)
|
||||
"Benchmarks page"_http://lammps.sandia.gov/bench.html of web site :ul
|
||||
@ -2286,12 +2367,14 @@ without changes to LAMMPS itself.
|
||||
|
||||
Before building LAMMPS with this package, you must first build the
|
||||
QMMM library in lib/qmmm. You can do this manually if you prefer;
|
||||
follow the first two steps explained in lib/colvars/README. You can
|
||||
follow the first two steps explained in lib/qmmm/README. You can
|
||||
also do it in one step from the lammps/src dir, using a command like
|
||||
these, which simply invoke the lib/colvars/Install.py script with the
|
||||
these, which simply invoke the lib/qmmm/Install.py script with the
|
||||
specified args:
|
||||
|
||||
make lib-qmmm # print help message
|
||||
make lib-qmmm args="-m serial" # build with GNU Fortran compiler (settings as in "make serial")
|
||||
make lib-qmmm args="-m mpi" # build with default MPI compiler (settings as in "make mpi")
|
||||
make lib-qmmm args="-m gfortran" # build with GNU Fortran compiler :pre
|
||||
|
||||
The build should produce two files: lib/qmmm/libqmmm.a and
|
||||
@ -2468,15 +2551,13 @@ follow the instructions in lib/smd/README. You can also do it in one
|
||||
step from the lammps/src dir, using a command like these, which simply
|
||||
invoke the lib/smd/Install.py script with the specified args:
|
||||
|
||||
make lib-smd # print help message
|
||||
make lib-smd args="-g -l" # download in default lib/smd/eigen-eigen-*
|
||||
make lib-smd args="-h . eigen -g -l" # download in lib/smd/eigen
|
||||
make lib-smd args="-h ~ eigen -g -l" # download and build in ~/eigen :pre
|
||||
make lib-smd # print help message
|
||||
make lib-smd args="-b" # download and build in default lib/smd/eigen-eigen-...
|
||||
make lib-smd args="-p /usr/include/eigen3" # use existing Eigen installation in /usr/include/eigen3 :pre
|
||||
|
||||
Note that the final -l switch is to create a symbolic (soft) link
|
||||
named "includelink" in lib/smd to point to the Eigen dir. When LAMMPS
|
||||
builds it will use this link. You should not need to edit the
|
||||
lib/smd/Makefile.lammps file.
|
||||
Note that a symbolic (soft) link named "includelink" is created in
|
||||
lib/smd to point to the Eigen dir. When LAMMPS builds it will use
|
||||
this link. You should not need to edit the lib/smd/Makefile.lammps file.
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
usual manner:
|
||||
|
||||
@ -198,7 +198,7 @@ file and the shared library.
|
||||
11.3 Building LAMMPS as a shared library :link(py_3),h4
|
||||
|
||||
Instructions on how to build LAMMPS as a shared library are given in
|
||||
"Section 2.5"_Section_start.html#start_5. A shared library is one
|
||||
"Section 2.4"_Section_start.html#start_4. A shared library is one
|
||||
that is dynamically loadable, which is what Python requires to wrap
|
||||
LAMMPS. On Linux this is a library file that ends in ".so", not ".a".
|
||||
|
||||
@ -217,7 +217,7 @@ NOTE: If you are building LAMMPS with an MPI or FFT library or other
|
||||
auxiliary libraries (used by various packages), then all of these
|
||||
extra libraries must also be shared libraries. If the LAMMPS
|
||||
shared-library build fails with an error complaining about this, see
|
||||
"Section 2.5"_Section_start.html#start_5 for more details.
|
||||
"Section 2.4"_Section_start.html#start_4 for more details.
|
||||
|
||||
:line
|
||||
|
||||
@ -439,7 +439,7 @@ first importing from the lammps.py file:
|
||||
>>> CDLL("liblammps.so") :pre
|
||||
|
||||
If an error occurs, carefully go thru the steps in "Section
|
||||
2.5"_Section_start.html#start_5 and above about building a shared
|
||||
2.4"_Section_start.html#start_4 and above about building a shared
|
||||
library and about insuring Python can find the necessary two files
|
||||
it needs.
|
||||
|
||||
|
||||
@ -14,11 +14,11 @@ experienced users.
|
||||
2.1 "What's in the LAMMPS distribution"_#start_1
|
||||
2.2 "Making LAMMPS"_#start_2
|
||||
2.3 "Making LAMMPS with optional packages"_#start_3
|
||||
2.5 "Building LAMMPS as a library"_#start_4
|
||||
2.6 "Running LAMMPS"_#start_5
|
||||
2.7 "Command-line options"_#start_6
|
||||
2.8 "Screen output"_#start_7
|
||||
2.9 "Tips for users of previous versions"_#start_8 :all(b)
|
||||
2.4 "Building LAMMPS as a library"_#start_4
|
||||
2.5 "Running LAMMPS"_#start_5
|
||||
2.6 "Command-line options"_#start_6
|
||||
2.7 "Screen output"_#start_7
|
||||
2.8 "Tips for users of previous versions"_#start_8 :all(b)
|
||||
|
||||
:line
|
||||
|
||||
@ -434,20 +434,39 @@ files. Note that on some large parallel machines which use "modules"
|
||||
for their compile/link environements, you may simply need to include
|
||||
the correct module in your build environment. Or the parallel machine
|
||||
may have a vendor-provided FFT library which the compiler has no
|
||||
trouble finding.
|
||||
trouble finding. See the src/MAKE/OPTIONS/Makefile.fftw file for an
|
||||
example of how to specify these variables to use the FFTW3 library.
|
||||
|
||||
FFTW is a fast, portable library that should also work on any
|
||||
platform. You can download it from
|
||||
FFTW is fast, portable library that should also work on any platform
|
||||
and typically be faster than KISS FFT. You can download it from
|
||||
"www.fftw.org"_http://www.fftw.org. Both the legacy version 2.1.X and
|
||||
the newer 3.X versions are supported as -DFFT_FFTW2 or -DFFT_FFTW3.
|
||||
Building FFTW for your box should be as simple as ./configure; make.
|
||||
Note that on some platforms FFTW2 has been pre-installed, and uses
|
||||
renamed files indicating the precision it was compiled with,
|
||||
e.g. sfftw.h, or dfftw.h instead of fftw.h. In this case, you can
|
||||
specify an additional define variable for FFT_INC called -DFFTW_SIZE,
|
||||
which will select the correct include file. In this case, for FFT_LIB
|
||||
you must also manually specify the correct library, namely -lsfftw or
|
||||
-ldfftw.
|
||||
Building FFTW for your box should be as simple as ./configure; make;
|
||||
make install. The install command typically requires root privileges
|
||||
(e.g. invoke it via sudo), unless you specify a local directory with
|
||||
the "--prefix" option of configure. Type "./configure --help" to see
|
||||
various options.
|
||||
|
||||
If you wish to have FFTW support for single-precision FFTs (see below
|
||||
about -DFFT_SINGLE) in addition to the default double-precision FFTs,
|
||||
you will need to build FFTW a second time for single-precision. For
|
||||
FFTW3, do this via:
|
||||
|
||||
make clean
|
||||
./configure --enable-single; make; make install :pre
|
||||
|
||||
which should produce the additional library libfftw3f.a.
|
||||
|
||||
For FFTW2, do this:
|
||||
|
||||
make clean
|
||||
./configure --enable-float --enable-type-prefix; make; make install :pre
|
||||
|
||||
which should produce the additional library libsfftw.a and additional
|
||||
include file sfttw.a. Note that on some platforms FFTW2 has been
|
||||
pre-installed for both single- and double-precision, and may already
|
||||
have these files as well as libdfftw.a and dfftw.h for double
|
||||
precision.
|
||||
|
||||
The FFT_INC variable also allows for a -DFFT_SINGLE setting that will
|
||||
use single-precision FFTs with PPPM, which can speed-up long-range
|
||||
@ -459,6 +478,16 @@ accuracy for reduced memory use and parallel communication costs for
|
||||
transposing 3d FFT data. Note that single precision FFTs have only
|
||||
been tested with the FFTW3, FFTW2, MKL, and KISS FFT options.
|
||||
|
||||
When using -DFFT_SINGLE with FFTW3 or FFTW2, you need to build FFTW
|
||||
with support for single-precision, as explained above. For FFTW3 you
|
||||
also need to include -lfftw3f with the FFT_LIB setting, in addition to
|
||||
-lfftw3. For FFTW2, you also need to specify -DFFT_SIZE with the
|
||||
FFT_INC setting and -lsfftw with the FFT_LIB setting (in place of
|
||||
-lfftw). Similarly, if FFTW2 has been preinstalled with an explicit
|
||||
double-precision library (libdfftw.a and not the default libfftw.a),
|
||||
then you can specify -DFFT_SIZE (and not -DFFT_SINGLE), and specify
|
||||
-ldfftw to use double-precision FFTs.
|
||||
|
||||
Step 7 :h6
|
||||
|
||||
The 3 JPG variables allow you to specify a JPEG and/or PNG library
|
||||
@ -558,8 +587,7 @@ Typing "make clean-all" or "make clean-machine" will delete *.o object
|
||||
files created when LAMMPS is built, for either all builds or for a
|
||||
particular machine.
|
||||
|
||||
Changing the LAMMPS size limits via -DLAMMPS_SMALLBIG or
|
||||
-DLAMMPS_BIGBIG or -DLAMMPS_SMALLSMALL :h6
|
||||
Changing the LAMMPS size limits via -DLAMMPS_SMALLBIG or -DLAMMPS_BIGBIG or -DLAMMPS_SMALLSMALL :h6
|
||||
|
||||
As explained above, any of these 3 settings can be specified on the
|
||||
LMP_INC line in your low-level src/MAKE/Makefile.foo.
|
||||
@ -630,7 +658,16 @@ utilities.
|
||||
For Cygwin and the MinGW cross-compilers, suitable makefiles are
|
||||
provided in src/MAKE/MACHINES. When using other compilers, like
|
||||
Visual C++ or Intel compilers for Windows, you may have to implement
|
||||
your own build system. Since none of the current LAMMPS core developers
|
||||
your own build system. Due to differences between the Windows OS
|
||||
and Windows system libraries to Unix-like environments like Linux
|
||||
or MacOS, when compiling for Windows a few adjustments may be needed:
|
||||
|
||||
Do not set the -DLAMMPS_MEMALIGN define (see LMP_INC makefile variable)
|
||||
Add -lwsock32 -lpsapi to the linker flags (see LIB makefile variable)
|
||||
Try adding -static-libgcc or -static or both to the linker flags when your
|
||||
LAMMPS executable complains about missing .dll files :ul
|
||||
|
||||
Since none of the current LAMMPS core developers
|
||||
has significant experience building executables on Windows, we are
|
||||
happy to distribute contributed instructions and modifications, but
|
||||
we cannot provide support for those.
|
||||
@ -685,7 +722,7 @@ type
|
||||
lmp_machine -h :pre
|
||||
|
||||
to run your executable with the optional "-h command-line
|
||||
switch"_#start_7 for "help", which will list the styles and commands
|
||||
switch"_#start_6 for "help", which will list the styles and commands
|
||||
known to your executable, and immediately exit.
|
||||
|
||||
:line
|
||||
@ -880,7 +917,7 @@ src/MAKE/OPTIONS, which include the settings. Note that the
|
||||
USER-INTEL and KOKKOS packages can use settings that build LAMMPS for
|
||||
different hardware. The USER-INTEL package can be compiled for Intel
|
||||
CPUs and KNLs; the KOKKOS package builds for CPUs (OpenMP), GPUs
|
||||
(Cuda), and Intel KNLs.
|
||||
(CUDA), and Intel KNLs.
|
||||
|
||||
Makefile.intel_cpu
|
||||
Makefile.intel_phi
|
||||
|
||||
@ -54,7 +54,7 @@ specify the # of GPUs per node
|
||||
use GPU styles in your input script :ul
|
||||
|
||||
The latter two steps can be done using the "-pk gpu" and "-sf gpu"
|
||||
"command-line switches"_Section_start.html#start_7 respectively. Or
|
||||
"command-line switches"_Section_start.html#start_6 respectively. Or
|
||||
the effect of the "-pk" or "-sf" switches can be duplicated by adding
|
||||
the "package gpu"_package.html or "suffix gpu"_suffix.html commands
|
||||
respectively to your input script.
|
||||
@ -62,7 +62,7 @@ respectively to your input script.
|
||||
[Required hardware/software:]
|
||||
|
||||
To use this package, you currently need to have an NVIDIA GPU and
|
||||
install the NVIDIA Cuda software on your system:
|
||||
install the NVIDIA CUDA software on your system:
|
||||
|
||||
Check if you have an NVIDIA GPU: cat /proc/driver/nvidia/gpus/0/information
|
||||
Go to http://www.nvidia.com/object/cuda_get.html
|
||||
@ -74,13 +74,8 @@ Run lammps/lib/gpu/nvc_get_devices (after building the GPU library, see below) t
|
||||
This requires two steps (a,b): build the GPU library, then build
|
||||
LAMMPS with the GPU package.
|
||||
|
||||
You can do both these steps in one line, using the src/Make.py script,
|
||||
described in "Section 2.4"_Section_start.html#start_4 of the manual.
|
||||
Type "Make.py -h" for help. If run from the src directory, this
|
||||
command will create src/lmp_gpu using src/MAKE/Makefile.mpi as the
|
||||
starting Makefile.machine:
|
||||
|
||||
Make.py -p gpu -gpu mode=single arch=31 -o gpu -a lib-gpu file mpi :pre
|
||||
You can do both these steps in one line as described in
|
||||
"Section 4"_Section_packages.html of the manual.
|
||||
|
||||
Or you can follow these two (a,b) steps:
|
||||
|
||||
@ -90,7 +85,7 @@ The GPU library is in lammps/lib/gpu. Select a Makefile.machine (in
|
||||
lib/gpu) appropriate for your system. You should pay special
|
||||
attention to 3 settings in this makefile.
|
||||
|
||||
CUDA_HOME = needs to be where NVIDIA Cuda software is installed on your system
|
||||
CUDA_HOME = needs to be where NVIDIA CUDA software is installed on your system
|
||||
CUDA_ARCH = needs to be appropriate to your GPUs
|
||||
CUDA_PREC = precision (double, mixed, single) you desire :ul
|
||||
|
||||
@ -151,9 +146,9 @@ automatically if you create more MPI tasks/node than there are
|
||||
GPUs/mode. E.g. with 8 MPI tasks/node and 2 GPUs, each GPU will be
|
||||
shared by 4 MPI tasks.
|
||||
|
||||
Use the "-sf gpu" "command-line switch"_Section_start.html#start_7,
|
||||
Use the "-sf gpu" "command-line switch"_Section_start.html#start_6,
|
||||
which will automatically append "gpu" to styles that support it. Use
|
||||
the "-pk gpu Ng" "command-line switch"_Section_start.html#start_7 to
|
||||
the "-pk gpu Ng" "command-line switch"_Section_start.html#start_6 to
|
||||
set Ng = # of GPUs/node to use.
|
||||
|
||||
lmp_machine -sf gpu -pk gpu 1 -in in.script # 1 MPI task uses 1 GPU
|
||||
@ -188,7 +183,7 @@ pair_style lj/cut/gpu 2.5 :pre
|
||||
|
||||
You must also use the "package gpu"_package.html command to enable the
|
||||
GPU package, unless the "-sf gpu" or "-pk gpu" "command-line
|
||||
switches"_Section_start.html#start_7 were used. It specifies the
|
||||
switches"_Section_start.html#start_6 were used. It specifies the
|
||||
number of GPUs/node to use, as well as other options.
|
||||
|
||||
[Speed-ups to expect:]
|
||||
|
||||
@ -225,11 +225,9 @@ source /opt/intel/parallel_studio_xe_2016.3.067/psxevars.sh
|
||||
# or psxevars.csh for C-shell
|
||||
make intel_cpu_intelmpi :pre
|
||||
|
||||
Alternatively, the build can be accomplished with the src/Make.py
|
||||
script, described in "Section 2.4"_Section_start.html#start_4 of the
|
||||
manual. Type "Make.py -h" for help. For an example:
|
||||
|
||||
Make.py -v -p intel omp -intel cpu -a file intel_cpu_intelmpi :pre
|
||||
Alternatively this can be done as a single command with
|
||||
suitable make command invocations. This is discussed in "Section
|
||||
4"_Section_packages.html of the manual.
|
||||
|
||||
Note that if you build with support for a Phi coprocessor, the same
|
||||
binary can be used on nodes with or without coprocessors installed.
|
||||
@ -244,8 +242,7 @@ highly recommended for CCFLAGS and LINKFLAGS. LIB should include
|
||||
is required for CCFLAGS and "-qoffload" is required for LINKFLAGS.
|
||||
Other recommended CCFLAG options for best performance are
|
||||
"-O2 -fno-alias -ansi-alias -qoverride-limits fp-model fast=2
|
||||
-no-prec-div". The Make.py command will add all of these
|
||||
automatically.
|
||||
-no-prec-div".
|
||||
|
||||
NOTE: The vectorization and math capabilities can differ depending on
|
||||
the CPU. For Intel compilers, the "-x" flag specifies the type of
|
||||
@ -301,7 +298,7 @@ Hyper-Threading technology disabled.
|
||||
|
||||
To enable USER-INTEL optimizations for all available styles used in
|
||||
the input script, the "-sf intel"
|
||||
"command-line switch"_Section_start.html#start_7 can be used without
|
||||
"command-line switch"_Section_start.html#start_6 can be used without
|
||||
any requirement for editing the input script. This switch will
|
||||
automatically append "intel" to styles that support it. It also
|
||||
invokes a default command: "package intel 1"_package.html. This
|
||||
@ -314,7 +311,7 @@ support, that 1 coprocessor per node will be used with automatic
|
||||
balancing of work between the CPU and the coprocessor.
|
||||
|
||||
You can specify different options for the USER-INTEL package by using
|
||||
the "-pk intel Nphi" "command-line switch"_Section_start.html#start_7
|
||||
the "-pk intel Nphi" "command-line switch"_Section_start.html#start_6
|
||||
with keyword/value pairs as specified in the documentation. Here,
|
||||
Nphi = # of Xeon Phi coprocessors/node (ignored without offload
|
||||
support). Common options to the USER-INTEL package include {omp} to
|
||||
@ -387,7 +384,7 @@ can performed automatically by using "-sf hybrid intel opt" or
|
||||
and "omp" suffixes can be appended manually in the input script. For
|
||||
the latter, the "package omp"_package.html command must be in the
|
||||
input script or the "-pk omp Nt" "command-line
|
||||
switch"_Section_start.html#start_7 must be used where Nt is the
|
||||
switch"_Section_start.html#start_6 must be used where Nt is the
|
||||
number of OpenMP threads. The number of OpenMP threads should not be
|
||||
set differently for the different packages. Note that the "suffix
|
||||
hybrid intel omp"_suffix.html command can also be used within the
|
||||
@ -486,7 +483,7 @@ sorting"_atom_modify.html is changed to 1 so that the per-atom data is
|
||||
effectively sorted at every rebuild of the neighbor lists. All the
|
||||
available coprocessor threads on each Phi will be divided among MPI
|
||||
tasks, unless the {tptask} option of the "-pk intel" "command-line
|
||||
switch"_Section_start.html#start_7 is used to limit the coprocessor
|
||||
switch"_Section_start.html#start_6 is used to limit the coprocessor
|
||||
threads per MPI task.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
@ -60,8 +60,7 @@ More details follow.
|
||||
use a C++11 compatible compiler
|
||||
make yes-kokkos
|
||||
make mpi KOKKOS_DEVICES=OpenMP # build with the KOKKOS package
|
||||
make kokkos_omp # or Makefile.kokkos_omp already has variable set
|
||||
Make.py -v -p kokkos -kokkos omp -o mpi -a file mpi # or one-line build via Make.py :pre
|
||||
make kokkos_omp # or Makefile.kokkos_omp already has variable set :pre
|
||||
|
||||
mpirun -np 16 lmp_mpi -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no threads
|
||||
mpirun -np 2 -ppn 1 lmp_mpi -k on t 16 -sf kk -in in.lj # 2 nodes, 1 MPI task/node, 16 threads/task
|
||||
@ -82,8 +81,7 @@ use a C++11 compatible compiler
|
||||
KOKKOS_DEVICES = Cuda, OpenMP
|
||||
KOKKOS_ARCH = Kepler35
|
||||
make yes-kokkos
|
||||
make machine
|
||||
Make.py -p kokkos -kokkos cuda arch=31 -o kokkos_cuda -a file kokkos_cuda :pre
|
||||
make machine :pre
|
||||
|
||||
mpirun -np 1 lmp_cuda -k on t 6 -sf kk -in in.lj # one MPI task, 6 threads on CPU
|
||||
mpirun -np 4 -ppn 1 lmp_cuda -k on t 6 -sf kk -in in.lj # ditto on 4 nodes :pre
|
||||
@ -98,8 +96,7 @@ use a C++11 compatible compiler
|
||||
KOKKOS_DEVICES = OpenMP
|
||||
KOKKOS_ARCH = KNC
|
||||
make yes-kokkos
|
||||
make machine
|
||||
Make.py -p kokkos -kokkos phi -o kokkos_phi -a file mpi :pre
|
||||
make machine :pre
|
||||
|
||||
host=MIC, Intel Phi with 61 cores (240 threads/phi via 4x hardware threading):
|
||||
mpirun -np 1 lmp_g++ -k on t 240 -sf kk -in in.lj # 1 MPI task on 1 Phi, 1*240 = 240
|
||||
@ -116,7 +113,7 @@ To build with Kokkos support for CPUs, your compiler must support the
|
||||
OpenMP interface. You should have one or more multi-core CPUs so that
|
||||
multiple threads can be launched by each MPI task running on a CPU.
|
||||
|
||||
To build with Kokkos support for NVIDIA GPUs, NVIDIA Cuda software
|
||||
To build with Kokkos support for NVIDIA GPUs, NVIDIA CUDA software
|
||||
version 7.5 or later must be installed on your system. See the
|
||||
discussion for the "GPU"_accelerate_gpu.html package for details of
|
||||
how to check and do this.
|
||||
@ -135,16 +132,16 @@ mode like the USER-INTEL package supports.
|
||||
You must choose at build time whether to build for CPUs (OpenMP),
|
||||
GPUs, or Phi.
|
||||
|
||||
You can do any of these in one line, using the src/Make.py script,
|
||||
described in "Section 2.4"_Section_start.html#start_4 of the manual.
|
||||
Type "Make.py -h" for help. If run from the src directory, these
|
||||
You can do any of these in one line, using the suitable make command
|
||||
line flags as described in "Section 4"_Section_packages.html of the
|
||||
manual. If run from the src directory, these
|
||||
commands will create src/lmp_kokkos_omp, lmp_kokkos_cuda, and
|
||||
lmp_kokkos_phi. Note that the OMP and PHI options use
|
||||
src/MAKE/Makefile.mpi as the starting Makefile.machine. The CUDA
|
||||
option uses src/MAKE/OPTIONS/Makefile.kokkos_cuda.
|
||||
|
||||
The latter two steps can be done using the "-k on", "-pk kokkos" and
|
||||
"-sf kk" "command-line switches"_Section_start.html#start_7
|
||||
"-sf kk" "command-line switches"_Section_start.html#start_6
|
||||
respectively. Or the effect of the "-pk" or "-sf" switches can be
|
||||
duplicated by adding the "package kokkos"_package.html or "suffix
|
||||
kk"_suffix.html commands respectively to your input script.
|
||||
@ -280,10 +277,10 @@ specify how many Phi coprocessors there are per node; each
|
||||
coprocessors is simply treated as running some number of MPI tasks.
|
||||
|
||||
You must use the "-k on" "command-line
|
||||
switch"_Section_start.html#start_7 to enable the KOKKOS package. It
|
||||
switch"_Section_start.html#start_6 to enable the KOKKOS package. It
|
||||
takes additional arguments for hardware settings appropriate to your
|
||||
system. Those arguments are "documented
|
||||
here"_Section_start.html#start_7. The two most commonly used
|
||||
here"_Section_start.html#start_6. The two most commonly used
|
||||
options are:
|
||||
|
||||
-k on t Nt g Ng :pre
|
||||
@ -304,12 +301,12 @@ The "-k on" switch also issues a "package kokkos" command (with no
|
||||
additional arguments) which sets various KOKKOS options to default
|
||||
values, as discussed on the "package"_package.html command doc page.
|
||||
|
||||
Use the "-sf kk" "command-line switch"_Section_start.html#start_7,
|
||||
Use the "-sf kk" "command-line switch"_Section_start.html#start_6,
|
||||
which will automatically append "kk" to styles that support it. Use
|
||||
the "-pk kokkos" "command-line switch"_Section_start.html#start_7 if
|
||||
the "-pk kokkos" "command-line switch"_Section_start.html#start_6 if
|
||||
you wish to change any of the default "package kokkos"_package.html
|
||||
optionns set by the "-k on" "command-line
|
||||
switch"_Section_start.html#start_7.
|
||||
switch"_Section_start.html#start_6.
|
||||
|
||||
|
||||
|
||||
@ -323,7 +320,7 @@ However, when running in MPI-only mode with 1 thread per MPI task, it
|
||||
will typically be faster to use "half" neighbor lists and set the
|
||||
Newton flag to "on", just as is the case for non-accelerated pair
|
||||
styles. You can do this with the "-pk" "command-line
|
||||
switch"_Section_start.html#start_7.
|
||||
switch"_Section_start.html#start_6.
|
||||
|
||||
[Or run with the KOKKOS package by editing an input script:]
|
||||
|
||||
@ -332,7 +329,7 @@ appropriate thread and GPU values for host=OMP or host=MIC or
|
||||
device=CUDA are the same.
|
||||
|
||||
You must still use the "-k on" "command-line
|
||||
switch"_Section_start.html#start_7 to enable the KOKKOS package, and
|
||||
switch"_Section_start.html#start_6 to enable the KOKKOS package, and
|
||||
specify its additional arguments for hardware options appropriate to
|
||||
your system, as documented above.
|
||||
|
||||
@ -343,7 +340,7 @@ pair_style lj/cut/kk 2.5 :pre
|
||||
|
||||
You only need to use the "package kokkos"_package.html command if you
|
||||
wish to change any of its option defaults, as set by the "-k on"
|
||||
"command-line switch"_Section_start.html#start_7.
|
||||
"command-line switch"_Section_start.html#start_6.
|
||||
|
||||
[Speed-ups to expect:]
|
||||
|
||||
@ -389,7 +386,7 @@ If N is the number of physical cores/node, then the number of MPI
|
||||
tasks/node * number of threads/task should not exceed N, and should
|
||||
typically equal N. Note that the default threads/task is 1, as set by
|
||||
the "t" keyword of the "-k" "command-line
|
||||
switch"_Section_start.html#start_7. If you do not change this, no
|
||||
switch"_Section_start.html#start_6. If you do not change this, no
|
||||
additional parallelism (beyond MPI) will be invoked on the host
|
||||
CPU(s).
|
||||
|
||||
@ -429,7 +426,7 @@ details).
|
||||
The -np setting of the mpirun command should set the number of MPI
|
||||
tasks/node to be equal to the # of physical GPUs on the node.
|
||||
|
||||
Use the "-k" "command-line switch"_Section_commands.html#start_7 to
|
||||
Use the "-k" "command-line switch"_Section_commands.html#start_6 to
|
||||
specify the number of GPUs per node, and the number of threads per MPI
|
||||
task. As above for multi-core CPUs (and no GPU), if N is the number
|
||||
of physical cores/node, then the number of MPI tasks/node * number of
|
||||
|
||||
@ -23,8 +23,7 @@ one or more 16-core nodes. More details follow.
|
||||
use -fopenmp with CCFLAGS and LINKFLAGS in Makefile.machine
|
||||
make yes-user-omp
|
||||
make mpi # build with USER-OMP package, if settings added to Makefile.mpi
|
||||
make omp # or Makefile.omp already has settings
|
||||
Make.py -v -p omp -o mpi -a file mpi # or one-line build via Make.py :pre
|
||||
make omp # or Makefile.omp already has settings :pre
|
||||
|
||||
lmp_mpi -sf omp -pk omp 16 < in.script # 1 MPI task, 16 threads
|
||||
mpirun -np 4 lmp_mpi -sf omp -pk omp 4 -in in.script # 4 MPI tasks, 4 threads/task
|
||||
@ -40,14 +39,11 @@ each MPI task running on a CPU.
|
||||
|
||||
The lines above illustrate how to include/build with the USER-OMP
|
||||
package in two steps, using the "make" command. Or how to do it with
|
||||
one command via the src/Make.py script, described in "Section
|
||||
2.4"_Section_start.html#start_4 of the manual. Type "Make.py -h" for
|
||||
help.
|
||||
one command as described in "Section 4"_Section_packages.html of the manual.
|
||||
|
||||
Note that the CCFLAGS and LINKFLAGS settings in Makefile.machine must
|
||||
include "-fopenmp". Likewise, if you use an Intel compiler, the
|
||||
CCFLAGS setting must include "-restrict". The Make.py command will
|
||||
add these automatically.
|
||||
CCFLAGS setting must include "-restrict".
|
||||
|
||||
[Run with the USER-OMP package from the command line:]
|
||||
|
||||
@ -62,14 +58,14 @@ threads/task should not exceed the physical number of cores (on a
|
||||
node), otherwise performance will suffer.
|
||||
|
||||
As in the lines above, use the "-sf omp" "command-line
|
||||
switch"_Section_start.html#start_7, which will automatically append
|
||||
switch"_Section_start.html#start_6, which will automatically append
|
||||
"omp" to styles that support it. The "-sf omp" switch also issues a
|
||||
default "package omp 0"_package.html command, which will set the
|
||||
number of threads per MPI task via the OMP_NUM_THREADS environment
|
||||
variable.
|
||||
|
||||
You can also use the "-pk omp Nt" "command-line
|
||||
switch"_Section_start.html#start_7, to explicitly set Nt = # of OpenMP
|
||||
switch"_Section_start.html#start_6, to explicitly set Nt = # of OpenMP
|
||||
threads per MPI task to use, as well as additional options. Its
|
||||
syntax is the same as the "package omp"_package.html command whose doc
|
||||
page gives details, including the default values used if it is not
|
||||
|
||||
@ -21,8 +21,7 @@ Here is a quick overview of how to use the OPT package. More details
|
||||
follow.
|
||||
|
||||
make yes-opt
|
||||
make mpi # build with the OPT package
|
||||
Make.py -v -p opt -o mpi -a file mpi # or one-line build via Make.py :pre
|
||||
make mpi # build with the OPT package :pre
|
||||
|
||||
lmp_mpi -sf opt -in in.script # run in serial
|
||||
mpirun -np 4 lmp_mpi -sf opt -in in.script # run in parallel :pre
|
||||
@ -35,18 +34,15 @@ None.
|
||||
|
||||
The lines above illustrate how to build LAMMPS with the OPT package in
|
||||
two steps, using the "make" command. Or how to do it with one command
|
||||
via the src/Make.py script, described in "Section
|
||||
2.4"_Section_start.html#start_4 of the manual. Type "Make.py -h" for
|
||||
help.
|
||||
as described in "Section 4"_Section_packages.html of the manual.
|
||||
|
||||
Note that if you use an Intel compiler to build with the OPT package,
|
||||
the CCFLAGS setting in your Makefile.machine must include "-restrict".
|
||||
The Make.py command will add this automatically.
|
||||
|
||||
[Run with the OPT package from the command line:]
|
||||
|
||||
As in the lines above, use the "-sf opt" "command-line
|
||||
switch"_Section_start.html#start_7, which will automatically append
|
||||
switch"_Section_start.html#start_6, which will automatically append
|
||||
"opt" to styles that support it.
|
||||
|
||||
[Or run with the OPT package by editing an input script:]
|
||||
|
||||
@ -63,7 +63,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -94,7 +94,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -50,7 +50,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -63,7 +63,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -53,7 +53,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -65,7 +65,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -51,7 +51,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -50,7 +50,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -57,7 +57,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -57,7 +57,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -136,7 +136,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -394,7 +394,7 @@ weights. It assigns the same weight to each particle owned by a
|
||||
processor based on the total computational time spent by that
|
||||
processor. See details below on what time window is used. It uses
|
||||
the same timing information as is used for the "MPI task timing
|
||||
breakdown"_Section_start.html#start_8, namely, for sections {Pair},
|
||||
breakdown"_Section_start.html#start_7, namely, for sections {Pair},
|
||||
{Bond}, {Kspace}, and {Neigh}. The time spent in those portions of
|
||||
the timestep are measured for each MPI rank, summed, then divided by
|
||||
the number of particles owned by that processor. I.e. the weight is
|
||||
|
||||
@ -56,7 +56,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -59,7 +59,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -62,7 +62,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -54,7 +54,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -53,7 +53,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -53,7 +53,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -88,7 +88,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -133,7 +133,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -117,7 +117,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -180,9 +180,18 @@ will register an arbitrarily large spike at whatever distance they
|
||||
happen to be at, and zero everywhere else. Coord(r) will show a step
|
||||
change from zero to one at the location of the spike in g(r).
|
||||
|
||||
NOTE: compute rdf can handle dynamic groups and systems where atoms
|
||||
are added or removed, but this causes that certain normalization
|
||||
parameters need to be recomputed in every step and include collective
|
||||
communication operations. This will reduce performance and limit
|
||||
parallel efficiency and scaling. For systems, where only the type
|
||||
of atoms changes (e.g. when using "fix atom/swap"_fix_atom_swap.html),
|
||||
you need to explicitly request the dynamic normalization updates
|
||||
via "compute_modify dynamic yes"_compute_modify.html
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix ave/time"_fix_ave_time.html
|
||||
"fix ave/time"_fix_ave_time.html, "compute_modify"_compute_modify.html
|
||||
|
||||
[Default:]
|
||||
|
||||
|
||||
@ -79,7 +79,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -86,7 +86,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -217,7 +217,7 @@ This compute is part of the VORONOI package. It is only enabled if
|
||||
LAMMPS was built with that package. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
It also requiers you have a copy of the Voro++ library built and
|
||||
It also requires you have a copy of the Voro++ library built and
|
||||
installed on your system. See instructions on obtaining and
|
||||
installing the Voro++ software in the src/VORONOI/README file.
|
||||
|
||||
|
||||
@ -128,7 +128,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -153,7 +153,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -64,7 +64,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -65,7 +65,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -58,7 +58,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -52,7 +52,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -52,7 +52,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -60,7 +60,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -53,7 +53,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -26,7 +26,7 @@ command to the screen and/or log file as it is read and processed. If
|
||||
an input script has errors, it can be useful to look at echoed output
|
||||
to see the last command processed.
|
||||
|
||||
The "command-line switch"_Section_start.html#start_5 -echo can be used
|
||||
The "command-line switch"_Section_start.html#start_6 -echo can be used
|
||||
in place of this command.
|
||||
|
||||
[Restrictions:] none
|
||||
|
||||
@ -117,7 +117,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -77,7 +77,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -557,7 +557,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -41,7 +41,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -45,7 +45,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -383,6 +383,9 @@ called. Reneighboring is required.
|
||||
Can be run in parallel, but aspects of the GCMC part will not scale
|
||||
well in parallel. Only usable for 3D simulations.
|
||||
|
||||
When using fix gcmc in combination with fix shake or fix rigid,
|
||||
only gcmc exchange moves are supported.
|
||||
|
||||
Note that very lengthy simulations involving insertions/deletions of
|
||||
billions of gas molecules may run out of atom or molecule IDs and
|
||||
trigger an error, so it is better to run multiple shorter-duration
|
||||
|
||||
@ -102,7 +102,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -276,7 +276,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -73,7 +73,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -25,7 +25,7 @@ keyword = {q} or {mu} or {p0} or {v0} or {e0} or {tscale} or {beta} or {dftb} :l
|
||||
{e0} value = initial total energy (energy units)
|
||||
{tscale} value = reduction in initial temperature (unitless fraction between 0.0 and 1.0)
|
||||
{dftb} value = {yes} or {no} for whether using MSST in conjunction with DFTB+
|
||||
{beta} value = scale factor on energy contribution of DFTB+ :pre
|
||||
{beta} value = scale factor for improved energy conservation :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -72,6 +72,14 @@ be calculated on the first step, after the energy specified by
|
||||
{tscale} is removed. The value of {e0} is not used in the dynamical
|
||||
equations, but is used in calculating the deviation from the Hugoniot.
|
||||
|
||||
The keyword {beta} is a scaling term that can be added to the MSST
|
||||
ionic equations of motion to account for drift in the conserved
|
||||
quantity during long timescale simulations, similar to a Berendson
|
||||
thermostat. See "(Reed)"_#Reed and "(Goldman)"_#Goldman2 for more
|
||||
details. The value of {beta} must be between 0.0 and 1.0 inclusive.
|
||||
A value of 0.0 means no contribution, a value of 1.0 means a full
|
||||
contribution.
|
||||
|
||||
Values of shockvel less than a critical value determined by the
|
||||
material response will not have compressive solutions. This will be
|
||||
reflected in lack of significant change of the volume in the MSST.
|
||||
@ -95,23 +103,15 @@ or "_MSST_pe". The group for the new computes is "all".
|
||||
|
||||
:line
|
||||
|
||||
The {dftb} and {beta} keywords are to allow this fix to be used when
|
||||
LAMMPS is being driven by DFTB+, a density-functional tight-binding
|
||||
code.
|
||||
|
||||
If the keyword {dftb} is used with a value of {yes}, then the MSST
|
||||
equations are altered to account for an energy contribution compute by
|
||||
DFTB+. In this case, you must define a "fix
|
||||
external"_fix_external.html command in your input script, which is
|
||||
used to callback to DFTB+ during the LAMMPS timestepping. DFTB+ will
|
||||
communicate its info to LAMMPS via that fix.
|
||||
|
||||
The keyword {beta} is a scale factor on the DFTB+ energy contribution.
|
||||
The value of {beta} must be between 0.0 and 1.0 inclusive. A value of
|
||||
0.0 means no contribution, a value of 1.0 means a full contribution.
|
||||
|
||||
(July 2017) More information about these keywords and the use of
|
||||
LAMMPS with DFTB+ will be added to the LAMMMPS documention soon.
|
||||
The {dftb} keyword is to allow this fix to be used when LAMMPS is
|
||||
being driven by DFTB+, a density-functional tight-binding code. If the
|
||||
keyword {dftb} is used with a value of {yes}, then the MSST equations
|
||||
are altered to account for the electron entropy contribution to the
|
||||
Hugonio relations and total energy. See "(Reed2)"_#Reed2 and
|
||||
"(Goldman)"_#Goldman2 for details on this contribution. In this case,
|
||||
you must define a "fix external"_fix_external.html command in your
|
||||
input script, which is used to callback to DFTB+ during the LAMMPS
|
||||
timestepping. DFTB+ will communicate its info to LAMMPS via that fix.
|
||||
|
||||
:line
|
||||
|
||||
@ -182,4 +182,12 @@ timestep.
|
||||
:line
|
||||
|
||||
:link(Reed)
|
||||
[(Reed)] Reed, Fried, and Joannopoulos, Phys. Rev. Lett., 90, 235503 (2003).
|
||||
[(Reed)] Reed, Fried, and Joannopoulos, Phys. Rev. Lett., 90, 235503
|
||||
(2003).
|
||||
|
||||
:link(Reed2)
|
||||
[(Reed2)] Reed, J. Phys. Chem. C, 116, 2205 (2012).
|
||||
|
||||
:link(Goldman2)
|
||||
[(Goldman)] Goldman, Srinivasan, Hamel, Fried, Gaus, and Elstner,
|
||||
J. Phys. Chem. C, 117, 7885 (2013).
|
||||
|
||||
@ -492,7 +492,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -93,7 +93,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -92,7 +92,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -102,7 +102,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -152,7 +152,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -117,7 +117,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -116,7 +116,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -127,7 +127,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -46,7 +46,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -57,7 +57,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -77,7 +77,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -98,7 +98,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -97,7 +97,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -121,7 +121,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||
@ -108,7 +108,7 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
|
||||