forked from lijiext/lammps
Merge branch 'master' into collected-small-changes
This commit is contained in:
commit
15db052c80
|
@ -151,7 +151,7 @@ commands:
|
|||
* cutoff2 (distance units)
|
||||
|
||||
The second coefficient, :math:`\rho`, must be greater than zero.
|
||||
The coefficients A,:math:`\rho`, and C can be written as analytical expressions
|
||||
The coefficients A, :math:`\rho`, and C can be written as analytical expressions
|
||||
of :math:`\epsilon` and :math:`\sigma`, in analogy to the Lennard-Jones potential
|
||||
:ref:`(Khrapak) <Khrapak>`.
|
||||
|
||||
|
|
|
@ -77,7 +77,7 @@ The colloid-solvent interaction energy is given by
|
|||
\left[ 1 - \frac{\left(5 ~ a^6+45~a^4~r^2+63~a^2~r^4+15~r^6\right) \sigma^6}
|
||||
{15 \left(a-r\right)^6 \left( a+r \right)^6} \right], \quad r < r_c
|
||||
|
||||
where :math:A_{cs}` is the Hamaker constant, *a* is the radius of the colloidal
|
||||
where :math:`A_{cs}` is the Hamaker constant, *a* is the radius of the colloidal
|
||||
particle, and :math:`r_c` is the cutoff. This formula is derived from the
|
||||
colloid-colloid interaction, letting one of the particle sizes go to
|
||||
zero.
|
||||
|
|
|
@ -54,7 +54,7 @@ between two point particles, where (:math:`\sigma, -\epsilon`) is the
|
|||
location of the (rightmost) minimum of the potential, as explained in
|
||||
the syntax section above.
|
||||
|
||||
This potential was first used in (Cooke)_#CKD for a coarse-grained lipid
|
||||
This potential was first used in :ref:`(Cooke) <CKD>` for a coarse-grained lipid
|
||||
membrane model. It is generally very useful as a non-specific
|
||||
interaction potential because it is fully adjustable in depth and width
|
||||
while joining the minimum at (sigma, -epsilon) and zero at (cutoff, 0)
|
||||
|
@ -63,7 +63,7 @@ energy calculations etc. This evidently requires *cutoff* to be larger
|
|||
than *sigma*\ .
|
||||
|
||||
If the *wca* option is used then a Weeks-Chandler-Andersen potential
|
||||
(Weeks)_#WCA is added to the above specified cosine-squared potential,
|
||||
:ref:`(Weeks) <WCA>` is added to the above specified cosine-squared potential,
|
||||
specifically the following:
|
||||
|
||||
.. math::
|
||||
|
|
|
@ -40,7 +40,7 @@ Examples
|
|||
pair_coeff * * 1.0 1.0
|
||||
pair_coeff 1 1 1.1 2.8 3.0 3.2
|
||||
|
||||
pair_style buck 2.5 3.0
|
||||
pair_style buck/mdf 2.5 3.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff * * 100.0 1.5 200.0 3.0 3.5
|
||||
|
||||
|
|
|
@ -446,7 +446,7 @@ void AngleCharmmKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i, const in
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class AngleCharmmKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class AngleCharmmKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -597,7 +597,7 @@ void AngleClass2Kokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i, const in
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class AngleClass2Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class AngleClass2Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -386,7 +386,7 @@ void AngleCosineKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i, const in
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class AngleCosineKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class AngleCosineKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -404,7 +404,7 @@ void AngleHarmonicKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i, const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class AngleHarmonicKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class AngleHarmonicKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -365,7 +365,7 @@ void BondClass2Kokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int &i, const in
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class BondClass2Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class BondClass2Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -400,7 +400,7 @@ void BondFENEKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int &i, const int
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class BondFENEKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class BondFENEKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -339,7 +339,7 @@ void BondHarmonicKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int &i, const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class BondHarmonicKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class BondHarmonicKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -243,7 +243,7 @@ void ComputeCoordAtomKokkos<DeviceType>::operator()(TagComputeCoordAtom<CSTYLE,N
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class ComputeCoordAtomKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class ComputeCoordAtomKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -737,7 +737,7 @@ void ComputeOrientOrderAtomKokkos<DeviceType>::check_team_size_for(int inum, int
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class ComputeOrientOrderAtomKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class ComputeOrientOrderAtomKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -154,7 +154,7 @@ void ComputeTempKokkos<DeviceType>::operator()(TagComputeTempVector<RMASS>, cons
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class ComputeTempKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class ComputeTempKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -789,7 +789,7 @@ void DihedralCharmmKokkos<DeviceType>::ev_tally(EVM_FLOAT &evm, const int i, con
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class DihedralCharmmKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class DihedralCharmmKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1131,7 +1131,7 @@ void DihedralClass2Kokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i1, cons
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class DihedralClass2Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class DihedralClass2Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -530,7 +530,7 @@ void DihedralHarmonicKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i1, co
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class DihedralHarmonicKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class DihedralHarmonicKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -535,7 +535,7 @@ void DihedralOPLSKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i1, const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class DihedralOPLSKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class DihedralOPLSKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -905,7 +905,7 @@ void FFT3dKokkos<DeviceType>::fft_3d_1d_only_kokkos(typename FFT_AT::t_FFT_DATA_
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FFT3dKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FFT3dKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ typedef double FFT_SCALAR;
|
|||
// CUFFT or KISSFFT, thus undefine all other
|
||||
// FFTs here, since they may be valid in fft3d.cpp
|
||||
|
||||
#if defined(KOKKOS_ENABLE_CUDA)
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
# if defined(FFT_FFTW)
|
||||
# undef FFT_FFTW
|
||||
# endif
|
||||
|
@ -164,7 +164,7 @@ typedef tdual_int_64::t_dev_um t_int_64_um;
|
|||
|
||||
};
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template <>
|
||||
struct FFTArrayTypes<LMPHostType> {
|
||||
|
||||
|
|
|
@ -85,7 +85,7 @@ void FixDPDenergyKokkos<DeviceType>::final_integrate()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixDPDenergyKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixDPDenergyKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -163,7 +163,7 @@ void FixEnforce2DKokkos<DeviceType>::post_force_item( int i ) const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixEnforce2DKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixEnforce2DKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -560,7 +560,7 @@ void FixEOStableRXKokkos<DeviceType>::create_kokkos_tables()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixEOStableRXKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixEOStableRXKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -102,6 +102,7 @@ double FixFreezeKokkos<DeviceType>::compute_vector(int n)
|
|||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
template<class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixFreezeKokkos<DeviceType>::operator()(const int i, OriginalForce &original) const {
|
||||
if (mask[i] & groupbit) {
|
||||
original.values[0] += f(i,0);
|
||||
|
@ -118,7 +119,7 @@ void FixFreezeKokkos<DeviceType>::operator()(const int i, OriginalForce &origina
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixFreezeKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixFreezeKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -115,7 +115,7 @@ void FixGravityKokkos<DeviceType>::operator()(TagFixGravityMass, const int i, do
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixGravityKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixGravityKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -909,7 +909,7 @@ void FixLangevinKokkos<DeviceType>::cleanup_copy()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixLangevinKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixLangevinKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -199,7 +199,7 @@ void FixMomentumKokkos<DeviceType>::end_of_step()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixMomentumKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixMomentumKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -343,7 +343,7 @@ int FixNeighHistoryKokkos<DeviceType>::unpack_exchange(int nlocal, double *buf)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNeighHistoryKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNeighHistoryKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -735,7 +735,7 @@ void FixNHKokkos<DeviceType>::pre_exchange()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNHKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNHKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@ FixNPHKokkos<DeviceType>::FixNPHKokkos(LAMMPS *lmp, int narg, char **arg) :
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNPHKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNPHKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@ FixNPTKokkos<DeviceType>::FixNPTKokkos(LAMMPS *lmp, int narg, char **arg) :
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNPTKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNPTKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -172,7 +172,7 @@ void FixNVEKokkos<DeviceType>::cleanup_copy()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNVEKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNVEKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -149,7 +149,7 @@ void FixNVESphereKokkos<DeviceType>::final_integrate_item(const int i) const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNVESphereKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNVESphereKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ FixNVTKokkos<DeviceType>::FixNVTKokkos(LAMMPS *lmp, int narg, char **arg) :
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixNVTKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixNVTKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -478,6 +478,7 @@ void FixQEqReaxKokkos<DeviceType>::compute_h_item(int ii, int &m_fill, const boo
|
|||
|
||||
template <class DeviceType>
|
||||
template <int NEIGHFLAG>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixQEqReaxKokkos<DeviceType>::compute_h_team(
|
||||
const typename Kokkos::TeamPolicy<DeviceType>::member_type &team,
|
||||
int atoms_per_team, int vector_length) const {
|
||||
|
@ -1524,7 +1525,7 @@ int FixQEqReaxKokkos<DeviceType>::unpack_exchange(int nlocal, double *buf)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixQEqReaxKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixQEqReaxKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -220,6 +220,7 @@ void FixRxKokkos<DeviceType>::rk4(const double t_stop, double *y, double *rwork,
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixRxKokkos<DeviceType>::k_rk4(const double t_stop, VectorType& y, VectorType& rwork, UserDataType& userData) const
|
||||
{
|
||||
VectorType k1( rwork );
|
||||
|
@ -279,6 +280,7 @@ void FixRxKokkos<DeviceType>::k_rk4(const double t_stop, VectorType& y, VectorTy
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixRxKokkos<DeviceType>::k_rkf45_step (const int neq, const double h, VectorType& y, VectorType& y_out, VectorType& rwk, UserDataType& userData) const
|
||||
{
|
||||
const double c21=0.25;
|
||||
|
@ -384,6 +386,7 @@ void FixRxKokkos<DeviceType>::k_rkf45_step (const int neq, const double h, Vecto
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
int FixRxKokkos<DeviceType>::k_rkf45_h0
|
||||
(const int neq, const double t, const double t_stop,
|
||||
const double hmin, const double hmax,
|
||||
|
@ -479,6 +482,7 @@ int FixRxKokkos<DeviceType>::k_rkf45_h0
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixRxKokkos<DeviceType>::k_rkf45(const int neq, const double t_stop, VectorType& y, VectorType& rwork, UserDataType& userData, CounterType& counter) const
|
||||
{
|
||||
// Rounding coefficient.
|
||||
|
@ -1049,6 +1053,7 @@ int FixRxKokkos<DeviceType>::rhs_sparse(double t, const double *y, double *dydt,
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
int FixRxKokkos<DeviceType>::k_rhs(double t, const VectorType& y, VectorType& dydt, UserDataType& userData) const
|
||||
{
|
||||
// Use the sparse format instead.
|
||||
|
@ -1062,6 +1067,7 @@ int FixRxKokkos<DeviceType>::k_rhs(double t, const VectorType& y, VectorType& dy
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
int FixRxKokkos<DeviceType>::k_rhs_dense(double t, const VectorType& y, VectorType& dydt, UserDataType& userData) const
|
||||
{
|
||||
#define rxnRateLaw (userData.rxnRateLaw)
|
||||
|
@ -1103,6 +1109,7 @@ int FixRxKokkos<DeviceType>::k_rhs_dense(double t, const VectorType& y, VectorTy
|
|||
|
||||
template <typename DeviceType>
|
||||
template <typename VectorType, typename UserDataType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
int FixRxKokkos<DeviceType>::k_rhs_sparse(double t, const VectorType& y, VectorType& dydt, UserDataType& userData) const
|
||||
{
|
||||
#define kFor (userData.kFor)
|
||||
|
@ -2275,7 +2282,7 @@ void FixRxKokkos<DeviceType>::unpack_reverse_comm(int n, int *list, double *buf)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixRxKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixRxKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -184,7 +184,7 @@ void FixSetForceKokkos<DeviceType>::operator()(TagFixSetForceNonConstant, const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixSetForceKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixSetForceKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -800,7 +800,7 @@ double FixShardlowKokkos<DeviceType>::memory_usage()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixShardlowKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixShardlowKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@ void FixWallLJ93Kokkos<DeviceType>::wall_particle_item(int i, value_type ewall)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixWallLJ93Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixWallLJ93Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -107,7 +107,7 @@ void FixWallReflectKokkos<DeviceType>::operator()(TagFixWallReflectPostIntegrate
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixWallReflectKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class FixWallReflectKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -652,7 +652,7 @@ double GridCommKokkos<DeviceType>::memory_usage()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class GridCommKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class GridCommKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1126,7 +1126,7 @@ void ImproperClass2Kokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i1, cons
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class ImproperClass2Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class ImproperClass2Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -477,7 +477,7 @@ void ImproperHarmonicKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int i1, co
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class ImproperHarmonicKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class ImproperHarmonicKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class KissFFTKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class KissFFTKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -100,8 +100,8 @@ KokkosLMP::KokkosLMP(LAMMPS *lmp, int narg, char **arg) : Pointers(lmp)
|
|||
|
||||
} else if (strcmp(arg[iarg],"g") == 0 ||
|
||||
strcmp(arg[iarg],"gpus") == 0) {
|
||||
#ifndef KOKKOS_ENABLE_CUDA
|
||||
error->all(FLERR,"GPUs are requested but Kokkos has not been compiled for CUDA");
|
||||
#ifndef LMP_KOKKOS_GPU
|
||||
error->all(FLERR,"GPUs are requested but Kokkos has not been compiled for CUDA or HIP");
|
||||
#endif
|
||||
if (iarg+2 > narg) error->all(FLERR,"Invalid Kokkos command-line args");
|
||||
ngpus = atoi(arg[iarg+1]);
|
||||
|
@ -164,9 +164,9 @@ KokkosLMP::KokkosLMP(LAMMPS *lmp, int narg, char **arg) : Pointers(lmp)
|
|||
if (logfile) fprintf(logfile," will use up to %d GPU(s) per node\n",ngpus);
|
||||
}
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
if (ngpus <= 0)
|
||||
error->all(FLERR,"Kokkos has been compiled for CUDA but no GPUs are requested");
|
||||
error->all(FLERR,"Kokkos has been compiled for CUDA or HIP but no GPUs are requested");
|
||||
#endif
|
||||
|
||||
#ifndef KOKKOS_ENABLE_SERIAL
|
||||
|
|
|
@ -29,6 +29,10 @@ enum{FULL=1u,HALFTHREAD=2u,HALF=4u};
|
|||
#define ISFINITE(x) std::isfinite(x)
|
||||
#endif
|
||||
|
||||
#if defined(KOKKOS_ENABLE_CUDA) || defined(KOKKOS_ENABLE_HIP)
|
||||
#define LMP_KOKKOS_GPU
|
||||
#endif
|
||||
|
||||
#define MAX_TYPES_STACKPARAMS 12
|
||||
#define NeighClusterSize 8
|
||||
|
||||
|
@ -186,6 +190,7 @@ template<>
|
|||
struct ExecutionSpaceFromDevice<LMPHostType> {
|
||||
static const LAMMPS_NS::ExecutionSpace space = LAMMPS_NS::Host;
|
||||
};
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
template<>
|
||||
struct ExecutionSpaceFromDevice<Kokkos::Cuda> {
|
||||
|
@ -193,6 +198,13 @@ struct ExecutionSpaceFromDevice<Kokkos::Cuda> {
|
|||
};
|
||||
#endif
|
||||
|
||||
#if defined(KOKKOS_ENABLE_HIP)
|
||||
template<>
|
||||
struct ExecutionSpaceFromDevice<Kokkos::Experimental::HIP> {
|
||||
static const LAMMPS_NS::ExecutionSpace space = LAMMPS_NS::Device;
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
// Determine memory traits for force array
|
||||
// Do atomic trait when running HALFTHREAD neighbor list style
|
||||
|
@ -221,6 +233,13 @@ struct AtomicDup<HALFTHREAD,Kokkos::Cuda> {
|
|||
};
|
||||
#endif
|
||||
|
||||
#if defined(KOKKOS_ENABLE_HIP)
|
||||
template<>
|
||||
struct AtomicDup<HALFTHREAD,Kokkos::Experimental::HIP> {
|
||||
enum {value = Kokkos::Experimental::ScatterAtomic};
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef LMP_KOKKOS_USE_ATOMICS
|
||||
|
||||
#ifdef KOKKOS_ENABLE_OPENMP
|
||||
|
@ -753,7 +772,7 @@ typedef tdual_neighbors_2d::t_dev_const_randomread t_neighbors_2d_randomread;
|
|||
|
||||
};
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template <>
|
||||
struct ArrayTypes<LMPHostType> {
|
||||
|
||||
|
@ -1087,7 +1106,7 @@ typedef SNAComplex<SNAreal> SNAcomplex;
|
|||
#define ISFINITE(x) std::isfinite(x)
|
||||
#endif
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
#define LAMMPS_LAMBDA [=] __device__
|
||||
#else
|
||||
#define LAMMPS_LAMBDA [=]
|
||||
|
|
|
@ -147,7 +147,7 @@ void NBinKokkos<DeviceType>::binatomsItem(const int &i) const
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NBinKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NBinKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -298,7 +298,7 @@ void NBinSSAKokkos<DeviceType>::sortBin(
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NBinSSAKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NBinSSAKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1305,7 +1305,7 @@ void NeighBondKokkos<DeviceType>::update_domain_variables()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NeighBondKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NeighBondKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ void NeighListKokkos<DeviceType>::grow(int nmax)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NeighListKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NeighListKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -122,7 +122,7 @@ void NPairCopyKokkos<DeviceType>::copy_to_cpu(NeighList *list)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NPairCopyKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NPairCopyKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -123,7 +123,7 @@ void NPairHalffullKokkos<DeviceType,NEWTON>::operator()(TagNPairHalffullCompute,
|
|||
namespace LAMMPS_NS {
|
||||
template class NPairHalffullKokkos<LMPDeviceType,0>;
|
||||
template class NPairHalffullKokkos<LMPDeviceType,1>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NPairHalffullKokkos<LMPHostType,0>;
|
||||
template class NPairHalffullKokkos<LMPHostType,1>;
|
||||
#endif
|
||||
|
|
|
@ -1154,7 +1154,7 @@ template class NPairKokkos<LMPDeviceType,1,1,0,0>;
|
|||
template class NPairKokkos<LMPDeviceType,1,0,1,0>;
|
||||
template class NPairKokkos<LMPDeviceType,1,0,0,1>;
|
||||
template class NPairKokkos<LMPDeviceType,1,0,1,1>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NPairKokkos<LMPHostType,0,0,0,0>;
|
||||
template class NPairKokkos<LMPHostType,0,1,0,0>;
|
||||
template class NPairKokkos<LMPHostType,1,0,0,0>;
|
||||
|
|
|
@ -147,7 +147,7 @@ void NPairSkipKokkos<DeviceType>::operator()(TagNPairSkipCountLocal, const int &
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NPairSkipKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NPairSkipKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -525,6 +525,7 @@ fprintf(stdout, "Fina%03d %6d inum %6d gnum, total used %6d, allocated %6d\n"
|
|||
|
||||
|
||||
template<class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void NPairSSAKokkosExecute<DeviceType>::build_locals_onePhase(const bool firstTry, int me, int workPhase) const
|
||||
{
|
||||
const typename ArrayTypes<DeviceType>::t_int_1d_const_um stencil = d_stencil;
|
||||
|
@ -661,6 +662,7 @@ fprintf(stdout, "Phas%03d phase %3d used %6d inums, workItems = %3d, skipped = %
|
|||
|
||||
|
||||
template<class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void NPairSSAKokkosExecute<DeviceType>::build_ghosts_onePhase(int workPhase) const
|
||||
{
|
||||
const typename ArrayTypes<DeviceType>::t_int_1d_const_um stencil = d_stencil;
|
||||
|
@ -753,7 +755,7 @@ void NPairSSAKokkosExecute<DeviceType>::build_ghosts_onePhase(int workPhase) con
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class NPairSSAKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class NPairSSAKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -352,7 +352,7 @@ double PairBuckCoulCutKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairBuckCoulCutKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairBuckCoulCutKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -515,7 +515,7 @@ double PairBuckCoulLongKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairBuckCoulLongKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairBuckCoulLongKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -264,7 +264,7 @@ double PairBuckKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairBuckKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairBuckKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -270,7 +270,7 @@ double PairCoulCutKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairCoulCutKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairCoulCutKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -313,7 +313,7 @@ double PairCoulDebyeKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairCoulDebyeKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairCoulDebyeKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -414,7 +414,7 @@ int PairCoulDSFKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairCoulDSFKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairCoulDSFKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -464,7 +464,7 @@ double PairCoulLongKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairCoulLongKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairCoulLongKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -416,7 +416,7 @@ int PairCoulWolfKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairCoulWolfKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairCoulWolfKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -788,7 +788,7 @@ int PairDPDfdtEnergyKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairDPDfdtEnergyKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairDPDfdtEnergyKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1223,7 +1223,7 @@ void PairEAMAlloyKokkos<DeviceType>::file2array_alloy()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairEAMAlloyKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairEAMAlloyKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1233,7 +1233,7 @@ void PairEAMFSKokkos<DeviceType>::file2array_fs()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairEAMFSKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairEAMFSKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -896,7 +896,7 @@ void PairEAMKokkos<DeviceType>::ev_tally(EV_FLOAT &ev, const int &i, const int &
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairEAMKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairEAMKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -232,7 +232,7 @@ void PairExp6rxKokkos<DeviceType>::compute(int eflag_in, int vflag_in)
|
|||
} else
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<DeviceType, TagPairExp6rxZeroMixingWeights>(0,np_total),*this);
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<DeviceType, TagPairExp6rxgetMixingWeights>(0,np_total),*this);
|
||||
#else
|
||||
int errorFlag = 0;
|
||||
|
@ -277,7 +277,7 @@ void PairExp6rxKokkos<DeviceType>::compute(int eflag_in, int vflag_in)
|
|||
|
||||
EV_FLOAT ev;
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA // Use atomics
|
||||
#ifdef LMP_KOKKOS_GPU // Use atomics
|
||||
|
||||
if (neighflag == HALF) {
|
||||
if (newton_pair) {
|
||||
|
@ -2654,7 +2654,7 @@ int PairExp6rxKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairExp6rxKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairExp6rxKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -585,7 +585,7 @@ void PairGranHookeHistoryKokkos<DeviceType>::ev_tally_xyz_atom(EV_FLOAT &ev, int
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairGranHookeHistoryKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairGranHookeHistoryKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -720,7 +720,7 @@ int GetTeamSize(FunctorStyle& functor, int inum, int reduce_flag, int team_size,
|
|||
else
|
||||
team_size_max = Kokkos::TeamPolicy<>(inum,Kokkos::AUTO).team_size_max(functor,Kokkos::ParallelForTag());
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
if(team_size*vector_length > team_size_max)
|
||||
team_size = team_size_max/vector_length;
|
||||
#else
|
||||
|
|
|
@ -520,7 +520,7 @@ double PairLJCharmmCoulCharmmImplicitKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCharmmCoulCharmmImplicitKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCharmmCoulCharmmImplicitKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -522,7 +522,7 @@ double PairLJCharmmCoulCharmmKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCharmmCoulCharmmKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCharmmCoulCharmmKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -529,7 +529,7 @@ double PairLJCharmmCoulLongKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCharmmCoulLongKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCharmmCoulLongKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -355,7 +355,7 @@ double PairLJClass2CoulCutKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJClass2CoulCutKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJClass2CoulCutKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -510,7 +510,7 @@ double PairLJClass2CoulLongKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJClass2CoulLongKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJClass2CoulLongKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -282,7 +282,7 @@ double PairLJClass2Kokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJClass2Kokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJClass2Kokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -347,7 +347,7 @@ double PairLJCutCoulCutKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCutCoulCutKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCutCoulCutKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -376,7 +376,7 @@ double PairLJCutCoulDebyeKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCutCoulDebyeKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCutCoulDebyeKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -369,7 +369,7 @@ double PairLJCutCoulDSFKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCutCoulDSFKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCutCoulDSFKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -510,7 +510,7 @@ double PairLJCutCoulLongKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCutCoulLongKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCutCoulLongKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -278,7 +278,7 @@ double PairLJCutKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJCutKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJCutKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -287,7 +287,7 @@ double PairLJExpandKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJExpandKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJExpandKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -509,7 +509,7 @@ double PairLJGromacsCoulGromacsKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJGromacsCoulGromacsKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJGromacsCoulGromacsKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -341,7 +341,7 @@ double PairLJGromacsKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJGromacsKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJGromacsKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -317,7 +317,7 @@ double PairLJSDKKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairLJSDKKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairLJSDKKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -295,7 +295,7 @@ double PairMorseKokkos<DeviceType>::init_one(int i, int j)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairMorseKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairMorseKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -987,7 +987,7 @@ void PairMultiLucyRXKokkos<DeviceType>::settings(int narg, char **arg)
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairMultiLucyRXKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairMultiLucyRXKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -3958,7 +3958,7 @@ void PairReaxCKokkos<DeviceType>::operator()(PairReaxFindBondSpecies, const int
|
|||
}
|
||||
|
||||
template class PairReaxCKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairReaxCKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairSNAPKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairSNAPKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -296,7 +296,7 @@ void PairSNAPKokkos<DeviceType>::compute(int eflag_in, int vflag_in)
|
|||
}
|
||||
} else { // GPU
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
//PreUi
|
||||
{
|
||||
int vector_length = vector_length_default;
|
||||
|
|
|
@ -967,7 +967,7 @@ void PairSWKokkos<DeviceType>::ev_tally3_atom(EV_FLOAT &ev, const int &i,
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairSWKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairSWKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -530,7 +530,7 @@ void PairTableKokkos<DeviceType>::cleanup_copy() {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairTableKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairTableKokkos<LMPHostType>;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1297,7 +1297,7 @@ void PairTableRXKokkos<DeviceType>::cleanup_copy() {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairTableRXKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairTableRXKokkos<LMPHostType>;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1282,7 +1282,7 @@ int PairTersoffKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairTersoffKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairTersoffKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1285,7 +1285,7 @@ int PairTersoffMODKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairTersoffMODKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairTersoffMODKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1381,7 +1381,7 @@ int PairTersoffZBLKokkos<DeviceType>::sbmask(const int& j) const {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairTersoffZBLKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairTersoffZBLKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -942,7 +942,7 @@ void PairVashishtaKokkos<DeviceType>::ev_tally3_atom(EV_FLOAT &ev, const int &i,
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairVashishtaKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairVashishtaKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -290,7 +290,7 @@ compute_evdwl(const F_FLOAT& rsq, const int& i, const int&j,
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairYukawaKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairYukawaKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -423,7 +423,7 @@ void PairZBLKokkos<DeviceType>::cleanup_copy() {
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PairZBLKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PairZBLKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1627,7 +1627,7 @@ void PPPMKokkos<DeviceType>::make_rho()
|
|||
|
||||
nlocal = atomKK->nlocal;
|
||||
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
copymode = 1;
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<DeviceType, TagPPPM_make_rho_atomic>(0,nlocal),*this);
|
||||
copymode = 0;
|
||||
|
@ -3051,7 +3051,7 @@ double PPPMKokkos<DeviceType>::memory_usage()
|
|||
|
||||
namespace LAMMPS_NS {
|
||||
template class PPPMKokkos<LMPDeviceType>;
|
||||
#ifdef KOKKOS_ENABLE_CUDA
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
template class PPPMKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue