HRNet / HRNet-Semantic-Segmentation

The OCR approach is rephrased as Segmentation Transformer: https://arxiv.org/abs/1909.11065. This is an official implementation of semantic segmentation for HRNet. https://arxiv.org/abs/1908.07919
Other
3.13k stars 686 forks source link

Failed to install sync_bn #185

Closed HieuPhan33 closed 4 years ago

HieuPhan33 commented 4 years ago

Hi, when I run the models\sync_bn\inplace_abn\functions.py, I encountered C++ template mismatch error. Here is the error log:

RuntimeError: Error building extension 'inplace_abn':[1/4] c++ -MMD -MF inplace_abn_cpu.o.d -DTORCH_EXTENSION_NAME=inplace_abn -DTORCH_API_INCLUDE_EXTENSION_H -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/TH -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/THC -isystem /usr/local/cuda/include -isystem /root/anaconda3/envs/torch041/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -O3 -c /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp -o inplace_abn_cpu.o
FAILED: inplace_abn_cpu.o
c++ -MMD -MF inplace_abn_cpu.o.d -DTORCH_EXTENSION_NAME=inplace_abn -DTORCH_API_INCLUDE_EXTENSION_H -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/TH -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/THC -isystem /usr/local/cuda/include -isystem /root/anaconda3/envs/torch041/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -O3 -c /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp -o inplace_abn_cpu.o
/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp: In function 'std::vector<at::Tensor> backward_cpu(at::Tensor, at::Tensor, at::Tensor, at::Tensor, at::Tensor, at::Tensor, at::Tensor, bool, float)':
/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp:82:34: error: could not convert 'z.at::Tensor::type()' from 'at::DeprecatedTypeProperties' to 'c10::IntArrayRef {aka c10::ArrayRef<long int>}'
   auto dweight = at::empty(z.type(), {0});
                                  ^
/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp:83:32: error: could not convert 'z.at::Tensor::type()' from 'at::DeprecatedTypeProperties' to 'c10::IntArrayRef {aka c10::ArrayRef<long int>}'
   auto dbias = at::empty(z.type(), {0});
                                ^
/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cpu.cpp:89:29: error: could not convert '{dx, dweight, dbias}' from '<brace-enclosed initializer list>' to 'std::vector<at::Tensor>'
   return {dx, dweight, dbias};
                             ^
[2/4] /usr/local/cuda/bin/nvcc -DTORCH_EXTENSION_NAME=inplace_abn -DTORCH_API_INCLUDE_EXTENSION_H -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/TH -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/THC -isystem /usr/local/cuda/include -isystem /root/anaconda3/envs/torch041/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --compiler-options '-fPIC' --expt-extended-lambda -std=c++11 -c /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu -o inplace_abn_cuda.cuda.o
FAILED: inplace_abn_cuda.cuda.o
/usr/local/cuda/bin/nvcc -DTORCH_EXTENSION_NAME=inplace_abn -DTORCH_API_INCLUDE_EXTENSION_H -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/TH -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/THC -isystem /usr/local/cuda/include -isystem /root/anaconda3/envs/torch041/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --compiler-options '-fPIC' --expt-extended-lambda -std=c++11 -c /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu -o inplace_abn_cuda.cuda.o
/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(99): error: no suitable user-defined conversion from "at::DeprecatedTypeProperties" to "c10::IntArrayRef" exists

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(99): error: no instance of constructor "c10::TensorOptions::TensorOptions" matches the argument list
            argument types are: (int64_t)

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(100): error: no suitable user-defined conversion from "at::DeprecatedTypeProperties" to "c10::IntArrayRef" exists

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(100): error: no instance of constructor "c10::TensorOptions::TensorOptions" matches the argument list
            argument types are: (int64_t)

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(202): error: no suitable user-defined conversion from "at::DeprecatedTypeProperties" to "c10::IntArrayRef" exists

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(202): error: no instance of constructor "c10::TensorOptions::TensorOptions" matches the argument list
            argument types are: (int64_t)

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(203): error: no suitable user-defined conversion from "at::DeprecatedTypeProperties" to "c10::IntArrayRef" exists

/data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn_cuda.cu(203): error: no instance of constructor "c10::TensorOptions::TensorOptions" matches the argument list
            argument types are: (int64_t)

8 errors detected in the compilation of "/tmp/tmpxft_00009924_00000000-6_inplace_abn_cuda.cpp1.ii".
[3/4] c++ -MMD -MF inplace_abn.o.d -DTORCH_EXTENSION_NAME=inplace_abn -DTORCH_API_INCLUDE_EXTENSION_H -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/TH -isystem /root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/THC -isystem /usr/local/cuda/include -isystem /root/anaconda3/envs/torch041/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -O3 -c /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn.cpp -o inplace_abn.o
In file included from /data/semantic_segmentation/HR-OCR/lib/models/sync_bn/inplace_abn/src/inplace_abn.cpp:1:0:
/root/anaconda3/envs/torch041/lib/python3.6/site-packages/torch/include/torch/csrc/api/include/torch/torch.h:7:2: warning: #warning "Including torch/torch.h for C++ extensions is deprecated. Please include torch/extension.h" [-Wcpp]
 #warning \
  ^
ninja: build stopped: subcommand failed.

Here is my working environment: CUDA : 10.0 Pytorch: 1.1.0 Ninja: 1.8.2 GCC: 5.4.0

FYI, I can run using pytorch 0.4.1, but once I switch to 1.1.0. It failed, even though I always use branch v1.1.0