New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to obtain the .so files? #23
Comments
Example exception stacktrace: Traceback (most recent call last): |
Hi, the custom tensorflow operations should automatically compile (if they are missing when executing run.py) to produce the .so files. It worked for me with tensorflow 1.7 and Ubuntu 17.10. Which command did you run to get this output? |
Did you solve the problem? |
Partially. One problem was that I hadn't installed the cuda toolkit, so the command nvcc wasn't found. Maybe it's obvious, but could be added to dependencies:
I get the same error now, but for a different reason: ~/UnFlow/src$ python run.py --help I use tensorflow 1.7 and Cuda 9.0 on Ubuntu 16.04. |
I have the same issue: Traceback (most recent call last): During handling of the above exception, another exception occurred: Traceback (most recent call last): |
@simonmeister Hi Simon, How did you install Tensorflow? From the source or using something like anaconda? |
Following the discussion tensorflow/tensorflow#15002, I removed the Now, I got a similar problem to @gsaibro: ~/UnFlow/src$ python run.py --help |
I used pip to install tensorflow-gpu. @clauslang i get the same issue without using GOOGLE_CUDA, as it doesn't compile the CUDA code in that case. When keeping the flag it works for me. |
@clauslang It seems that cuda.h is not found. The current code expects cuda to be in /usr/local/cuda. I am not exactly sure if that is where it is put when you install it with apt. In most cases it's better to use the installer from the NVIDIA site to get a clean install. |
Thanks, @simonmeister, for the clarification! I got a bit confused there: I did have cuda installed, but thought I had to install nvcc on top of that (instead of just pointing to the correct cuda install location). For now, I removed the |
Thanks @simonmeister and @clauslang. Using the '-D GOOGLE_CUDA=1' and setting the environment variables I advanced a little getting an error when trying to build correlation_op.cu.cc, as below in bold. Would you have any guess about what is causing that @simonmeister ? Thanks. (tensorflow) gsaibro@IHUW074 /media/gsaibro/DATA/InternshipIrcad/FlowNet2/UnFlow-master/src $ python run.py /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(304): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(305): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(57): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(304): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(305): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/generated_message_reflection.h(685): warning: variable "unused" was set but never used /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(57): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(304): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(305): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(57): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(304): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(305): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/generated_message_reflection.h(685): warning: variable "unused" was set but never used /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(57): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(304): warning: integer conversion resulted in a change of sign /home/gsaibro/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/google/protobuf/arena_impl.h(305): warning: integer conversion resulted in a change of sign correlation_op.cu.cc(249): error: identifier "GPUDevice" is undefined correlation_op.cu.cc(316): error: identifier "GPUDevice" is undefined correlation_op.cu.cc(331): warning: variable "kernel_size_" was declared but never referenced 2 errors detected in the compilation of "/tmp/tmpxft_00001c80_00000000-6_correlation_op.cu.cpp1.ii". During handling of the above exception, another exception occurred: Traceback (most recent call last): |
I manage to solve this problem by adding/modifying some paths in the tensorflow files and in the C++ ops. CUDA 9.0 1. When I got an error on mutex.h I made de following substitution: #include "nsync_cv.h" -> #include "...../anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/external/nsync/public/nsync_cv.h" #include "nsync_mu.h" -> #include ".../anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/include/external/nsync/public/nsync_mu.h" 2. When I got an error when calling cuda_device_function.h , cuda_kernel_helper.h and cuda_launch_config.h: #include "cuda/include/cuda.h" -> #include "/usr/local/cuda/include/cuda.h" 3. On correlation_op.cu.cc Add below using namespace tensorflow; -> typedef Eigen::GpuDevice GPUDevice; Thanks for your help. |
Had exactly same error and fixed it by downgrading from TF
|
When I try to run the code according to the README instructions, I get an error that certain .so files are not found. Indeed, the necessary .cc and .h files are in the ops directory, but no .so or .o files.
How can I obtain them? Or are they supposed to be generated somehow at first?
(Maybe I have more general understanding problem: What does ops actually stand for?)
The text was updated successfully, but these errors were encountered: