This is for consistency with other parts of LAMMPS where
such variables have "flag" in their name. Also reduces
confusion with have_gpu_direct() function.
When we can safely detect, that GPU-direct is not available,
change the default setting of Kokkos::gpu_direct_flag from 1 to 0
this adds a local wrapper function have_gpu_direct(), that informs about
the support for GPU-direct, if possible and add a warning message in case
it cannot be detected or is not available and using more than 1 MPI rank.
- improvements documentation (dmi and exchange)
- correction error cross product in pair_spin_dmi.cpp
- implementation mech. part in pair_spin_dmi.cpp
- correction in all pairs: init_one for [j][i] couples
- correction in atom_vec_spin.cpp: index error in read_data
- some improvements in pair_spin_dmi.cpp and pair_spin_magelec.cpp
after an exception "all bets are off",
i.e. the user should be allowed to do anything to recover.
through setting Update::whichflag to 0, the guard against running commands during a run is removed.
- document previously undocumented OpenCL tune settings
- implement OpenCL platform selection through prefixing the device type with the platform id separated by a colon
- allow passing custom tune parameters though postfixing the device type with the 13 tuneable parameters separated by commas
- remove an extra clear() that would delete device properties structs an cause LAMMPS to output garbage strings
The fix_shardlow_kokkos.cpp code had already factored out a redundant
sqrt() calculation in the innermost loop of ssa_update_dpde(). This
changeset propagates an equivilent optimization to:
fix_shardlow.cpp
pair_dpd_fdt_energy.cpp
pair_dpd_fdt_energy_kokkos.cpp
The alpha_ij variable was really just an [itype][jtype] lookup parameter,
replacing a sqrt() and two multiplies per interacting particle pair
by a cached memory read. Even if there isn't much time savings, the
code is now consistent across the various versions.