Previous Section - LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

Return to Section accelerate overview

5.3.5 OPT package

The OPT package was developed by James Fischer (High Performance Technologies), David Richie, and Vincent Natoli (Stone Ridge Technologies). It contains a handful of pair styles whose compute() methods were rewritten in C++ templated form to reduce the overhead due to if tests and other conditional code.

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 
lmp_mpi -sf opt -in in.script                # run in serial
mpirun -np 4 lmp_mpi -sf opt -in in.script   # run in parallel 

Required hardware/software:

None.

Building LAMMPS with the OPT package:

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 of the manual. Type "Make.py -h" for help.

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, which will automatically append "opt" to styles that support it.

Or run with the OPT package by editing an input script:

Use the suffix opt command, or you can explicitly add an "opt" suffix to individual styles in your input script, e.g.

pair_style lj/cut/opt 2.5 

Speed-ups to expect:

You should see a reduction in the "Pair time" value printed at the end of a run. On most machines for reasonable problem sizes, it will be a 5 to 20% savings.

Guidelines for best performance:

Just try out an OPT pair style to see how it performs.

Restrictions:

None.