Commit a6df61a6 authored by Denis Taniguchi's avatar Denis Taniguchi
Browse files

Making ComputeTempKokkos compatible with rmass in device memory.

parent f394ed94
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
@@ -49,7 +49,9 @@ double ComputeTempKokkos<DeviceType>::compute_scalar()
  invoked_scalar = update->ntimestep;

  v = atomKK->k_v.view<DeviceType>();
  rmass = atomKK->rmass;
  if (atomKK->rmass)
    rmass = atomKK->k_rmass.view<DeviceType>();
  else
    mass = atomKK->k_mass.view<DeviceType>();
  type = atomKK->k_type.view<DeviceType>();
  mask = atomKK->k_mask.view<DeviceType>();
@@ -59,7 +61,7 @@ double ComputeTempKokkos<DeviceType>::compute_scalar()
  CTEMP t_kk;

  copymode = 1;
  if (rmass)
  if (atomKK->rmass)
    Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagComputeTempScalar<1> >(0,nlocal),*this,t_kk);
  else
    Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagComputeTempScalar<0> >(0,nlocal),*this,t_kk);
@@ -102,7 +104,9 @@ void ComputeTempKokkos<DeviceType>::compute_vector()
  invoked_vector = update->ntimestep;

  v = atomKK->k_v.view<DeviceType>();
  rmass = atomKK->rmass;
  if (atomKK->rmass)
    rmass = atomKK->k_rmass.view<DeviceType>();
  else
    mass = atomKK->k_mass.view<DeviceType>();
  type = atomKK->k_type.view<DeviceType>();
  mask = atomKK->k_mask.view<DeviceType>();
@@ -113,7 +117,7 @@ void ComputeTempKokkos<DeviceType>::compute_vector()
  CTEMP t_kk;

  copymode = 1;
  if (rmass)
  if (atomKK->rmass)
    Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagComputeTempVector<1> >(0,nlocal),*this,t_kk);
  else
    Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagComputeTempVector<0> >(0,nlocal),*this,t_kk);
+1 −1
Original line number Diff line number Diff line
@@ -84,7 +84,7 @@ class ComputeTempKokkos : public ComputeTemp {

 protected:
  typename ArrayTypes<DeviceType>::t_v_array_randomread v;
  double *rmass;
  typename ArrayTypes<DeviceType>::t_float_1d_randomread rmass;
  typename ArrayTypes<DeviceType>::t_float_1d_randomread mass;
  typename ArrayTypes<DeviceType>::t_int_1d_randomread type;
  typename ArrayTypes<DeviceType>::t_int_1d_randomread mask;