Skip to content

Commit 3ab70a7

Browse files
Update CUDA Version to 10.1(Keep it the same with Tensorflow) to fix the build error.
PiperOrigin-RevId: 314206286
1 parent f92bd0d commit 3ab70a7

File tree

2 files changed

+46
-57
lines changed

2 files changed

+46
-57
lines changed

tensorflow_serving/tools/docker/Dockerfile.devel-gpu

+29-32
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
14-
FROM nvidia/cuda:10.0-base-ubuntu16.04 as base_build
14+
FROM nvidia/cuda:10.1-base-ubuntu18.04 as base_build
1515

1616
ARG TF_SERVING_VERSION_GIT_BRANCH=master
1717
ARG TF_SERVING_VERSION_GIT_COMMIT=head
@@ -20,27 +20,30 @@ LABEL [email protected]
2020
LABEL tensorflow_serving_github_branchtag=${TF_SERVING_VERSION_GIT_BRANCH}
2121
LABEL tensorflow_serving_github_commit=${TF_SERVING_VERSION_GIT_COMMIT}
2222

23-
ENV CUDNN_VERSION=7.4.1.5
24-
ENV TF_TENSORRT_VERSION=5.0.2
23+
ENV CUDNN_VERSION=7.6.4.38
24+
ENV TF_TENSORRT_VERSION=6.0.1
25+
ENV CUDA=10.1
2526

2627
RUN apt-get update && apt-get install -y --no-install-recommends \
2728
automake \
2829
build-essential \
2930
ca-certificates \
30-
cuda-command-line-tools-10-0 \
31-
cuda-cublas-dev-10-0 \
32-
cuda-cudart-dev-10-0 \
33-
cuda-cufft-dev-10-0 \
34-
cuda-curand-dev-10-0 \
35-
cuda-cusolver-dev-10-0 \
36-
cuda-cusparse-dev-10-0 \
31+
cuda-command-line-tools-10-1 \
32+
libcublas10=10.2.1.243-1 \
33+
libcublas-dev=10.2.1.243-1 \
34+
cuda-nvrtc-10-1 \
35+
cuda-nvrtc-dev-10-1 \
36+
cuda-cudart-dev-10-1 \
37+
cuda-cufft-dev-10-1 \
38+
cuda-curand-dev-10-1 \
39+
cuda-cusolver-dev-10-1 \
40+
cuda-cusparse-dev-10-1 \
3741
curl \
3842
git \
3943
libfreetype6-dev \
40-
libpng12-dev \
4144
libtool \
42-
libcudnn7=${CUDNN_VERSION}-1+cuda10.0 \
43-
libcudnn7-dev=${CUDNN_VERSION}-1+cuda10.0 \
45+
libcudnn7=${CUDNN_VERSION}-1+cuda${CUDA} \
46+
libcudnn7-dev=${CUDNN_VERSION}-1+cuda${CUDA} \
4447
libcurl3-dev \
4548
libzmq3-dev \
4649
mlocate \
@@ -58,25 +61,20 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
5861
&& \
5962
apt-get clean && \
6063
rm -rf /var/lib/apt/lists/* && \
61-
find /usr/local/cuda-10.0/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
64+
find /usr/local/cuda-10.1/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
6265
rm /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a
6366

64-
# The 'apt-get install' of the nvinfer-runtime-trt-repo-* library adds a new
65-
# list which contains libnvinfer library, so it needs another 'apt-get update'
66-
# to retrieve that list before it can actually install the library.
6767
RUN apt-get update && \
68-
apt-get install --no-install-recommends \
69-
nvinfer-runtime-trt-repo-ubuntu1604-${TF_TENSORRT_VERSION}-ga-cuda10.0 && \
70-
apt-get update && \
71-
apt-get install --no-install-recommends \
72-
libnvinfer5=${TF_TENSORRT_VERSION}-1+cuda10.0 \
73-
libnvinfer-dev=${TF_TENSORRT_VERSION}-1+cuda10.0 && \
74-
apt-get clean && \
75-
rm -rf /var/lib/apt/lists/* && \
76-
rm /usr/lib/x86_64-linux-gnu/libnvinfer_static.a && \
77-
rm /usr/lib/x86_64-linux-gnu/libnvinfer_plugin_static.a && \
78-
rm /usr/lib/x86_64-linux-gnu/libnvcaffe_parser* && \
79-
rm /usr/lib/x86_64-linux-gnu/libnvparsers*
68+
apt-get install -y --no-install-recommends libnvinfer6=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
69+
libnvinfer-dev=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
70+
libnvinfer-plugin-dev=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
71+
libnvinfer-plugin6=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
72+
libnvonnxparsers6=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
73+
libnvparsers6=${TF_TENSORRT_VERSION}-1+cuda${CUDA}\
74+
libnvonnxparsers-dev=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
75+
libnvparsers-dev=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
76+
&& apt-get clean \
77+
&& rm -rf /var/lib/apt/lists/*;
8078

8179
RUN curl -fSsL -O https://bootstrap.pypa.io/get-pip.py && \
8280
python3 get-pip.py && \
@@ -107,12 +105,11 @@ RUN mkdir /bazel && \
107105

108106
# Build TensorFlow with the CUDA configuration
109107
ENV CI_BUILD_PYTHON python
110-
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
108+
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:/usr/include/x86_64-linux-gnu:$LD_LIBRARY_PATH
111109
ENV TF_NEED_CUDA 1
112110
ENV TF_NEED_TENSORRT 1
113111
ENV TENSORRT_INSTALL_PATH=/usr/lib/x86_64-linux-gnu
114-
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.0,3.5,5.2,6.0,6.1,7.0
115-
ENV TF_CUDA_VERSION=10.0
112+
ENV TF_CUDA_VERSION=10.1
116113
ENV TF_CUDNN_VERSION=7
117114

118115
# Fix paths so that CUDNN can be found: https://github.com/tensorflow/tensorflow/issues/8264

tensorflow_serving/tools/docker/Dockerfile.gpu

+17-25
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ ARG TF_SERVING_VERSION=latest
1616
ARG TF_SERVING_BUILD_IMAGE=tensorflow/serving:${TF_SERVING_VERSION}-devel-gpu
1717

1818
FROM ${TF_SERVING_BUILD_IMAGE} as build_image
19-
FROM nvidia/cuda:10.0-base-ubuntu16.04
19+
FROM nvidia/cuda:10.1-base-ubuntu18.04
2020

2121
ARG TF_SERVING_VERSION_GIT_BRANCH=master
2222
ARG TF_SERVING_VERSION_GIT_COMMIT=head
@@ -25,39 +25,31 @@ LABEL maintainer="[email protected]"
2525
LABEL tensorflow_serving_github_branchtag=${TF_SERVING_VERSION_GIT_BRANCH}
2626
LABEL tensorflow_serving_github_commit=${TF_SERVING_VERSION_GIT_COMMIT}
2727

28-
ENV CUDNN_VERSION=7.4.1.5
29-
ENV TF_TENSORRT_VERSION=5.0.2
28+
ENV CUDNN_VERSION=7.6.4.38
29+
ENV TF_TENSORRT_VERSION=6.0.1
30+
ENV CUDA=10.1
3031

3132
RUN apt-get update && apt-get install -y --no-install-recommends \
3233
ca-certificates \
33-
cuda-command-line-tools-10-0 \
34-
cuda-command-line-tools-10-0 \
35-
cuda-cublas-10-0 \
36-
cuda-cufft-10-0 \
37-
cuda-curand-10-0 \
38-
cuda-cusolver-10-0 \
39-
cuda-cusparse-10-0 \
40-
libcudnn7=${CUDNN_VERSION}-1+cuda10.0 \
34+
cuda-command-line-tools-10-1 \
35+
libcublas10=10.2.1.243-1 \
36+
libcublas-dev=10.2.1.243-1 \
37+
cuda-cufft-10-1 \
38+
cuda-curand-10-1 \
39+
cuda-cusolver-10-1 \
40+
cuda-cusparse-10-1 \
41+
libcudnn7=${CUDNN_VERSION}-1+cuda${CUDA} \
4142
libgomp1 \
4243
&& \
4344
apt-get clean && \
4445
rm -rf /var/lib/apt/lists/*
4546

46-
# The 'apt-get install' of nvinfer-runtime-trt-repo-* library adds a new list
47-
# which contains libnvinfer library, so it needs another 'apt-get update' to
48-
# retrieve that list before it can actually install the library.
49-
#
50-
# We don't install libnvinfer-dev since we don't need to build against TensorRT.
47+
# We don't install libnvinfer-dev since we don't need to build against TensorRT
5148
RUN apt-get update && \
52-
apt-get install --no-install-recommends \
53-
nvinfer-runtime-trt-repo-ubuntu1604-${TF_TENSORRT_VERSION}-ga-cuda10.0 && \
54-
apt-get update && \
55-
apt-get install --no-install-recommends \
56-
libnvinfer5=${TF_TENSORRT_VERSION}-1+cuda10.0 && \
57-
apt-get clean && \
58-
rm -rf /var/lib/apt/lists/* && \
59-
rm /usr/lib/x86_64-linux-gnu/libnvcaffe_parser* && \
60-
rm /usr/lib/x86_64-linux-gnu/libnvparsers*
49+
apt-get install -y --no-install-recommends libnvinfer6=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
50+
libnvinfer-plugin6=${TF_TENSORRT_VERSION}-1+cuda${CUDA} \
51+
&& apt-get clean \
52+
&& rm -rf /var/lib/apt/lists/*;
6153

6254
# Install TF Serving GPU pkg
6355
COPY --from=build_image /usr/local/bin/tensorflow_model_server /usr/bin/tensorflow_model_server

0 commit comments

Comments
 (0)