Add support for ppc64le_dockerfiles
Add support for ppc64le dockerfiles with newest assembler changes.
This commit is contained in:
parent
123fd34a11
commit
466711c407
tensorflow/tools/dockerfiles
@ -34,6 +34,7 @@ import errno
|
|||||||
import itertools
|
import itertools
|
||||||
import multiprocessing
|
import multiprocessing
|
||||||
import os
|
import os
|
||||||
|
import platform
|
||||||
import re
|
import re
|
||||||
import shutil
|
import shutil
|
||||||
import sys
|
import sys
|
||||||
@ -552,6 +553,13 @@ def main(argv):
|
|||||||
if not FLAGS.build_images:
|
if not FLAGS.build_images:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
# Only build images for host architecture
|
||||||
|
proc_arch = platform.processor()
|
||||||
|
is_x86 = proc_arch.startswith('x86')
|
||||||
|
if (is_x86 and any([arch in tag for arch in ['ppc64le']]) or
|
||||||
|
not is_x86 and proc_arch not in tag):
|
||||||
|
continue
|
||||||
|
|
||||||
# Generate a temporary Dockerfile to use to build, since docker-py
|
# Generate a temporary Dockerfile to use to build, since docker-py
|
||||||
# needs a filepath relative to the build context (i.e. the current
|
# needs a filepath relative to the build context (i.e. the current
|
||||||
# directory)
|
# directory)
|
||||||
|
@ -30,7 +30,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -46,9 +45,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
|
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
|
|
||||||
# Check out TensorFlow source code if --build_arg CHECKOUT_TENSORFLOW=1
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
ARG USE_PYTHON_3_NOT_2
|
ARG USE_PYTHON_3_NOT_2
|
||||||
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
@ -30,7 +30,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -46,9 +45,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
|
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
|
|
||||||
# Check out TensorFlow source code if --build_arg CHECKOUT_TENSORFLOW=1
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
ARG USE_PYTHON_3_NOT_2
|
ARG USE_PYTHON_3_NOT_2
|
||||||
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
@ -21,23 +21,28 @@
|
|||||||
|
|
||||||
ARG UBUNTU_VERSION=16.04
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
ARG LIB_DIR_PREFIX=x84_64
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-dev-10-0 \
|
cuda-cublas-dev-${CUDA/./-} \
|
||||||
cuda-cudart-dev-10-0 \
|
cuda-cudart-dev-${CUDA/./-} \
|
||||||
cuda-cufft-dev-10-0 \
|
cuda-cufft-dev-${CUDA/./-} \
|
||||||
cuda-curand-dev-10-0 \
|
cuda-curand-dev-${CUDA/./-} \
|
||||||
cuda-cusolver-dev-10-0 \
|
cuda-cusolver-dev-${CUDA/./-} \
|
||||||
cuda-cusparse-dev-10-0 \
|
cuda-cusparse-dev-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libcudnn7-dev=7.4.1.5-1+cuda10.0 \
|
libcudnn7-dev=${CUDNN}+cuda${CUDA} \
|
||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -48,14 +53,15 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
wget \
|
wget \
|
||||||
git \
|
git \
|
||||||
&& \
|
&& \
|
||||||
find /usr/local/cuda-10.0/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
||||||
rm /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a
|
rm /usr/lib/${LIB_DIR_PREFIX}-linux-gnu/libcudnn_static_v7.a
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer-dev=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# Configure the build for our CUDA configuration.
|
# Configure the build for our CUDA configuration.
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
@ -63,12 +69,13 @@ ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
|||||||
ENV TF_NEED_CUDA 1
|
ENV TF_NEED_CUDA 1
|
||||||
ENV TF_NEED_TENSORRT 1
|
ENV TF_NEED_TENSORRT 1
|
||||||
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
||||||
ENV TF_CUDA_VERSION=10.0
|
ENV TF_CUDA_VERSION=${CUDA}
|
||||||
ENV TF_CUDNN_VERSION=7
|
ENV TF_CUDNN_VERSION=${CUDNN%%.*}
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
# Check out TensorFlow source code if --build_arg CHECKOUT_TENSORFLOW=1
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
ARG USE_PYTHON_3_NOT_2
|
ARG USE_PYTHON_3_NOT_2
|
||||||
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
@ -21,23 +21,28 @@
|
|||||||
|
|
||||||
ARG UBUNTU_VERSION=16.04
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
ARG LIB_DIR_PREFIX=x84_64
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-dev-10-0 \
|
cuda-cublas-dev-${CUDA/./-} \
|
||||||
cuda-cudart-dev-10-0 \
|
cuda-cudart-dev-${CUDA/./-} \
|
||||||
cuda-cufft-dev-10-0 \
|
cuda-cufft-dev-${CUDA/./-} \
|
||||||
cuda-curand-dev-10-0 \
|
cuda-curand-dev-${CUDA/./-} \
|
||||||
cuda-cusolver-dev-10-0 \
|
cuda-cusolver-dev-${CUDA/./-} \
|
||||||
cuda-cusparse-dev-10-0 \
|
cuda-cusparse-dev-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libcudnn7-dev=7.4.1.5-1+cuda10.0 \
|
libcudnn7-dev=${CUDNN}+cuda${CUDA} \
|
||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -48,14 +53,15 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
wget \
|
wget \
|
||||||
git \
|
git \
|
||||||
&& \
|
&& \
|
||||||
find /usr/local/cuda-10.0/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
||||||
rm /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a
|
rm /usr/lib/${LIB_DIR_PREFIX}-linux-gnu/libcudnn_static_v7.a
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer-dev=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# Configure the build for our CUDA configuration.
|
# Configure the build for our CUDA configuration.
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
@ -63,12 +69,13 @@ ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
|||||||
ENV TF_NEED_CUDA 1
|
ENV TF_NEED_CUDA 1
|
||||||
ENV TF_NEED_TENSORRT 1
|
ENV TF_NEED_TENSORRT 1
|
||||||
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
||||||
ENV TF_CUDA_VERSION=10.0
|
ENV TF_CUDA_VERSION=${CUDA}
|
||||||
ENV TF_CUDNN_VERSION=7
|
ENV TF_CUDNN_VERSION=${CUDNN%%.*}
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
# Check out TensorFlow source code if --build_arg CHECKOUT_TENSORFLOW=1
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
ARG USE_PYTHON_3_NOT_2
|
ARG USE_PYTHON_3_NOT_2
|
||||||
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
@ -21,32 +21,37 @@
|
|||||||
|
|
||||||
ARG UBUNTU_VERSION=16.04
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
# Pick up some TF dependencies
|
# Pick up some TF dependencies
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-10-0 \
|
cuda-cublas-${CUDA/./-} \
|
||||||
cuda-cufft-10-0 \
|
cuda-cufft-${CUDA/./-} \
|
||||||
cuda-curand-10-0 \
|
cuda-curand-${CUDA/./-} \
|
||||||
cuda-cusolver-10-0 \
|
cuda-cusolver-${CUDA/./-} \
|
||||||
cuda-cusparse-10-0 \
|
cuda-cusparse-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
curl \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
software-properties-common \
|
software-properties-common \
|
||||||
unzip
|
unzip
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# For CUDA profiling, TensorFlow requires CUPTI.
|
# For CUDA profiling, TensorFlow requires CUPTI.
|
||||||
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
@ -21,32 +21,37 @@
|
|||||||
|
|
||||||
ARG UBUNTU_VERSION=16.04
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
# Pick up some TF dependencies
|
# Pick up some TF dependencies
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-10-0 \
|
cuda-cublas-${CUDA/./-} \
|
||||||
cuda-cufft-10-0 \
|
cuda-cufft-${CUDA/./-} \
|
||||||
cuda-curand-10-0 \
|
cuda-curand-${CUDA/./-} \
|
||||||
cuda-cusolver-10-0 \
|
cuda-cusolver-${CUDA/./-} \
|
||||||
cuda-cusparse-10-0 \
|
cuda-cusparse-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
curl \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
software-properties-common \
|
software-properties-common \
|
||||||
unzip
|
unzip
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# For CUDA profiling, TensorFlow requires CUPTI.
|
# For CUDA profiling, TensorFlow requires CUPTI.
|
||||||
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
@ -0,0 +1,92 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
FROM ubuntu:${UBUNTU_VERSION} as base
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
# Options:
|
||||||
|
# tensorflow
|
||||||
|
# tensorflow-gpu
|
||||||
|
# tf-nightly
|
||||||
|
# tf-nightly-gpu
|
||||||
|
ARG TF_PACKAGE=tensorflow
|
||||||
|
RUN apt-get update && apt-get install -y wget libhdf5-dev
|
||||||
|
RUN ${PIP} install --global-option=build_ext \
|
||||||
|
--global-option=-I/usr/include/hdf5/serial/ \
|
||||||
|
--global-option=-L/usr/lib/powerpc64le-linux-gnu/hdf5/serial \
|
||||||
|
h5py
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise downloading the .whl will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
RUN if [ ${TF_PACKAGE} = tensorflow-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tensorflow ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
fi; \
|
||||||
|
MAJOR=`${PYTHON} -c 'import sys; print(sys.version_info[0])'`; \
|
||||||
|
MINOR=`${PYTHON} -c 'import sys; print(sys.version_info[1])'`; \
|
||||||
|
PACKAGE=$(wget -qO- ${BASE}"api/xml?xpath=//fileName&wrapper=artifacts" | grep -o "[^<>]*cp${MAJOR}${MINOR}[^<>]*.whl"); \
|
||||||
|
wget ${BASE}"artifact/tensorflow_pkg/"${PACKAGE}; \
|
||||||
|
${PIP} install ${PACKAGE}
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
||||||
|
|
||||||
|
RUN ${PIP} install jupyter matplotlib
|
||||||
|
|
||||||
|
RUN mkdir -p /tf/tensorflow-tutorials && chmod -R a+rwx /tf/
|
||||||
|
RUN mkdir /.local && chmod a+rwx /.local
|
||||||
|
RUN apt-get install -y --no-install-recommends wget
|
||||||
|
WORKDIR /tf/tensorflow-tutorials
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_classification.ipynb
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_text_classification.ipynb
|
||||||
|
COPY readme-for-jupyter.md README.md
|
||||||
|
RUN apt-get autoremove -y && apt-get remove -y wget
|
||||||
|
WORKDIR /tf
|
||||||
|
EXPOSE 8888
|
||||||
|
|
||||||
|
RUN ${PYTHON} -m ipykernel.kernelspec
|
||||||
|
|
||||||
|
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root"]
|
@ -0,0 +1,75 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
FROM ubuntu:${UBUNTU_VERSION} as base
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
# Options:
|
||||||
|
# tensorflow
|
||||||
|
# tensorflow-gpu
|
||||||
|
# tf-nightly
|
||||||
|
# tf-nightly-gpu
|
||||||
|
ARG TF_PACKAGE=tensorflow
|
||||||
|
RUN apt-get update && apt-get install -y wget libhdf5-dev
|
||||||
|
RUN ${PIP} install --global-option=build_ext \
|
||||||
|
--global-option=-I/usr/include/hdf5/serial/ \
|
||||||
|
--global-option=-L/usr/lib/powerpc64le-linux-gnu/hdf5/serial \
|
||||||
|
h5py
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise downloading the .whl will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
RUN if [ ${TF_PACKAGE} = tensorflow-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tensorflow ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
fi; \
|
||||||
|
MAJOR=`${PYTHON} -c 'import sys; print(sys.version_info[0])'`; \
|
||||||
|
MINOR=`${PYTHON} -c 'import sys; print(sys.version_info[1])'`; \
|
||||||
|
PACKAGE=$(wget -qO- ${BASE}"api/xml?xpath=//fileName&wrapper=artifacts" | grep -o "[^<>]*cp${MAJOR}${MINOR}[^<>]*.whl"); \
|
||||||
|
wget ${BASE}"artifact/tensorflow_pkg/"${PACKAGE}; \
|
||||||
|
${PIP} install ${PACKAGE}
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
@ -0,0 +1,125 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
FROM ubuntu:${UBUNTU_VERSION} AS base
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
libcurl3-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
rsync \
|
||||||
|
software-properties-common \
|
||||||
|
unzip \
|
||||||
|
zip \
|
||||||
|
zlib1g-dev \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
openjdk-8-jre-headless \
|
||||||
|
&& \
|
||||||
|
apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
ENV CI_BUILD_PYTHON python
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
|
ARG CHECKOUT_TF_SRC=0
|
||||||
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
${PYTHON}-dev \
|
||||||
|
swig
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install \
|
||||||
|
Pillow \
|
||||||
|
h5py \
|
||||||
|
keras_applications \
|
||||||
|
keras_preprocessing \
|
||||||
|
matplotlib \
|
||||||
|
mock \
|
||||||
|
numpy \
|
||||||
|
scipy \
|
||||||
|
sklearn \
|
||||||
|
pandas \
|
||||||
|
&& test "${USE_PYTHON_3_NOT_2}" -eq 1 && true || ${PIP} --no-cache-dir install \
|
||||||
|
enum34
|
||||||
|
|
||||||
|
# Build and install bazel
|
||||||
|
ENV BAZEL_VERSION 0.15.0
|
||||||
|
WORKDIR /
|
||||||
|
RUN mkdir /bazel && \
|
||||||
|
cd /bazel && \
|
||||||
|
curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
unzip bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
bash ./compile.sh && \
|
||||||
|
cp output/bazel /usr/local/bin/ && \
|
||||||
|
rm -rf /bazel && \
|
||||||
|
cd -
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
||||||
|
|
||||||
|
RUN ${PIP} install jupyter matplotlib
|
||||||
|
|
||||||
|
RUN mkdir -p /tf/tensorflow-tutorials && chmod -R a+rwx /tf/
|
||||||
|
RUN mkdir /.local && chmod a+rwx /.local
|
||||||
|
RUN apt-get install -y --no-install-recommends wget
|
||||||
|
WORKDIR /tf/tensorflow-tutorials
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_classification.ipynb
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_text_classification.ipynb
|
||||||
|
COPY readme-for-jupyter.md README.md
|
||||||
|
RUN apt-get autoremove -y && apt-get remove -y wget
|
||||||
|
WORKDIR /tf
|
||||||
|
EXPOSE 8888
|
||||||
|
|
||||||
|
RUN ${PYTHON} -m ipykernel.kernelspec
|
||||||
|
|
||||||
|
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root"]
|
@ -0,0 +1,108 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
FROM ubuntu:${UBUNTU_VERSION} AS base
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
libcurl3-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
rsync \
|
||||||
|
software-properties-common \
|
||||||
|
unzip \
|
||||||
|
zip \
|
||||||
|
zlib1g-dev \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
openjdk-8-jre-headless \
|
||||||
|
&& \
|
||||||
|
apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
ENV CI_BUILD_PYTHON python
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
|
ARG CHECKOUT_TF_SRC=0
|
||||||
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
${PYTHON}-dev \
|
||||||
|
swig
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install \
|
||||||
|
Pillow \
|
||||||
|
h5py \
|
||||||
|
keras_applications \
|
||||||
|
keras_preprocessing \
|
||||||
|
matplotlib \
|
||||||
|
mock \
|
||||||
|
numpy \
|
||||||
|
scipy \
|
||||||
|
sklearn \
|
||||||
|
pandas \
|
||||||
|
&& test "${USE_PYTHON_3_NOT_2}" -eq 1 && true || ${PIP} --no-cache-dir install \
|
||||||
|
enum34
|
||||||
|
|
||||||
|
# Build and install bazel
|
||||||
|
ENV BAZEL_VERSION 0.15.0
|
||||||
|
WORKDIR /
|
||||||
|
RUN mkdir /bazel && \
|
||||||
|
cd /bazel && \
|
||||||
|
curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
unzip bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
bash ./compile.sh && \
|
||||||
|
cp output/bazel /usr/local/bin/ && \
|
||||||
|
rm -rf /bazel && \
|
||||||
|
cd -
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
@ -0,0 +1,151 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
ARG LIB_DIR_PREFIX=x84_64
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
|
cuda-cublas-dev-${CUDA/./-} \
|
||||||
|
cuda-cudart-dev-${CUDA/./-} \
|
||||||
|
cuda-cufft-dev-${CUDA/./-} \
|
||||||
|
cuda-curand-dev-${CUDA/./-} \
|
||||||
|
cuda-cusolver-dev-${CUDA/./-} \
|
||||||
|
cuda-cusparse-dev-${CUDA/./-} \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
|
libcudnn7-dev=${CUDNN}+cuda${CUDA} \
|
||||||
|
libcurl3-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
rsync \
|
||||||
|
software-properties-common \
|
||||||
|
unzip \
|
||||||
|
zip \
|
||||||
|
zlib1g-dev \
|
||||||
|
wget \
|
||||||
|
git \
|
||||||
|
&& \
|
||||||
|
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
||||||
|
rm /usr/lib/${LIB_DIR_PREFIX}-linux-gnu/libcudnn_static_v7.a
|
||||||
|
|
||||||
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
|
&& apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
|
# Configure the build for our CUDA configuration.
|
||||||
|
ENV CI_BUILD_PYTHON python
|
||||||
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
ENV TF_NEED_CUDA 1
|
||||||
|
ENV TF_NEED_TENSORRT 1
|
||||||
|
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
||||||
|
ENV TF_CUDA_VERSION=${CUDA}
|
||||||
|
ENV TF_CUDNN_VERSION=${CUDNN%%.*}
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
|
ARG CHECKOUT_TF_SRC=0
|
||||||
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
${PYTHON}-dev \
|
||||||
|
swig
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install \
|
||||||
|
Pillow \
|
||||||
|
h5py \
|
||||||
|
keras_applications \
|
||||||
|
keras_preprocessing \
|
||||||
|
matplotlib \
|
||||||
|
mock \
|
||||||
|
numpy \
|
||||||
|
scipy \
|
||||||
|
sklearn \
|
||||||
|
pandas \
|
||||||
|
&& test "${USE_PYTHON_3_NOT_2}" -eq 1 && true || ${PIP} --no-cache-dir install \
|
||||||
|
enum34
|
||||||
|
|
||||||
|
# Build and install bazel
|
||||||
|
ENV BAZEL_VERSION 0.15.0
|
||||||
|
WORKDIR /
|
||||||
|
RUN mkdir /bazel && \
|
||||||
|
cd /bazel && \
|
||||||
|
curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
unzip bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
bash ./compile.sh && \
|
||||||
|
cp output/bazel /usr/local/bin/ && \
|
||||||
|
rm -rf /bazel && \
|
||||||
|
cd -
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
||||||
|
|
||||||
|
RUN ${PIP} install jupyter matplotlib
|
||||||
|
|
||||||
|
RUN mkdir -p /tf/tensorflow-tutorials && chmod -R a+rwx /tf/
|
||||||
|
RUN mkdir /.local && chmod a+rwx /.local
|
||||||
|
RUN apt-get install -y --no-install-recommends wget
|
||||||
|
WORKDIR /tf/tensorflow-tutorials
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_classification.ipynb
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_text_classification.ipynb
|
||||||
|
COPY readme-for-jupyter.md README.md
|
||||||
|
RUN apt-get autoremove -y && apt-get remove -y wget
|
||||||
|
WORKDIR /tf
|
||||||
|
EXPOSE 8888
|
||||||
|
|
||||||
|
RUN ${PYTHON} -m ipykernel.kernelspec
|
||||||
|
|
||||||
|
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root"]
|
@ -0,0 +1,134 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
ARG LIB_DIR_PREFIX=x84_64
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
|
cuda-cublas-dev-${CUDA/./-} \
|
||||||
|
cuda-cudart-dev-${CUDA/./-} \
|
||||||
|
cuda-cufft-dev-${CUDA/./-} \
|
||||||
|
cuda-curand-dev-${CUDA/./-} \
|
||||||
|
cuda-cusolver-dev-${CUDA/./-} \
|
||||||
|
cuda-cusparse-dev-${CUDA/./-} \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
|
libcudnn7-dev=${CUDNN}+cuda${CUDA} \
|
||||||
|
libcurl3-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
rsync \
|
||||||
|
software-properties-common \
|
||||||
|
unzip \
|
||||||
|
zip \
|
||||||
|
zlib1g-dev \
|
||||||
|
wget \
|
||||||
|
git \
|
||||||
|
&& \
|
||||||
|
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
||||||
|
rm /usr/lib/${LIB_DIR_PREFIX}-linux-gnu/libcudnn_static_v7.a
|
||||||
|
|
||||||
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
|
&& apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
|
# Configure the build for our CUDA configuration.
|
||||||
|
ENV CI_BUILD_PYTHON python
|
||||||
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
ENV TF_NEED_CUDA 1
|
||||||
|
ENV TF_NEED_TENSORRT 1
|
||||||
|
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
||||||
|
ENV TF_CUDA_VERSION=${CUDA}
|
||||||
|
ENV TF_CUDNN_VERSION=${CUDNN%%.*}
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
|
ARG CHECKOUT_TF_SRC=0
|
||||||
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
${PYTHON}-dev \
|
||||||
|
swig
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install \
|
||||||
|
Pillow \
|
||||||
|
h5py \
|
||||||
|
keras_applications \
|
||||||
|
keras_preprocessing \
|
||||||
|
matplotlib \
|
||||||
|
mock \
|
||||||
|
numpy \
|
||||||
|
scipy \
|
||||||
|
sklearn \
|
||||||
|
pandas \
|
||||||
|
&& test "${USE_PYTHON_3_NOT_2}" -eq 1 && true || ${PIP} --no-cache-dir install \
|
||||||
|
enum34
|
||||||
|
|
||||||
|
# Build and install bazel
|
||||||
|
ENV BAZEL_VERSION 0.15.0
|
||||||
|
WORKDIR /
|
||||||
|
RUN mkdir /bazel && \
|
||||||
|
cd /bazel && \
|
||||||
|
curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
unzip bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
bash ./compile.sh && \
|
||||||
|
cp output/bazel /usr/local/bin/ && \
|
||||||
|
rm -rf /bazel && \
|
||||||
|
cd -
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
@ -0,0 +1,125 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
|
# Pick up some TF dependencies
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
|
cuda-cublas-${CUDA/./-} \
|
||||||
|
cuda-cufft-${CUDA/./-} \
|
||||||
|
cuda-curand-${CUDA/./-} \
|
||||||
|
cuda-cusolver-${CUDA/./-} \
|
||||||
|
cuda-cusparse-${CUDA/./-} \
|
||||||
|
curl \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
software-properties-common \
|
||||||
|
unzip
|
||||||
|
|
||||||
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
|
&& apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
|
# For CUDA profiling, TensorFlow requires CUPTI.
|
||||||
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
# Options:
|
||||||
|
# tensorflow
|
||||||
|
# tensorflow-gpu
|
||||||
|
# tf-nightly
|
||||||
|
# tf-nightly-gpu
|
||||||
|
ARG TF_PACKAGE=tensorflow
|
||||||
|
RUN apt-get update && apt-get install -y wget libhdf5-dev
|
||||||
|
RUN ${PIP} install --global-option=build_ext \
|
||||||
|
--global-option=-I/usr/include/hdf5/serial/ \
|
||||||
|
--global-option=-L/usr/lib/powerpc64le-linux-gnu/hdf5/serial \
|
||||||
|
h5py
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise downloading the .whl will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
RUN if [ ${TF_PACKAGE} = tensorflow-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tensorflow ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
fi; \
|
||||||
|
MAJOR=`${PYTHON} -c 'import sys; print(sys.version_info[0])'`; \
|
||||||
|
MINOR=`${PYTHON} -c 'import sys; print(sys.version_info[1])'`; \
|
||||||
|
PACKAGE=$(wget -qO- ${BASE}"api/xml?xpath=//fileName&wrapper=artifacts" | grep -o "[^<>]*cp${MAJOR}${MINOR}[^<>]*.whl"); \
|
||||||
|
wget ${BASE}"artifact/tensorflow_pkg/"${PACKAGE}; \
|
||||||
|
${PIP} install ${PACKAGE}
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
||||||
|
|
||||||
|
RUN ${PIP} install jupyter matplotlib
|
||||||
|
|
||||||
|
RUN mkdir -p /tf/tensorflow-tutorials && chmod -R a+rwx /tf/
|
||||||
|
RUN mkdir /.local && chmod a+rwx /.local
|
||||||
|
RUN apt-get install -y --no-install-recommends wget
|
||||||
|
WORKDIR /tf/tensorflow-tutorials
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_classification.ipynb
|
||||||
|
RUN wget https://raw.githubusercontent.com/tensorflow/docs/master/site/en/tutorials/keras/basic_text_classification.ipynb
|
||||||
|
COPY readme-for-jupyter.md README.md
|
||||||
|
RUN apt-get autoremove -y && apt-get remove -y wget
|
||||||
|
WORKDIR /tf
|
||||||
|
EXPOSE 8888
|
||||||
|
|
||||||
|
RUN ${PYTHON} -m ipykernel.kernelspec
|
||||||
|
|
||||||
|
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root"]
|
@ -0,0 +1,108 @@
|
|||||||
|
# Copyright 2018 The TensorFlow Authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# THIS IS A GENERATED DOCKERFILE.
|
||||||
|
#
|
||||||
|
# This file was assembled from multiple pieces, whose use is documented
|
||||||
|
# throughout. Please refer to the TensorFlow dockerfiles documentation
|
||||||
|
# for more information.
|
||||||
|
|
||||||
|
ARG UBUNTU_VERSION=16.04
|
||||||
|
|
||||||
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
|
# Pick up some TF dependencies
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
|
cuda-cublas-${CUDA/./-} \
|
||||||
|
cuda-cufft-${CUDA/./-} \
|
||||||
|
cuda-curand-${CUDA/./-} \
|
||||||
|
cuda-cusolver-${CUDA/./-} \
|
||||||
|
cuda-cusparse-${CUDA/./-} \
|
||||||
|
curl \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libhdf5-serial-dev \
|
||||||
|
libzmq3-dev \
|
||||||
|
pkg-config \
|
||||||
|
software-properties-common \
|
||||||
|
unzip
|
||||||
|
|
||||||
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
|
&& apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
|
# For CUDA profiling, TensorFlow requires CUPTI.
|
||||||
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
ARG USE_PYTHON_3_NOT_2
|
||||||
|
ARG _PY_SUFFIX=${USE_PYTHON_3_NOT_2:+3}
|
||||||
|
ARG PYTHON=python${_PY_SUFFIX}
|
||||||
|
ARG PIP=pip${_PY_SUFFIX}
|
||||||
|
|
||||||
|
# See http://bugs.python.org/issue19846
|
||||||
|
ENV LANG C.UTF-8
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
${PYTHON} \
|
||||||
|
${PYTHON}-pip
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install --upgrade \
|
||||||
|
pip \
|
||||||
|
setuptools
|
||||||
|
|
||||||
|
# Some TF tools expect a "python" binary
|
||||||
|
RUN ln -s $(which ${PYTHON}) /usr/local/bin/python
|
||||||
|
|
||||||
|
# Options:
|
||||||
|
# tensorflow
|
||||||
|
# tensorflow-gpu
|
||||||
|
# tf-nightly
|
||||||
|
# tf-nightly-gpu
|
||||||
|
ARG TF_PACKAGE=tensorflow
|
||||||
|
RUN apt-get update && apt-get install -y wget libhdf5-dev
|
||||||
|
RUN ${PIP} install --global-option=build_ext \
|
||||||
|
--global-option=-I/usr/include/hdf5/serial/ \
|
||||||
|
--global-option=-L/usr/lib/powerpc64le-linux-gnu/hdf5/serial \
|
||||||
|
h5py
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise downloading the .whl will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
RUN if [ ${TF_PACKAGE} = tensorflow-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tensorflow ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
fi; \
|
||||||
|
MAJOR=`${PYTHON} -c 'import sys; print(sys.version_info[0])'`; \
|
||||||
|
MINOR=`${PYTHON} -c 'import sys; print(sys.version_info[1])'`; \
|
||||||
|
PACKAGE=$(wget -qO- ${BASE}"api/xml?xpath=//fileName&wrapper=artifacts" | grep -o "[^<>]*cp${MAJOR}${MINOR}[^<>]*.whl"); \
|
||||||
|
wget ${BASE}"artifact/tensorflow_pkg/"${PACKAGE}; \
|
||||||
|
${PIP} install ${PACKAGE}
|
||||||
|
|
||||||
|
COPY bashrc /etc/bash.bashrc
|
||||||
|
RUN chmod a+rwx /etc/bash.bashrc
|
@ -0,0 +1,28 @@
|
|||||||
|
# Options:
|
||||||
|
# tensorflow
|
||||||
|
# tensorflow-gpu
|
||||||
|
# tf-nightly
|
||||||
|
# tf-nightly-gpu
|
||||||
|
ARG TF_PACKAGE=tensorflow
|
||||||
|
RUN apt-get update && apt-get install -y wget libhdf5-dev
|
||||||
|
RUN ${PIP} install --global-option=build_ext \
|
||||||
|
--global-option=-I/usr/include/hdf5/serial/ \
|
||||||
|
--global-option=-L/usr/lib/powerpc64le-linux-gnu/hdf5/serial \
|
||||||
|
h5py
|
||||||
|
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise downloading the .whl will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
RUN if [ ${TF_PACKAGE} = tensorflow-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly-gpu ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_GPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tensorflow ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Release_Build/lastSuccessfulBuild/; \
|
||||||
|
elif [ ${TF_PACKAGE} = tf-nightly ]; then \
|
||||||
|
BASE=https://powerci.osuosl.org/job/TensorFlow_PPC64LE_CPU_Nightly_Artifact/lastSuccessfulBuild/; \
|
||||||
|
fi; \
|
||||||
|
MAJOR=`${PYTHON} -c 'import sys; print(sys.version_info[0])'`; \
|
||||||
|
MINOR=`${PYTHON} -c 'import sys; print(sys.version_info[1])'`; \
|
||||||
|
PACKAGE=$(wget -qO- ${BASE}"api/xml?xpath=//fileName&wrapper=artifacts" | grep -o "[^<>]*cp${MAJOR}${MINOR}[^<>]*.whl"); \
|
||||||
|
wget ${BASE}"artifact/tensorflow_pkg/"${PACKAGE}; \
|
||||||
|
${PIP} install ${PACKAGE}
|
@ -0,0 +1,33 @@
|
|||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
openjdk-8-jdk \
|
||||||
|
${PYTHON}-dev \
|
||||||
|
swig
|
||||||
|
|
||||||
|
RUN ${PIP} --no-cache-dir install \
|
||||||
|
Pillow \
|
||||||
|
h5py \
|
||||||
|
keras_applications \
|
||||||
|
keras_preprocessing \
|
||||||
|
matplotlib \
|
||||||
|
mock \
|
||||||
|
numpy \
|
||||||
|
scipy \
|
||||||
|
sklearn \
|
||||||
|
pandas \
|
||||||
|
&& test "${USE_PYTHON_3_NOT_2}" -eq 1 && true || ${PIP} --no-cache-dir install \
|
||||||
|
enum34
|
||||||
|
|
||||||
|
# Build and install bazel
|
||||||
|
ENV BAZEL_VERSION 0.15.0
|
||||||
|
WORKDIR /
|
||||||
|
RUN mkdir /bazel && \
|
||||||
|
cd /bazel && \
|
||||||
|
curl -fSsL -O https://github.com/bazelbuild/bazel/releases/download/$BAZEL_VERSION/bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
unzip bazel-$BAZEL_VERSION-dist.zip && \
|
||||||
|
bash ./compile.sh && \
|
||||||
|
cp output/bazel /usr/local/bin/ && \
|
||||||
|
rm -rf /bazel && \
|
||||||
|
cd -
|
@ -7,7 +7,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -23,6 +22,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
|
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
|
|
||||||
# Check out TensorFlow source code if --build-arg CHECKOUT_TF_SRC=1
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
@ -1,20 +1,25 @@
|
|||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
ARG LIB_DIR_PREFIX=x84_64
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-dev-10-0 \
|
cuda-cublas-dev-${CUDA/./-} \
|
||||||
cuda-cudart-dev-10-0 \
|
cuda-cudart-dev-${CUDA/./-} \
|
||||||
cuda-cufft-dev-10-0 \
|
cuda-cufft-dev-${CUDA/./-} \
|
||||||
cuda-curand-dev-10-0 \
|
cuda-curand-dev-${CUDA/./-} \
|
||||||
cuda-cusolver-dev-10-0 \
|
cuda-cusolver-dev-${CUDA/./-} \
|
||||||
cuda-cusparse-dev-10-0 \
|
cuda-cusparse-dev-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libcudnn7-dev=7.4.1.5-1+cuda10.0 \
|
libcudnn7-dev=${CUDNN}+cuda${CUDA} \
|
||||||
libcurl3-dev \
|
libcurl3-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
rsync \
|
rsync \
|
||||||
@ -25,14 +30,15 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
wget \
|
wget \
|
||||||
git \
|
git \
|
||||||
&& \
|
&& \
|
||||||
find /usr/local/cuda-10.0/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete && \
|
||||||
rm /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a
|
rm /usr/lib/${LIB_DIR_PREFIX}-linux-gnu/libcudnn_static_v7.a
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer-dev=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# Configure the build for our CUDA configuration.
|
# Configure the build for our CUDA configuration.
|
||||||
ENV CI_BUILD_PYTHON python
|
ENV CI_BUILD_PYTHON python
|
||||||
@ -40,9 +46,10 @@ ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
|||||||
ENV TF_NEED_CUDA 1
|
ENV TF_NEED_CUDA 1
|
||||||
ENV TF_NEED_TENSORRT 1
|
ENV TF_NEED_TENSORRT 1
|
||||||
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
ENV TF_CUDA_COMPUTE_CAPABILITIES=3.5,5.2,6.0,6.1,7.0
|
||||||
ENV TF_CUDA_VERSION=10.0
|
ENV TF_CUDA_VERSION=${CUDA}
|
||||||
ENV TF_CUDNN_VERSION=7
|
ENV TF_CUDNN_VERSION=${CUDNN%%.*}
|
||||||
|
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version
|
||||||
# Check out TensorFlow source code if --build_arg CHECKOUT_TENSORFLOW=1
|
ARG CACHE_STOP=1
|
||||||
|
# Check out TensorFlow source code if --build_arg CHECKOUT_TF_SRC=1
|
||||||
ARG CHECKOUT_TF_SRC=0
|
ARG CHECKOUT_TF_SRC=0
|
||||||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src
|
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone https://github.com/tensorflow/tensorflow.git /tensorflow_src || true
|
||||||
|
@ -1,29 +1,34 @@
|
|||||||
FROM nvidia/cuda:10.0-base-ubuntu${UBUNTU_VERSION} as base
|
ARG ARCH=
|
||||||
|
ARG CUDA=10.0
|
||||||
|
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}-base-ubuntu${UBUNTU_VERSION} as base
|
||||||
|
ARG CUDNN=7.4.1.5-1
|
||||||
|
|
||||||
|
# Needed for string substitution
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
# Pick up some TF dependencies
|
# Pick up some TF dependencies
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
build-essential \
|
||||||
cuda-command-line-tools-10-0 \
|
cuda-command-line-tools-${CUDA/./-} \
|
||||||
cuda-cublas-10-0 \
|
cuda-cublas-${CUDA/./-} \
|
||||||
cuda-cufft-10-0 \
|
cuda-cufft-${CUDA/./-} \
|
||||||
cuda-curand-10-0 \
|
cuda-curand-${CUDA/./-} \
|
||||||
cuda-cusolver-10-0 \
|
cuda-cusolver-${CUDA/./-} \
|
||||||
cuda-cusparse-10-0 \
|
cuda-cusparse-${CUDA/./-} \
|
||||||
libcudnn7=7.4.1.5-1+cuda10.0 \
|
curl \
|
||||||
|
libcudnn7=${CUDNN}+cuda${CUDA} \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libhdf5-serial-dev \
|
libhdf5-serial-dev \
|
||||||
libpng12-dev \
|
|
||||||
libzmq3-dev \
|
libzmq3-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
software-properties-common \
|
software-properties-common \
|
||||||
unzip
|
unzip
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN [ ${ARCH} = ppc64le ] || (apt-get update && \
|
||||||
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda10.0 \
|
apt-get install nvinfer-runtime-trt-repo-ubuntu1604-5.0.2-ga-cuda${CUDA} \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda10.0 \
|
&& apt-get install -y --no-install-recommends libnvinfer5=5.0.2-1+cuda${CUDA} \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*)
|
||||||
|
|
||||||
# For CUDA profiling, TensorFlow requires CUPTI.
|
# For CUDA profiling, TensorFlow requires CUPTI.
|
||||||
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
|
||||||
|
@ -56,6 +56,13 @@ releases:
|
|||||||
- "{ubuntu}{jupyter}"
|
- "{ubuntu}{jupyter}"
|
||||||
- "{ubuntu-devel}{jupyter}"
|
- "{ubuntu-devel}{jupyter}"
|
||||||
|
|
||||||
|
ppc64le-dockerfiles:
|
||||||
|
is_dockerfiles: true
|
||||||
|
upload_images: false
|
||||||
|
tag_specs:
|
||||||
|
- "{ubuntu-ppc64le}{jupyter}"
|
||||||
|
- "{ubuntu-devel-ppc64le}{jupyter}"
|
||||||
|
|
||||||
slice_sets:
|
slice_sets:
|
||||||
|
|
||||||
py:
|
py:
|
||||||
@ -122,6 +129,70 @@ slice_sets:
|
|||||||
args:
|
args:
|
||||||
- CHECKOUT_TF_SRC=1
|
- CHECKOUT_TF_SRC=1
|
||||||
|
|
||||||
|
ubuntu-ppc64le:
|
||||||
|
- add_to_name: "-ppc64le"
|
||||||
|
dockerfile_exclusive_name: "cpu-ppc64le"
|
||||||
|
dockerfile_subdirectory: "ppc64le"
|
||||||
|
args:
|
||||||
|
- UBUNTU_VERSION=18.04
|
||||||
|
partials:
|
||||||
|
- ubuntu/version
|
||||||
|
- ubuntu/cpu
|
||||||
|
- ubuntu/python
|
||||||
|
- tensorflow-ppc64le
|
||||||
|
- shell
|
||||||
|
- add_to_name: "-gpu-ppc64le"
|
||||||
|
dockerfile_exclusive_name: "gpu-ppc64le"
|
||||||
|
dockerfile_subdirectory: "ppc64le"
|
||||||
|
args:
|
||||||
|
- UBUNTU_VERSION=18.04
|
||||||
|
- ARCH=ppc64le
|
||||||
|
- CUDA=10.0
|
||||||
|
- TF_PACKAGE=tensorflow-gpu
|
||||||
|
partials:
|
||||||
|
- ubuntu/version
|
||||||
|
- ubuntu/nvidia
|
||||||
|
- ubuntu/python
|
||||||
|
- tensorflow-ppc64le
|
||||||
|
- shell
|
||||||
|
tests:
|
||||||
|
- import-gpu.sh
|
||||||
|
test_runtime: nvidia
|
||||||
|
|
||||||
|
ubuntu-devel-ppc64le:
|
||||||
|
- add_to_name: "devel-ppc64le"
|
||||||
|
dockerfile_exclusive_name: "devel-cpu-ppc64le"
|
||||||
|
dockerfile_subdirectory: "ppc64le"
|
||||||
|
partials:
|
||||||
|
- ubuntu/version
|
||||||
|
- ubuntu/devel-cpu
|
||||||
|
- ubuntu/python
|
||||||
|
- ubuntu/bazelbuild
|
||||||
|
- shell
|
||||||
|
tests:
|
||||||
|
- build-cpu.sh
|
||||||
|
args:
|
||||||
|
- UBUNTU_VERSION=18.04
|
||||||
|
- CHECKOUT_TF_SRC=1
|
||||||
|
- add_to_name: "devel-gpu-ppc64le"
|
||||||
|
dockerfile_exclusive_name: "devel-gpu-ppc64le"
|
||||||
|
dockerfile_subdirectory: "ppc64le"
|
||||||
|
args:
|
||||||
|
- UBUNTU_VERSION=18.04
|
||||||
|
- ARCH=ppc64le
|
||||||
|
- CUDA=10.0
|
||||||
|
- LIB_DIR_PREFIX=powerpc64le
|
||||||
|
- CHECKOUT_TF_SRC=1
|
||||||
|
partials:
|
||||||
|
- ubuntu/version
|
||||||
|
- ubuntu/devel-nvidia
|
||||||
|
- ubuntu/python
|
||||||
|
- ubuntu/bazelbuild
|
||||||
|
- shell
|
||||||
|
tests:
|
||||||
|
- build-gpu.sh
|
||||||
|
test_runtime: nvidia
|
||||||
|
|
||||||
nightly:
|
nightly:
|
||||||
- add_to_name: "nightly"
|
- add_to_name: "nightly"
|
||||||
partials:
|
partials:
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
#
|
#
|
||||||
# You can use this image to quickly develop changes to the Dockerfile assembler
|
# You can use this image to quickly develop changes to the Dockerfile assembler
|
||||||
# or set of TF Docker partials. See README.md for usage instructions.
|
# or set of TF Docker partials. See README.md for usage instructions.
|
||||||
FROM debian:stretch
|
FROM ubuntu:16.04
|
||||||
LABEL maintainer="Austin Anderson <angerson@google.com>"
|
LABEL maintainer="Austin Anderson <angerson@google.com>"
|
||||||
|
|
||||||
RUN apt-get update && apt-get install -y python3 python3-pip bash curl
|
RUN apt-get update && apt-get install -y python3 python3-pip bash curl
|
||||||
|
Loading…
Reference in New Issue
Block a user