Skip to content

Commit 05cbde6

Browse files
authored
Upgrade to CUDA 11.0 (#985)
http://b/175341540
1 parent 08723a4 commit 05cbde6

File tree

2 files changed

+24
-28
lines changed

2 files changed

+24
-28
lines changed

Dockerfile

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ARG BASE_TAG=m66
22
ARG TENSORFLOW_VERSION=2.4.1
33

4-
FROM gcr.io/kaggle-images/python-tensorflow-whl:${TENSORFLOW_VERSION}-py37 as tensorflow_whl
4+
FROM gcr.io/kaggle-images/python-tensorflow-whl:${TENSORFLOW_VERSION}-py37-2 as tensorflow_whl
55
FROM gcr.io/deeplearning-platform-release/base-cpu:${BASE_TAG}
66

77
ADD clean-layer.sh /tmp/clean-layer.sh
@@ -81,7 +81,7 @@ RUN apt-get install -y libfreetype6-dev && \
8181
pip install wordcloud && \
8282
pip install xgboost && \
8383
# Pinned to match GPU version. Update version together.
84-
pip install lightgbm==3.1.1 && \
84+
pip install lightgbm==3.2.0 && \
8585
pip install pydot && \
8686
pip install keras && \
8787
pip install keras-tuner && \
@@ -406,8 +406,7 @@ RUN pip install flashtext && \
406406
pip install dlib && \
407407
pip install kaggle-environments && \
408408
pip install geopandas && \
409-
# b/175638062 remove pin once we update to cuDNN 8.x
410-
pip install nnabla==1.13.0 && \
409+
pip install nnabla && \
411410
pip install vowpalwabbit && \
412411
# papermill can replace nbconvert for executing notebooks
413412
pip install papermill && \

gpu.Dockerfile

Lines changed: 21 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ARG BASE_TAG=staging
22

3-
FROM nvidia/cuda:10.2-cudnn7-devel-ubuntu18.04 AS nvidia
4-
FROM gcr.io/kaggle-images/python-tensorflow-whl:2.4.1-py37 as tensorflow_whl
3+
FROM nvidia/cuda:11.0-cudnn8-devel-ubuntu18.04 AS nvidia
4+
FROM gcr.io/kaggle-images/python-tensorflow-whl:2.4.1-py37-2 as tensorflow_whl
55
FROM gcr.io/kaggle-images/python:${BASE_TAG}
66

77
ADD clean-layer.sh /tmp/clean-layer.sh
@@ -15,11 +15,9 @@ RUN sed -i 's/deb https:\/\/developer.download.nvidia.com/deb http:\/\/developer
1515

1616
# Ensure the cuda libraries are compatible with the custom Tensorflow wheels.
1717
# TODO(b/120050292): Use templating to keep in sync or COPY installed binaries from it.
18-
ENV CUDA_MAJOR_VERSION=10
19-
ENV CUDA_MINOR_VERSION=2
20-
ENV CUDA_PATCH_VERSION=89
21-
ENV CUDA_VERSION=$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION.$CUDA_PATCH_VERSION
22-
ENV CUDA_PKG_VERSION=$CUDA_MAJOR_VERSION-$CUDA_MINOR_VERSION=$CUDA_VERSION-1
18+
ENV CUDA_MAJOR_VERSION=11
19+
ENV CUDA_MINOR_VERSION=0
20+
ENV CUDA_VERSION=$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION
2321
LABEL com.nvidia.volumes.needed="nvidia_driver"
2422
LABEL com.nvidia.cuda.version="${CUDA_VERSION}"
2523
ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/bin:${PATH}
@@ -34,19 +32,19 @@ ENV NVIDIA_VISIBLE_DEVICES=all
3432
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
3533
ENV NVIDIA_REQUIRE_CUDA="cuda>=$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION"
3634
RUN apt-get update && apt-get install -y --no-install-recommends \
37-
cuda-cupti-$CUDA_PKG_VERSION \
38-
cuda-cudart-$CUDA_PKG_VERSION \
39-
cuda-cudart-dev-$CUDA_PKG_VERSION \
40-
cuda-libraries-$CUDA_PKG_VERSION \
41-
cuda-libraries-dev-$CUDA_PKG_VERSION \
42-
cuda-nvml-dev-$CUDA_PKG_VERSION \
43-
cuda-minimal-build-$CUDA_PKG_VERSION \
44-
cuda-command-line-tools-$CUDA_PKG_VERSION \
45-
libcudnn7=7.6.5.32-1+cuda$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION \
46-
libcudnn7-dev=7.6.5.32-1+cuda$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION \
47-
libnccl2=2.5.6-1+cuda$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION \
48-
libnccl-dev=2.5.6-1+cuda$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION && \
49-
ln -s /usr/local/cuda-$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION /usr/local/cuda && \
35+
cuda-cupti-$CUDA_VERSION \
36+
cuda-cudart-$CUDA_VERSION \
37+
cuda-cudart-dev-$CUDA_VERSION \
38+
cuda-libraries-$CUDA_VERSION \
39+
cuda-libraries-dev-$CUDA_VERSION \
40+
cuda-nvml-dev-$CUDA_VERSION \
41+
cuda-minimal-build-$CUDA_VERSION \
42+
cuda-command-line-tools-$CUDA_VERSION \
43+
libcudnn8=8.0.4.30-1+cuda$CUDA_VERSION \
44+
libcudnn8-dev=8.0.4.30-1+cuda$CUDA_VERSION \
45+
libnccl2=2.7.8-1+cuda$CUDA_VERSION \
46+
libnccl-dev=2.7.8-1+cuda$CUDA_VERSION && \
47+
ln -s /usr/local/cuda-$CUDA_VERSION /usr/local/cuda && \
5048
ln -s /usr/local/cuda/lib64/stubs/libcuda.so /usr/local/cuda/lib64/stubs/libcuda.so.1 && \
5149
/tmp/clean-layer.sh
5250

@@ -69,7 +67,7 @@ RUN pip uninstall -y lightgbm && \
6967
cd /usr/local/src && \
7068
git clone --recursive https://github.com/microsoft/LightGBM && \
7169
cd LightGBM && \
72-
git checkout tags/v3.1.1 && \
70+
git checkout tags/v3.2.0 && \
7371
mkdir build && cd build && \
7472
cmake -DUSE_GPU=1 -DOpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so -DOpenCL_INCLUDE_DIR=/usr/local/cuda/include/ .. && \
7573
make -j$(nproc) && \
@@ -80,7 +78,7 @@ RUN pip uninstall -y lightgbm && \
8078
/tmp/clean-layer.sh
8179

8280
# Install JAX
83-
RUN pip install jax==0.2.6 jaxlib==0.1.57+cuda$CUDA_MAJOR_VERSION$CUDA_MINOR_VERSION -f https://storage.googleapis.com/jax-releases/jax_releases.html && \
81+
RUN pip install jax==0.2.12 jaxlib==0.1.64+cuda$CUDA_MAJOR_VERSION$CUDA_MINOR_VERSION -f https://storage.googleapis.com/jax-releases/jax_releases.html && \
8482
/tmp/clean-layer.sh
8583

8684
# Reinstall packages with a separate version for GPU support.
@@ -102,8 +100,7 @@ RUN pip install /tmp/tfa_gpu/tensorflow*.whl && \
102100
RUN pip install pycuda && \
103101
pip install cupy-cuda$CUDA_MAJOR_VERSION$CUDA_MINOR_VERSION && \
104102
pip install pynvrtc && \
105-
# b/175638062 remove pin once we update to cuDNN 8.x
106-
pip install nnabla-ext-cuda$CUDA_MAJOR_VERSION$CUDA_MINOR_VERSION==1.13.0 && \
103+
pip install nnabla-ext-cuda$CUDA_MAJOR_VERSION$CUDA_MINOR_VERSION && \
107104
/tmp/clean-layer.sh
108105

109106
# Re-add TensorBoard Jupyter extension patch

0 commit comments

Comments
 (0)