Closed
Description
There is no make clean
before make -j
now.
Paddle/paddle/scripts/docker/build.sh
Lines 76 to 83 in b47a2a0
The test order of teamcity is: 1. CPU(openblas), 2.CPU(mkl)+GPU
Thus, #7827 encounter a multiple definition mistake when compiling static library libpaddle_fluid.a in the second CPU+GPU mode.
[22:21:24] libpaddle_fluid.a(tensor_generated_tensor_util.cu.o): In function `paddle::framework::HasInf(paddle::framework::Tensor const&)':
[22:21:24] tmpxft_00003645_00000000-4_tensor_util.compute_61.cudafe1.cpp:(.text+0x5c0): multiple definition of `paddle::framework::HasInf(paddle::framework::Tensor const&)'
[22:21:24] libpaddle_fluid.a(tensor_util.cc.o):tensor_util.cc:(.text+0x190): first defined here
[22:21:24] libpaddle_fluid.a(tensor_generated_tensor_util.cu.o): In function `paddle::framework::HasNAN(paddle::framework::Tensor const&)':
[22:21:24] tmpxft_00003645_00000000-4_tensor_util.compute_61.cudafe1.cpp:(.text+0xf40): multiple definition of `paddle::framework::HasNAN(paddle::framework::Tensor const&)'
[22:21:24] libpaddle_fluid.a(tensor_util.cc.o):tensor_util.cc:(.text+0x430): first defined here
[22:21:24] libpaddle_fluid.a(tensor_util.cc.o): In function `paddle::framework::Tensor::mutable_data(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace>, std::type_index)':
[22:21:24] tensor_util.cc:(.text._ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index[_ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index]+0x2c3): undefined reference to `paddle::platform::is_cpu_place(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace> const&)'
[22:21:24] tensor_util.cc:(.text._ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index[_ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index]+0x2cf): undefined reference to `paddle::platform::is_gpu_place(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace> const&)'
[22:21:24] tensor_util.cc:(.text._ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index[_ZN6paddle9framework6Tensor12mutable_dataEN5boost7variantINS_8platform9CUDAPlaceEJNS4_8CPUPlaceEEEESt10type_index]+0xa70): undefined reference to `paddle::platform::is_cpu_place(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace> const&)'
[22:21:24] libpaddle_fluid.a(tensor_util.cc.o): In function `bool paddle::framework::AnyVisitor<paddle::framework::HasInfPredicate>::operator()<paddle::platform::CPUPlace>(paddle::platform::CPUPlace const&) const':
[22:21:24] tensor_util.cc:(.text._ZNK6paddle9framework10AnyVisitorINS0_15HasInfPredicateEEclINS_8platform8CPUPlaceEEEbRKT_[_ZNK6paddle9framework10AnyVisitorINS0_15HasInfPredicateEEclINS_8platform8CPUPlaceEEEbRKT_]+0x766): undefined reference to `paddle::platform::DeviceContextPool::Get(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace> const&)'
[22:21:24] libpaddle_fluid.a(tensor_util.cc.o): In function `bool paddle::framework::AnyVisitor<paddle::framework::HasNANPredicate>::operator()<paddle::platform::CPUPlace>(paddle::platform::CPUPlace const&) const':
[22:21:24] tensor_util.cc:(.text._ZNK6paddle9framework10AnyVisitorINS0_15HasNANPredicateEEclINS_8platform8CPUPlaceEEEbRKT_[_ZNK6paddle9framework10AnyVisitorINS0_15HasNANPredicateEEclINS_8platform8CPUPlaceEEEbRKT_]+0x766): undefined reference to `paddle::platform::DeviceContextPool::Get(boost::variant<paddle::platform::CUDAPlace, paddle::platform::CPUPlace> const&)'
The reason is that tensor_util.cu is a soft link to tensor_util.cc
Metadata
Metadata
Assignees
Labels
No labels