Eigen warning while compiling reduce_op in fluid
Created by: wanghaoshuang
/home/disk1/wanghaoshuang/paddle/Paddle/build/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h(508): warning: calling a __host__ function from a __host__ __device__ function is not allowed
detected during:
instantiation of "__nv_bool Eigen::TensorEvaluator<const Eigen::TensorReductionOp<Op, Dims, ArgType, MakePointer_>, Device>::evalSubExprsIfNeeded(MakePointer_<Eigen::TensorEvaluator<const Eigen::TensorReductionOp<Op, Dims, ArgType, MakePointer_>, Device>::CoeffReturnType>::Type) [with Op=Eigen::internal::MaxReducer<double>, Dims=const Eigen::array<int, 1UL>, ArgType=const Eigen::TensorMap<Eigen::Tensor<const double, 3, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, MakePointer_=Eigen::MakePointer, Device=Eigen::GpuDevice]"
/home/disk1/wanghaoshuang/paddle/Paddle/build/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h(129): here
instantiation of "__nv_bool Eigen::TensorEvaluator<const Eigen::TensorAssignOp<LeftArgType, RightArgType>, Device>::evalSubExprsIfNeeded(Eigen::TensorEvaluator<const Eigen::TensorAssignOp<LeftArgType, RightArgType>, Device>::Scalar *) [with LeftArgType=Eigen::TensorMap<Eigen::TensorFixedSize<double, Eigen::Sizes<>, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, RightArgType=const Eigen::TensorReductionOp<Eigen::internal::MaxReducer<double>, const Eigen::array<int, 1UL>, const Eigen::TensorMap<Eigen::Tensor<const double, 3, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, Eigen::MakePointer>, Device=Eigen::GpuDevice]"
/home/disk1/wanghaoshuang/paddle/Paddle/build/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h(251): here
instantiation of "void Eigen::internal::TensorExecutor<Expression, Eigen::GpuDevice, Vectorizable>::run(const Expression &, const Eigen::GpuDevice &) [with Expression=const Eigen::TensorAssignOp<Eigen::TensorMap<Eigen::TensorFixedSize<double, Eigen::Sizes<>, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, const Eigen::TensorReductionOp<Eigen::internal::MaxReducer<double>, const Eigen::array<int, 1UL>, const Eigen::TensorMap<Eigen::Tensor<const double, 3, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, Eigen::MakePointer>>, Vectorizable=false]"
/home/disk1/wanghaoshuang/paddle/Paddle/build/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h(35): here
instantiation of "Eigen::TensorDevice<ExpressionType, DeviceType> &Eigen::TensorDevice<ExpressionType, DeviceType>::operator=(const OtherDerived &) [with ExpressionType=Eigen::TensorMap<Eigen::TensorFixedSize<double, Eigen::Sizes<>, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, DeviceType=Eigen::GpuDevice, OtherDerived=Eigen::TensorReductionOp<Eigen::internal::MaxReducer<double>, const Eigen::array<int, 1UL>, const Eigen::TensorMap<Eigen::Tensor<const double, 3, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, Eigen::MakePointer>]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/operators/reduce_op.h(71): here
instantiation of "void paddle::operators::MaxFunctor::operator()(const DeviceContext &, X &, Y &, const Dim &) [with DeviceContext=Eigen::GpuDevice, X=Eigen::TensorMap<Eigen::Tensor<const double, 3, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, Y=Eigen::TensorMap<Eigen::TensorFixedSize<double, Eigen::Sizes<>, 1, Eigen::DenseIndex>, 0, Eigen::MakePointer>, Dim=Eigen::array<int, 1UL>]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/operators/reduce_op.h(181): here
[ 4 instantiation contexts not shown ]
implicit generation of "paddle::operators::ReduceKernel<DeviceContext, T, Functor>::ReduceKernel() [with DeviceContext=paddle::platform::CUDADeviceContext, T=double, Functor=paddle::operators::MaxFunctor]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/framework/op_registry.h(86): here
instantiation of class "paddle::operators::ReduceKernel<DeviceContext, T, Functor> [with DeviceContext=paddle::platform::CUDADeviceContext, T=double, Functor=paddle::operators::MaxFunctor]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/framework/op_registry.h(86): here
instantiation of "void paddle::framework::OpKernelRegistrarFunctor<PlaceType, false, I, KernelTypes...>::operator()(const char *, const char *) const [with PlaceType=paddle::platform::CUDAPlace, I=1UL, KernelTypes=<paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, float, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, double, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int64_t, paddle::operators::MaxFunctor>>]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/framework/op_registry.h(91): here
instantiation of "void paddle::framework::OpKernelRegistrarFunctor<PlaceType, false, I, KernelTypes...>::operator()(const char *, const char *) const [with PlaceType=paddle::platform::CUDAPlace, I=0UL, KernelTypes=<paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, float, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, double, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int64_t, paddle::operators::MaxFunctor>>]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/framework/op_registry.h(106): here
instantiation of "paddle::framework::OpKernelRegistrar<PlaceType, KernelType...>::OpKernelRegistrar(const char *, const char *) [with PlaceType=paddle::platform::CUDAPlace, KernelType=<paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, float, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, double, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int, paddle::operators::MaxFunctor>, paddle::operators::ReduceKernel<paddle::platform::CUDADeviceContext, int64_t, paddle::operators::MaxFunctor>>]"
/home/disk1/wanghaoshuang/paddle/Paddle/paddle/fluid/operators/reduce_op.cu(41): here