mirror of https://github.com/lammps/lammps.git
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@12605 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
de88af10e2
commit
bd26134155
48
bench/README
48
bench/README
|
@ -71,33 +71,49 @@ 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 orig \
|
||||
-cc mpi wrap=icc -fft fftw3 -a file mpi
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Here is how to run each problem, assuming the LAMMPS executable is
|
||||
named lmp_foo, and you are using the mpirun command to launch parallel
|
||||
named lmp_mpi, and you are using the mpirun command to launch parallel
|
||||
runs:
|
||||
|
||||
Serial (one processor runs):
|
||||
|
||||
lmp_foo < in.lj
|
||||
lmp_foo < in.chain
|
||||
lmp_foo < in.eam
|
||||
lmp_foo < in.chute
|
||||
lmp_foo < in.rhodo
|
||||
lmp_mpi < in.lj
|
||||
lmp_mpi < in.chain
|
||||
lmp_mpi < in.eam
|
||||
lmp_mpi < in.chute
|
||||
lmp_mpi < in.rhodo
|
||||
|
||||
Parallel fixed-size runs (on 8 procs in this case):
|
||||
|
||||
mpirun -np 8 lmp_foo < in.lj
|
||||
mpirun -np 8 lmp_foo < in.chain
|
||||
mpirun -np 8 lmp_foo < in.eam
|
||||
mpirun -np 8 lmp_foo < in.chute
|
||||
mpirun -np 8 lmp_foo < in.rhodo
|
||||
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
|
||||
|
||||
Parallel scaled-size runs (on 16 procs in this case):
|
||||
|
||||
mpirun -np 16 lmp_foo -var x 2 -var y 2 -var z 4 < in.lj
|
||||
mpirun -np 16 lmp_foo -var x 2 -var y 2 -var z 4 < in.chain.scaled
|
||||
mpirun -np 16 lmp_foo -var x 2 -var y 2 -var z 4 < in.eam
|
||||
mpirun -np 16 lmp_foo -var x 4 -var y 4 < in.chute.scaled
|
||||
mpirun -np 16 lmp_foo -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.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
|
||||
|
||||
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
|
||||
|
|
|
@ -97,13 +97,15 @@ snap: NVE dynamics for BCC tantalum crystal using SNAP potential
|
|||
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
|
||||
voronoi: test of Voronoi tesselation in compute voronoi/atom
|
||||
|
||||
Here is a src/Make.py command which will build a LAMMPS executable
|
||||
"lmp_mpi" with all the packages needed by all the examples, with the
|
||||
exception of the accelerate example. See the accelerate/README for
|
||||
Make.py commands suitable for its example scripts.
|
||||
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, with the exception of the accelerate sub-directory. See the
|
||||
accelerate/README for Make.py commands suitable for its example
|
||||
scripts.
|
||||
|
||||
cd src
|
||||
Make.py -p none std no-lib reax meam poems reaxc orig lib-all mpi
|
||||
Make.py -j 16 -p none std no-lib no-kokkos reax meam poems reaxc orig \
|
||||
lib-all mpi
|
||||
|
||||
Here is how you might run and visualize one of the sample problems:
|
||||
|
||||
|
|
35
src/Make.py
35
src/Make.py
|
@ -709,18 +709,31 @@ class Packages:
|
|||
plist.append("yes-%s" % one)
|
||||
elif "user-"+one in user:
|
||||
plist.append("yes-user-%s" % one)
|
||||
elif one == '^' and one[1:] in std:
|
||||
plist.append("no-%s" % one[1:])
|
||||
elif one[0] == '^' and one[1:] in user:
|
||||
plist.append("no-%s" % one[1:])
|
||||
elif one[0] == '^' and "user-"+one[1:] in user:
|
||||
plist.append("no-user-%s" % one[1:])
|
||||
elif one == "std" or one == "standard" or one == "user" or \
|
||||
one == "lib" or one == "all":
|
||||
plist.append("yes-%s" % one)
|
||||
elif one == "^std" or one == "^standard" or one == "^user" or \
|
||||
one == "^lib" or one == "^all":
|
||||
plist.append("no-%s" % one[1:])
|
||||
one == "lib" or one == "all": plist.append("yes-%s" % one)
|
||||
elif one.startswith("yes-"):
|
||||
if one[4:] in std: plist.append("yes-%s" % one[4:])
|
||||
elif one[4:] in user: plist.append("yes-%s" % one[4:])
|
||||
elif "user-"+one[4:] in user: plist.append("yes-user-%s" % one[4:])
|
||||
elif one == "yes-std" or one == "yes-standard" or \
|
||||
one == "yes-user" or one == "yes-lib" or one == "yes-all":
|
||||
plist.append("yes-%s" % one[4:])
|
||||
else: error("Invalid package name %s" % one)
|
||||
elif one.startswith("no-"):
|
||||
if one[3:] in std: plist.append("no-%s" % one[3:])
|
||||
elif one[3:] in user: plist.append("no-%s" % one[3:])
|
||||
elif "user-"+one[3:] in user: plist.append("no-user-%s" % one[3:])
|
||||
elif one == "no-std" or one == "no-standard" or one == "no-user" or \
|
||||
one == "no-lib" or one == "no-all":
|
||||
plist.append("no-%s" % one[3:])
|
||||
else: error("Invalid package name %s" % one)
|
||||
elif one.startswith('^'):
|
||||
if one[1:] in std: plist.append("no-%s" % one[1:])
|
||||
elif one[1:] in user: plist.append("no-%s" % one[1:])
|
||||
elif "user-"+one[1:] in user: plist.append("no-user-%s" % one[1:])
|
||||
elif one == "^std" or one == "^standard" or one == "^user" or \
|
||||
one == "^lib" or one == "^all": plist.append("no-%s" % one[1:])
|
||||
else: error("Invalid package name %s" % one)
|
||||
elif one == "none": plist.append("no-all")
|
||||
elif one == "orig": plist.append(one)
|
||||
else: error("Invalid package name %s" % one)
|
||||
|
|
Loading…
Reference in New Issue