udacity / CarND-Term1-Starter-Kit

MIT License
494 stars 602 forks source link

nvidia-docker uses CPU instead of GPU #50

Closed JGuillaumin closed 7 years ago

JGuillaumin commented 7 years ago

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

domluna commented 7 years ago

@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