udacity/CarND-Term1-Starter-Kit

nvidia-docker uses CPU instead of GPU

JGuillaumin opened this issue · 1 comments

Hi,

I built an image with Dockerfile.gpu-ubuntu-16.04 and Dockerfile.gpu from this repo.
No problem during building, but it doesn't use the GPU when I launch it with nvidia-docker.

I tried with this Dockerfile: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/docker/Dockerfile.gpu .
Well, it runs on my GPU, but it works with python 2.7.
When I try to mix the two dockerfiles, to create an image that uses Python 3.5, it failed during building.

Someone found or tried some solutions to run an image with Tensorflow & Keras on python3.5 ?

Configuration :
Laptop ASUS R415U
GTX 940MX (drivers : 370.28)
Ubuntu 16.04
kernel : 4.4.0-59-generic
Docker version 1.12.6, build 78d1802

@JGuillaumin It used the GPU on my end. However I encountered an issue where CuDNN wasn't detected so I fixed that. The gpu files were combined and it's now just Dockerfile.gpu.

What commands are you running?

I ran:

docker build -f Dockerfile.gpu -t dom/sk . 

and

nvidia-docker run -it --rm -p 8888:8888 -v `pwd`:/src dom/sk python -c "import tensorflow"

The output from this should be something like

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.so locally