Rewrote the TensorBase::random method to support the generation of random number on gpu.
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h b/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h index 90a9cc2..d4b7846 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h
@@ -39,9 +39,14 @@ } EIGEN_DEVICE_FUNC - EIGEN_STRONG_INLINE const TensorCwiseNullaryOp<internal::scalar_random_op<Scalar>, const Derived> + EIGEN_STRONG_INLINE const TensorCwiseNullaryOp<internal::UniformRandomGenerator<Scalar>, const Derived> random() const { - return TensorCwiseNullaryOp<internal::scalar_random_op<Scalar>, const Derived>(derived()); + return TensorCwiseNullaryOp<internal::UniformRandomGenerator<Scalar>, const Derived>(derived()); + } + template <typename RandomGenerator> EIGEN_DEVICE_FUNC + EIGEN_STRONG_INLINE const TensorCwiseNullaryOp<RandomGenerator, const Derived> + random() const { + return TensorCwiseNullaryOp<RandomGenerator, const Derived>(derived()); } // Coefficient-wise unary operators