mirror of
https://github.com/tensorflow/haskell.git
synced 2024-11-30 06:49:44 +01:00
Document use of nvidia docker version 2 (#208)
This commit is contained in:
parent
8a0be8ebb7
commit
c978837cd3
2 changed files with 35 additions and 17 deletions
24
README.md
24
README.md
|
@ -69,6 +69,7 @@ Check your stack version with `stack --version` in a terminal.
|
||||||
As an expedient we use [docker](https://www.docker.com/) for building. Once you have docker
|
As an expedient we use [docker](https://www.docker.com/) for building. Once you have docker
|
||||||
working, the following commands will compile and run the tests.
|
working, the following commands will compile and run the tests.
|
||||||
|
|
||||||
|
```
|
||||||
git clone --recursive https://github.com/tensorflow/haskell.git tensorflow-haskell
|
git clone --recursive https://github.com/tensorflow/haskell.git tensorflow-haskell
|
||||||
cd tensorflow-haskell
|
cd tensorflow-haskell
|
||||||
IMAGE_NAME=tensorflow/haskell:v0
|
IMAGE_NAME=tensorflow/haskell:v0
|
||||||
|
@ -76,24 +77,41 @@ working, the following commands will compile and run the tests.
|
||||||
# TODO: move the setup step to the docker script.
|
# TODO: move the setup step to the docker script.
|
||||||
stack --docker --docker-image=$IMAGE_NAME setup
|
stack --docker --docker-image=$IMAGE_NAME setup
|
||||||
stack --docker --docker-image=$IMAGE_NAME test
|
stack --docker --docker-image=$IMAGE_NAME test
|
||||||
|
```
|
||||||
|
|
||||||
There is also a demo application:
|
There is also a demo application:
|
||||||
|
|
||||||
|
```
|
||||||
cd tensorflow-mnist
|
cd tensorflow-mnist
|
||||||
stack --docker --docker-image=$IMAGE_NAME build --exec Main
|
stack --docker --docker-image=$IMAGE_NAME build --exec Main
|
||||||
|
```
|
||||||
|
|
||||||
### Docker GPU support
|
### Stack + Docker + GPU
|
||||||
|
|
||||||
If you want to use GPU you can do:
|
If you want to use GPU you can do:
|
||||||
|
|
||||||
IMAGE_NAME=tensorflow/haskell:1.3.0-gpu
|
```
|
||||||
|
IMAGE_NAME=tensorflow/haskell:1.9.0-gpu
|
||||||
docker build -t $IMAGE_NAME docker/gpu
|
docker build -t $IMAGE_NAME docker/gpu
|
||||||
|
```
|
||||||
|
|
||||||
We need stack to use nvidia-docker by using a 'docker' wrapper script. This will shadow the normal docker command.
|
### Using nvidia-docker version 2
|
||||||
|
See [Nvidia docker 2 install instructions](https://github.com/nvidia/nvidia-docker/wiki/Installation-(version-2.0))
|
||||||
|
|
||||||
|
```
|
||||||
|
stack --docker --docker-image=$IMAGE_NAME setup
|
||||||
|
stack --docker --docker-run-args "--runtime=nvidia" --docker-image=$IMAGE_NAME test
|
||||||
|
```
|
||||||
|
|
||||||
|
### Using nvidia-docker classic
|
||||||
|
|
||||||
|
Stack needs to use `nvidia-docker` instead of the normal `docker` for GPU support. We must wrap 'docker' with a script. This script will shadow the normal `docker` command.
|
||||||
|
|
||||||
|
```
|
||||||
ln -s `pwd`/tools/nvidia-docker-wrapper.sh <somewhere in your path>/docker
|
ln -s `pwd`/tools/nvidia-docker-wrapper.sh <somewhere in your path>/docker
|
||||||
stack --docker --docker-image=$IMAGE_NAME setup
|
stack --docker --docker-image=$IMAGE_NAME setup
|
||||||
stack --docker --docker-image=$IMAGE_NAME test
|
stack --docker --docker-image=$IMAGE_NAME test
|
||||||
|
```
|
||||||
|
|
||||||
## Build on macOS
|
## Build on macOS
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Prepare the image with:
|
# Prepare the image with:
|
||||||
# docker build -t tensorflow/haskell:1.9.0-gpu docker/gpu
|
# docker build -t tensorflow/haskell:1.9.0-gpu docker/gpu
|
||||||
FROM gcr.io/tensorflow/tensorflow:1.9.0-gpu
|
FROM tensorflow/tensorflow:1.9.0-gpu
|
||||||
LABEL maintainer="TensorFlow authors <tensorflow-haskell@googlegroups.com>"
|
LABEL maintainer="TensorFlow authors <tensorflow-haskell@googlegroups.com>"
|
||||||
|
|
||||||
RUN apt-get update
|
RUN apt-get update
|
||||||
|
|
Loading…
Reference in a new issue