Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F96647644
Section_perf.html
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sun, Dec 29, 11:22
Size
10 KB
Mime Type
text/html
Expires
Tue, Dec 31, 11:22 (2 d)
Engine
blob
Format
Raw Data
Handle
23222571
Attached To
rLAMMPS lammps
Section_perf.html
View Options
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!-->
<html
class=
"no-js"
lang=
"en"
>
<!--<![endif]-->
<head>
<meta
charset=
"utf-8"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0"
>
<title>
8. Performance
&
scalability
—
LAMMPS documentation
</title>
<link
rel=
"stylesheet"
href=
"_static/css/theme.css"
type=
"text/css"
/>
<link
rel=
"stylesheet"
href=
"_static/sphinxcontrib-images/LightBox2/lightbox2/css/lightbox.css"
type=
"text/css"
/>
<link
rel=
"top"
title=
"LAMMPS documentation"
href=
"index.html"
/>
<link
rel=
"next"
title=
"9. Additional tools"
href=
"Section_tools.html"
/>
<link
rel=
"prev"
title=
"7. Example problems"
href=
"Section_example.html"
/>
<script
src=
"_static/js/modernizr.min.js"
></script>
</head>
<body
class=
"wy-body-for-nav"
role=
"document"
>
<div
class=
"wy-grid-for-nav"
>
<nav
data-toggle=
"wy-nav-shift"
class=
"wy-nav-side"
>
<div
class=
"wy-side-nav-search"
>
<a
href=
"Manual.html"
class=
"icon icon-home"
>
LAMMPS
</a>
<div
role=
"search"
>
<form
id=
"rtd-search-form"
class=
"wy-form"
action=
"search.html"
method=
"get"
>
<input
type=
"text"
name=
"q"
placeholder=
"Search docs"
/>
<input
type=
"hidden"
name=
"check_keywords"
value=
"yes"
/>
<input
type=
"hidden"
name=
"area"
value=
"default"
/>
</form>
</div>
</div>
<div
class=
"wy-menu wy-menu-vertical"
data-spy=
"affix"
role=
"navigation"
aria-label=
"main navigation"
>
<ul
class=
"current"
>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_intro.html"
>
1. Introduction
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_start.html"
>
2. Getting Started
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_commands.html"
>
3. Commands
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_packages.html"
>
4. Packages
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_accelerate.html"
>
5. Accelerating LAMMPS performance
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_howto.html"
>
6. How-to discussions
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_example.html"
>
7. Example problems
</a></li>
<li
class=
"toctree-l1 current"
><a
class=
"current reference internal"
href=
"#"
>
8. Performance
&
scalability
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_tools.html"
>
9. Additional tools
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_modify.html"
>
10. Modifying
&
extending LAMMPS
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_python.html"
>
11. Python interface to LAMMPS
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_errors.html"
>
12. Errors
</a></li>
<li
class=
"toctree-l1"
><a
class=
"reference internal"
href=
"Section_history.html"
>
13. Future and history
</a></li>
</ul>
</div>
</nav>
<section
data-toggle=
"wy-nav-shift"
class=
"wy-nav-content-wrap"
>
<nav
class=
"wy-nav-top"
role=
"navigation"
aria-label=
"top navigation"
>
<i
data-toggle=
"wy-nav-top"
class=
"fa fa-bars"
></i>
<a
href=
"Manual.html"
>
LAMMPS
</a>
</nav>
<div
class=
"wy-nav-content"
>
<div
class=
"rst-content"
>
<div
role=
"navigation"
aria-label=
"breadcrumbs navigation"
>
<ul
class=
"wy-breadcrumbs"
>
<li><a
href=
"Manual.html"
>
Docs
</a>
»
</li>
<li>
8. Performance
&
scalability
</li>
<li
class=
"wy-breadcrumbs-aside"
>
<a
href=
"http://lammps.sandia.gov"
>
Website
</a>
<a
href=
"Section_commands.html#comm"
>
Commands
</a>
</li>
</ul>
<hr/>
<div
class=
"rst-footer-buttons"
style=
"margin-bottom: 1em"
role=
"navigation"
aria-label=
"footer navigation"
>
<a
href=
"Section_tools.html"
class=
"btn btn-neutral float-right"
title=
"9. Additional tools"
accesskey=
"n"
>
Next
<span
class=
"fa fa-arrow-circle-right"
></span></a>
<a
href=
"Section_example.html"
class=
"btn btn-neutral"
title=
"7. Example problems"
accesskey=
"p"
><span
class=
"fa fa-arrow-circle-left"
></span>
Previous
</a>
</div>
</div>
<div
role=
"main"
class=
"document"
itemscope=
"itemscope"
itemtype=
"http://schema.org/Article"
>
<div
itemprop=
"articleBody"
>
<div
class=
"section"
id=
"performance-scalability"
>
<h1>
8. Performance
&
scalability
</h1>
<p>
Current LAMMPS performance is discussed on the Benchmarks page of the
<a
class=
"reference external"
href=
"http://lammps.sandia.gov"
>
LAMMPS WWW Site
</a>
where CPU timings and parallel efficiencies are
listed. The page has several sections, which are briefly described
below:
</p>
<ul
class=
"simple"
>
<li>
CPU performance on 5 standard problems, strong and weak scaling
</li>
<li>
GPU and Xeon Phi performance on same and related problems
</li>
<li>
Comparison of cost of interatomic potentials
</li>
<li>
Performance of huge, billion-atom problems
</li>
</ul>
<p>
The 5 standard problems are as follow:
</p>
<ol
class=
"arabic simple"
>
<li>
LJ = atomic fluid, Lennard-Jones potential with 2.5 sigma cutoff (55
neighbors per atom), NVE integration
</li>
<li>
Chain = bead-spring polymer melt of 100-mer chains, FENE bonds and LJ
pairwise interactions with a 2^(1/6) sigma cutoff (5 neighbors per
atom), NVE integration
</li>
<li>
EAM = metallic solid, Cu EAM potential with 4.95 Angstrom cutoff (45
neighbors per atom), NVE integration
</li>
<li>
Chute = granular chute flow, frictional history potential with 1.1
sigma cutoff (7 neighbors per atom), NVE integration
</li>
<li>
Rhodo = rhodopsin protein in solvated lipid bilayer, CHARMM force
field with a 10 Angstrom LJ cutoff (440 neighbors per atom),
particle-particle particle-mesh (PPPM) for long-range Coulombics, NPT
integration
</li>
</ol>
<p>
Input files for these 5 problems are provided in the bench directory
of the LAMMPS distribution. Each has 32,000 atoms and runs for 100
timesteps. The size of the problem (number of atoms) can be varied
using command-line switches as described in the bench/README file.
This is an easy way to test performance and either strong or weak
scalability on your machine.
</p>
<p>
The bench directory includes a few log.* files that show performance
of these 5 problems on 1 or 4 cores of Linux desktop. The bench/FERMI
and bench/KEPLER dirs have input files and scripts and instructions
for running the same (or similar) problems using OpenMP or GPU or Xeon
Phi acceleration options. See the README files in those dirs and the
<a
class=
"reference internal"
href=
"Section_accelerate.html"
><span
class=
"doc"
>
Section accelerate
</span></a>
doc pages for
instructions on how to build LAMMPS and run on that kind of hardware.
</p>
<p>
The bench/POTENTIALS directory has input files which correspond to the
table of results on the
<span
class=
"xref std std-ref"
>
Potentials
</span>
section of
the Benchmarks web page. So you can also run those test problems on
your machine.
</p>
<p>
The
<span
class=
"xref std std-ref"
>
billion-atom
</span>
section
of the Benchmarks web page has performance data for very large
benchmark runs of simple Lennard-Jones (LJ) models, which use the
bench/in.lj input script.
</p>
<hr
class=
"docutils"
/>
<p>
For all the benchmarks, a useful metric is the CPU cost per atom per
timestep. Since performance scales roughly linearly with problem size
and timesteps for all LAMMPS models (i.e. inteatomic or coarse-grained
potentials), the run time of any problem using the same model (atom
style, force field, cutoff, etc) can then be estimated.
</p>
<p>
Performance on a parallel machine can also be predicted from one-core
or one-node timings if the parallel efficiency can be estimated. The
communication bandwidth and latency of a particular parallel machine
affects the efficiency. On most machines LAMMPS will give parallel
efficiencies on these benchmarks above 50% so long as the number of
atoms/core is a few 100 or greater, and closer to 100% for large
numbers of atoms/core. This is for all-MPI mode with one MPI task per
core. For nodes with accelerator options or hardware (OpenMP, GPU,
Phi), you should first measure single node performance. Then you can
estimate parallel performance for multi-node runs using the same logic
as for all-MPI mode, except that now you will typically need many more
atoms/node to achieve good scalability.
</p>
</div>
</div>
</div>
<footer>
<div
class=
"rst-footer-buttons"
role=
"navigation"
aria-label=
"footer navigation"
>
<a
href=
"Section_tools.html"
class=
"btn btn-neutral float-right"
title=
"9. Additional tools"
accesskey=
"n"
>
Next
<span
class=
"fa fa-arrow-circle-right"
></span></a>
<a
href=
"Section_example.html"
class=
"btn btn-neutral"
title=
"7. Example problems"
accesskey=
"p"
><span
class=
"fa fa-arrow-circle-left"
></span>
Previous
</a>
</div>
<hr/>
<div
role=
"contentinfo"
>
<p>
©
Copyright 2013 Sandia Corporation.
</p>
</div>
Built with
<a
href=
"http://sphinx-doc.org/"
>
Sphinx
</a>
using a
<a
href=
"https://github.com/snide/sphinx_rtd_theme"
>
theme
</a>
provided by
<a
href=
"https://readthedocs.org"
>
Read the Docs
</a>
.
</footer>
</div>
</div>
</section>
</div>
<script
type=
"text/javascript"
>
var
DOCUMENTATION_OPTIONS
=
{
URL_ROOT
:
'./'
,
VERSION
:
''
,
COLLAPSE_INDEX
:
false
,
FILE_SUFFIX
:
'.html'
,
HAS_SOURCE
:
true
};
</script>
<script
type=
"text/javascript"
src=
"_static/jquery.js"
></script>
<script
type=
"text/javascript"
src=
"_static/underscore.js"
></script>
<script
type=
"text/javascript"
src=
"_static/doctools.js"
></script>
<script
type=
"text/javascript"
src=
"https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
></script>
<script
type=
"text/javascript"
src=
"_static/sphinxcontrib-images/LightBox2/lightbox2/js/jquery-1.11.0.min.js"
></script>
<script
type=
"text/javascript"
src=
"_static/sphinxcontrib-images/LightBox2/lightbox2/js/lightbox.min.js"
></script>
<script
type=
"text/javascript"
src=
"_static/sphinxcontrib-images/LightBox2/lightbox2-customize/jquery-noconflict.js"
></script>
<script
type=
"text/javascript"
src=
"_static/js/theme.js"
></script>
<script
type=
"text/javascript"
>
jQuery
(
function
()
{
SphinxRtdTheme
.
StickyNav
.
enable
();
});
</script>
</body>
</html>
Event Timeline
Log In to Comment