zhanghang1989 / zhanghang1989/PyTorch-Encoding

I get RuntimeError: Error building extension 'enclib_cpu':

Open
#189 12 comments 8 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2k
Forks
448
PR merge metrics
No merged PRs in 30d

Description

hi, I get this error, who can help me ? thanks!!!

Traceback (most recent call last):
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 946, in _build_extension_module
check=True)
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/subprocess.py", line 418, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "train_nullmax.py", line 17, in
import encoding.utils as utils
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/init.py", line 13, in
from . import nn, functions, dilated, parallel, utils, models, datasets
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/nn/init.py", line 12, in
from .encoding import *
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/nn/encoding.py", line 19, in
from ..functions import scaledL2, aggregate, pairwise_cosine
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/functions/init.py", line 2, in
from .encoding import *
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/functions/encoding.py", line 14, in
from .. import lib
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/init.py", line 12, in
], build_directory=cpu_path, verbose=False)
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 645, in load
is_python_module)
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 814, in _jit_compile
with_cuda=with_cuda)
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 863, in _write_ninja_file_and_build
_build_extension_module(name, build_directory, verbose)
File "/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 959, in build_extension_module
raise RuntimeError(message)
RuntimeError: Error building extension 'enclib_cpu': [1/3] c++ -MMD -MF roi_align_cpu.o.d -DTORCH_EXTENSION_NAME=enclib_cpu -DTORCH_API_INCLUDE_EXTENSION_H -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/torch/csrc/api/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/TH -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/THC -isystem /home/lpeng/anaconda3/envs/laneseg/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -c /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp -o roi_align_cpu.o
FAILED: roi_align_cpu.o
c++ -MMD -MF roi_align_cpu.o.d -DTORCH_EXTENSION_NAME=enclib_cpu -DTORCH_API_INCLUDE_EXTENSION_H -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/torch/csrc/api/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/TH -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/THC -isystem /home/lpeng/anaconda3/envs/laneseg/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -c /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp -o roi_align_cpu.o
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In function ‘at::Tensor ROIAlignForwardCPU(const at::Tensor&, const at::Tensor&, int64_t, int64_t, double, int64_t)’:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:407:30: error: ‘struct at::Type’ has no member named ‘tensor’
auto output = input.type().tensor({num_rois, channels, pooled_height, pooled_width});
^
In file included from /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/ATen/ATen.h:9:0,
from /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:1:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In lambda function:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:425:27: error: expected primary-expression before ‘>’ token
output.data<scalar_t>());
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:425:29: error: expected primary-expression before ‘)’ token
output.data<scalar_t>());
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In lambda function:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:425:27: error: expected primary-expression before ‘>’ token
output.data<scalar_t>());
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:425:29: error: expected primary-expression before ‘)’ token
output.data<scalar_t>());
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In function ‘at::Tensor ROIAlignBackwardCPU(const at::Tensor&, const at::Tensor&, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, double, int64_t)’:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:454:37: error: ‘struct at::Type’ has no member named ‘tensor’
auto grad_in = bottom_rois.type().tensor({b_size, channels, height, width}).zero
();
^
In file included from /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/ATen/ATen.h:9:0,
from /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:1:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In lambda function:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:470:28: error: expected primary-expression before ‘>’ token
grad_in.data<scalar_t>(),
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:470:30: error: expected primary-expression before ‘)’ token
grad_in.data<scalar_t>(),
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp: In lambda function:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:470:28: error: expected primary-expression before ‘>’ token
grad_in.data<scalar_t>(),
^
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align_cpu.cpp:470:30: error: expected primary-expression before ‘)’ token
grad_in.data<scalar_t>(),
^
[2/3] c++ -MMD -MF roi_align.o.d -DTORCH_EXTENSION_NAME=enclib_cpu -DTORCH_API_INCLUDE_EXTENSION_H -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/torch/csrc/api/include -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/TH -isystem /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/include/THC -isystem /home/lpeng/anaconda3/envs/laneseg/include/python3.6m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -c /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align.cpp -o roi_align.o
In file included from /home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/encoding/lib/cpu/roi_align.cpp:1:0:
/home/lpeng/anaconda3/envs/laneseg/lib/python3.6/site-packages/torch/lib/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.

image
image
image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with encoding/lib/cpu/roi_align_cpu.cpp and roi_align.cpp, then inspect the torch.utils.cpp_extension build invoked while importing encoding in train_nullmax.py. Reproduce the ninja build and compare the extension's C++ API usage with the installed PyTorch version. Done means the enclib_cpu extension builds successfully and the training script imports encoding without this RuntimeError.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python, pytorch
Domain
build-system, machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.