How to check for correct execution?

Hello,

I am a computer scientist, don’t’ know much about the LAMMPS scientific domain.

I am setting up some benchmarks based on input provided by my users.

Is there a recommended way how to check for the correct execution of LAMMPS?

Like when I have a set of reference output, make modifications (different compiler flags, different hardware, different execution models).

How can I compare the results. E.g. if I wanted to compare the results of LAMMPS and LAMMPS+Kokkos, just a basic sanity test, nothing detailed.

Hello,

I am a computer scientist, don’t’ know much about the LAMMPS scientific
domain.

I am setting up some benchmarks based on input provided by my users.

​so get those users to help you with the validation.​ they have the most
vested interest and they can check just for what they need.

Is there a recommended way how to check for the correct execution of
LAMMPS?

​i think in your position it would be sufficient to see, that basic
execution is working. check out some of the inputs in the bench folder and
run them, the rest should be done by the domain scientists. MD is a system
of couple partial differential equations and thus subject to the so-called
"butterfly effect", i.e. small differences - e.g. cause by different
compiler optimizations or running on GPU vs. CPU - and evolve into
exponential divergence.

Like when I have a set of reference output, make modifications (different
compiler flags, different hardware, different execution models).

How can I compare the results. E.g. if I wanted to compare the results of
LAMMPS and LAMMPS+Kokkos, just a basic sanity test, nothing detailed.

Would you have any suggestions?

​there are reference output provided with a bunch of stuff. usually you
should be able to reproduce those numbers with any kind of settings and
hardware for about 100-1000 steps (depends on the code and methods used).

axel.