-
Notifications
You must be signed in to change notification settings - Fork 63
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
Dockerfile not working : ImportError: libcuda.so.1: cannot open shared object file: No such file or directory #31
Comments
This is docker-specific; DIRT should work fine with those versions. @dboyle25-40124186, could you take a look please? |
Apologies @francoisruty, I won't be able to properly take a look at this until Monday. Going by the CUDA compatibility versions here, the tensorflow and CUDA versions you've given should be compatible. I'm assuming you've got Nvidia-docker installed and have either edited the docker daemon configuration or ran the image with --runtime=nvidia to allow GPU access to the container? |
@DomhnallBoyle Hello guys thanks for the quick response, no worry on my side for waiting a few days, thanks for all your work :) I can't use the --runtime=nvidia flag for docker build (this flags for docker runs but not docker build). AFAIK it's not possible to use nvidia-docker for docker builds. Did one of you managed to make a docker build? If yes I'm interested in the OS + the exact Dockerfile and docker build command, at this time I'm just trying to use docker to get the given samples up and running |
@francoisruty I was able to get this working. My host machine had Ubuntu 18.04 with CUDA 9.0 and I'm pretty sure the commands I used were exactly like yours above using tensorflow 1.12: sudo docker build -t <image_name> --build-arg CUDA_BASE_VERSION=9.0 --build-arg CUDNN_VERSION=7.6.0.64 --build-arg UBUNTU_VERSION=16.04 --build-arg TENSORFLOW_VERSION=1.12.0 . Could you just double check if you've added "default-runtime": "nvidia" in /etc/docker/daemon.json and restarted the daemon, I'm pretty sure this allows Nvidia runtime access for docker build. Apologies if not, let me try this tomorrow and I'll get back to you |
Hello, I apologize, I had indeed enabled the nvidia runtime, but I wasn't aware you could set it as the default one, enabling one to have GPU available during docker builds! I'll try the samples, and see how it goes with python 3 and tensorflow 2, I'll create other issues or PR if needed! all the best |
Just another comment, it doesn't work with CUDA 10.0 and tensorflow 1.14.0 (those 2 versions are supposed to be compatible), I get:
The important part seems to be this line: |
That new error is due to a change made in tf 1.14; I've created #32 to track it and will fix soon. |
awesome, many thanks! |
@francoisruty Support for tf 1.14 is now fixed; please open another ticket if there are further problems. |
awesome! |
I bumped into the same error when running a project requiring tensorflow-gpu 1.1.0 on an Azure 16.04 LTS Virtual Machine. The CUDA drivers displayed were shown to be N/A in I solved it by running the following command and installing the nvcc toolkit:
Afterwards, in nvidia-smi, the CUDA drivers appeared to be the 10.1 version and my program successfully ran, with no error displayed. |
Hello, this project looks promising, but I can't get the Dockerfile to yield a successful build.
I run this:
sudo docker build --build-arg CUDA_BASE_VERSION=9.0 --build-arg CUDNN_VERSION=7.6.0.64 --build-arg UBUNTU_VERSION=16.04 --build-arg TENSORFLOW_VERSION=1.12.0 -t dirt .
and I get this during the build process:
ImportError: libcuda.so.1: cannot open shared object file: No such file or directory
I think it's due to an incompatibility between tensorflow version and cuda version, but I've tried various tensorflow versions, with the same result.
Could you communicate the arguments that work with you? You wrote down the driver versions and OS version, but not the tensorflow version
thanks!
The text was updated successfully, but these errors were encountered: