diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2016-08-25 10:22:44 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2016-08-25 11:32:33 -0700 |
commit | 2c598e874e6a7b6b3185846ce9bac97a7d5d0169 (patch) | |
tree | cdbfbf01e56660d24c12dc0ef664f251032642ef /configure | |
parent | 1fa09b5560144e8dd16756d7877e01647fa68325 (diff) |
Merge changes from github.
Change: 131310818
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 73 |
1 files changed, 15 insertions, 58 deletions
@@ -80,6 +80,7 @@ while [ "$TF_NEED_CUDA" == "" ]; do esac done +export TF_NEED_CUDA if [ "$TF_NEED_CUDA" == "0" ]; then echo "Configuration finished" exit @@ -97,6 +98,7 @@ while true; do fi fi if [ -e "$GCC_HOST_COMPILER_PATH" ]; then + export CC=$GCC_HOST_COMPILER_PATH break fi echo "Invalid gcc path. ${GCC_HOST_COMPILER_PATH} cannot be found" 1>&2 @@ -107,7 +109,6 @@ while true; do # Retry done - # Find out where the CUDA toolkit is installed OSNAME=`uname -s` @@ -140,6 +141,8 @@ while true; do fi if [ -e "${CUDA_TOOLKIT_PATH}/${CUDA_RT_LIB_PATH}" ]; then + export CUDA_TOOLKIT_PATH + export CUDA_VERSION=$TF_CUDA_VERSION break fi echo "Invalid path to CUDA $TF_CUDA_VERSION toolkit. ${CUDA_TOOLKIT_PATH}/${CUDA_RT_LIB_PATH} cannot be found" @@ -200,13 +203,16 @@ while true; do fi if [ -e "$CUDNN_INSTALL_PATH/${CUDA_DNN_LIB_ALT_PATH}" -o -e "$CUDNN_INSTALL_PATH/${CUDA_DNN_LIB_PATH}" ]; then + export CUDNN_VERSION=$TF_CUDNN_VERSION + export CUDNN_INSTALL_PATH break fi if [ "$OSNAME" == "Linux" ]; then CUDNN_PATH_FROM_LDCONFIG="$(ldconfig -p | sed -n 's/.*libcudnn.so .* => \(.*\)/\1/p')" if [ -e "${CUDNN_PATH_FROM_LDCONFIG}${TF_CUDNN_EXT}" ]; then - CUDNN_INSTALL_PATH="$(dirname ${CUDNN_PATH_FROM_LDCONFIG})" + export CUDNN_VERSION=$TF_CUDNN_VERSION + export CUDNN_INSTALL_PATH="$(dirname ${CUDNN_PATH_FROM_LDCONFIG})" break fi fi @@ -225,42 +231,11 @@ while true; do CUDNN_INSTALL_PATH="" done -cat > third_party/gpus/cuda/cuda.config <<EOF -# CUDA_TOOLKIT_PATH refers to the CUDA toolkit. -CUDA_TOOLKIT_PATH="$CUDA_TOOLKIT_PATH" -# CUDNN_INSTALL_PATH refers to the cuDNN toolkit. The cuDNN header and library -# files can be either in this directory, or under include/ and lib64/ -# directories separately. -CUDNN_INSTALL_PATH="$CUDNN_INSTALL_PATH" - -# The Cuda SDK version that should be used in this build (empty to use libcudart.so symlink) -TF_CUDA_VERSION=$TF_CUDA_VERSION - -# The Cudnn version that should be used in this build -TF_CUDNN_VERSION=$TF_CUDNN_VERSION -EOF - -# Configure the gcc host compiler to use -export WARNING=$DO_NOT_SUBMIT_WARNING -perl -pi -e "s,CPU_COMPILER = \('.*'\),# \$ENV{WARNING}\nCPU_COMPILER = ('$GCC_HOST_COMPILER_PATH'),s" third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -perl -pi -e "s,GCC_HOST_COMPILER_PATH = \('.*'\),# \$ENV{WARNING}\nGCC_HOST_COMPILER_PATH = ('$GCC_HOST_COMPILER_PATH'),s" third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc - -# Configure the platform name. -perl -pi -e "s,PLATFORM = \".*\",PLATFORM = \"$OSNAME\",s" third_party/gpus/cuda/platform.bzl - -# Configure the Cuda toolkit version to work with. -perl -pi -e "s,(GetCudaVersion.*return )\"[0-9\.]*\",\1\"$TF_CUDA_VERSION\",s" tensorflow/stream_executor/dso_loader.cc -perl -pi -e "s,CUDA_VERSION = \"[0-9\.]*\",CUDA_VERSION = \"$TF_CUDA_VERSION\",s" third_party/gpus/cuda/platform.bzl - -# Configure the Cudnn version to work with. -perl -pi -e "s,(GetCudnnVersion.*return )\"[0-9\.]*\",\1\"$TF_CUDNN_VERSION\",s" tensorflow/stream_executor/dso_loader.cc -perl -pi -e "s,CUDNN_VERSION = \"[0-9\.]*\",CUDNN_VERSION = \"$TF_CUDNN_VERSION\",s" third_party/gpus/cuda/platform.bzl - - # Configure the compute capabilities that TensorFlow builds for. # Since Cuda toolkit is not backward-compatible, this is not guaranteed to work. while true; do fromuser="" + default_cuda_compute_capabilities="3.5,5.2" if [ -z "$TF_CUDA_COMPUTE_CAPABILITIES" ]; then cat << EOF Please specify a list of comma-separated Cuda compute capabilities you want to build with. @@ -270,6 +245,9 @@ EOF read -p "[Default is: \"3.5,5.2\"]: " TF_CUDA_COMPUTE_CAPABILITIES fromuser=1 fi + if [ -z "$TF_CUDA_COMPUTE_CAPABILITIES" ]; then + TF_CUDA_COMPUTE_CAPABILITIES=$default_cuda_compute_capabilities + fi # Check whether all capabilities from the input is valid COMPUTE_CAPABILITIES=${TF_CUDA_COMPUTE_CAPABILITIES//,/ } ALL_VALID=1 @@ -285,34 +263,13 @@ EOF exit 1 fi else + export CUDA_COMPUTE_CAPABILITIES=$TF_CUDA_COMPUTE_CAPABILITIES break fi TF_CUDA_COMPUTE_CAPABILITIES="" done -if [ ! -z "$TF_CUDA_COMPUTE_CAPABILITIES" ]; then - export WARNING=$DO_NOT_SUBMIT_WARNING - function CudaGenCodeOpts() { - OUTPUT="" - for CAPABILITY in $@; do - OUTPUT=${OUTPUT}" \"${CAPABILITY}\", " - done - echo $OUTPUT - } - export CUDA_GEN_CODES_OPTS=$(CudaGenCodeOpts ${TF_CUDA_COMPUTE_CAPABILITIES//,/ }) - perl -pi -0 -e 's,\n( *)([^\n]*supported_cuda_compute_capabilities\s*=\s*\[).*?(\]),\n\1# $ENV{WARNING}\n\1\2$ENV{CUDA_GEN_CODES_OPTS}\3,s' third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc - function CudaVersionOpts() { - OUTPUT="" - for CAPABILITY in $@; do - OUTPUT=$OUTPUT"CudaVersion(\"${CAPABILITY}\"), " - done - echo $OUTPUT - } - export CUDA_VERSION_OPTS=$(CudaVersionOpts ${TF_CUDA_COMPUTE_CAPABILITIES//,/ }) - perl -pi -0 -e 's,\n( *)([^\n]*supported_cuda_compute_capabilities\s*=\s*\{).*?(\}),\n\1// $ENV{WARNING}\n\1\2$ENV{CUDA_VERSION_OPTS}\3,s' tensorflow/core/common_runtime/gpu/gpu_device.cc -fi - -# Invoke the cuda_config.sh and set up the TensorFlow's canonical view of the Cuda libraries -(cd third_party/gpus/cuda; ./cuda_config.sh;) || exit -1 +bazel clean --expunge +bazel fetch //... echo "Configuration finished" |