yewzijian / 3DFeatNet

3DFeat-Net: Weakly Supervised Local 3D Features for Point Cloud Registration
MIT License
220 stars 46 forks source link

No OpKernel was registered to support Op 'QueryBallPoint' with these attrs. #16

Closed arajzd closed 4 years ago

arajzd commented 4 years ago

Hi, Thanks for the great paper and the great code.

When I try to run inference_example.sh I get the following error :

InvalidArgumentError (see above for traceback): No OpKernel was registered to support Op 'QueryBallPoint' with these attrs.  Registered devices: [CPU], Registered kernels:
  device='GPU'

         [[Node: description/layer1/QueryBallPoint = QueryBallPoint[nsample=64, radius=2, _device="/device:GPU:0"](strided_slice, detection/Identity)]]

I have compiled the tf_grouping with the -lcudart argument as without I was getting some undefined symbol error. i.e. g++ -std=c++11 tf_grouping.cpp tf_grouping_g.cu.o -o tf_grouping_so.so -shared -fPIC -I $TF_INC -I /usr/local/cuda-10.0/include -I $TF_INC/external/nsync/public -lcudart -L /usr/local/cuda-10.0/lib64/ -L$TF_LIB -ltensorflow_framework -O2 -D_GLIBCXX_USE_CXX11_ABI=0 Could you help me with solving this please? I am on Ubuntu 18.04, python 3.6, tf 1.4.0 and g++ 7.5.0

arajzd commented 4 years ago

Turned out the reason is behind my TensorFlow not being able to see the GPU, I am closing the issue.