2016-06-02 14 views
1

Ich verstehe, dass Cuda 8 noch nicht von Tensorflow unterstützt wird, aber es ist die einzige Option, die auf meinem Ubuntu 16.04 System funktioniert. (Ich kann 7.5 über die Ubuntu-Repositories installieren, aber es erstellt kein Cuda-Home-Verzeichnis, so dass ich es nicht für das Tensorflow-.configure-Skript verwenden kann - obwohl es für alles andere funktioniert. Ich habe versucht, es mit dem folgenden Befehl zu erstellen.Tensorflow Installation schlägt fehl mit CUDA 8 RC

bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

ich diesen Fehler.

ERROR: /home/chase/Desktop/tensorflow/tensorflow/stream_executor/BUILD:5:1: C++ compilation of rule '//tensorflow/stream_executor:stream_executor' failed: crosstool_wrapper_driver_is_not_gcc failed: error executing command third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -fPIE -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object ... (remaining 100 argument(s) skipped): com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 1. 
tensorflow/stream_executor/cuda/cuda_blas.cc: In member function 'virtual bool perftools::gputools::cuda::CUDABlas::DoBlasGemm(perftools::gputools::Stream*, perftools::gputools::blas::Transpose, perftools::gputools::blas::Transpose, tensorflow::uint64, tensorflow::uint64, tensorflow::uint64, float, const perftools::gputools::DeviceMemory<Eigen::half>&, int, const perftools::gputools::DeviceMemory<Eigen::half>&, int, float, perftools::gputools::DeviceMemory<Eigen::half>*, int)': 
tensorflow/stream_executor/cuda/cuda_blas.cc:1683:22: error: 'CUBLAS_DATA_HALF' was not declared in this scope 
     CUDAMemory(a), CUBLAS_DATA_HALF, lda, 
        ^
tensorflow/stream_executor/cuda/cuda_blas.cc: In function 'cublasOperation_t perftools::gputools::cuda::{anonymous}::CUDABlasTranspose(perftools::gputools::blas::Transpose)': 
tensorflow/stream_executor/cuda/cuda_blas.cc:406:1: warning: control reaches end of non-void function [-Wreturn-type] 
} 
^ 
tensorflow/stream_executor/cuda/cuda_blas.cc: In function 'cublasFillMode_t perftools::gputools::cuda::{anonymous}::CUDABlasUpperLower(perftools::gputools::blas::UpperLower)': 
tensorflow/stream_executor/cuda/cuda_blas.cc:417:1: warning: control reaches end of non-void function [-Wreturn-type] 
} 
^ 
tensorflow/stream_executor/cuda/cuda_blas.cc: In function 'cublasDiagType_t perftools::gputools::cuda::{anonymous}::CUDABlasDiagonal(perftools::gputools::blas::Diagonal)': 
tensorflow/stream_executor/cuda/cuda_blas.cc:428:1: warning: control reaches end of non-void function [-Wreturn-type] 
} 
^ 
tensorflow/stream_executor/cuda/cuda_blas.cc: In function 'cublasSideMode_t perftools::gputools::cuda::{anonymous}::CUDABlasSide(perftools::gputools::blas::Side)': 
tensorflow/stream_executor/cuda/cuda_blas.cc:439:1: warning: control reaches end of non-void function [-Wreturn-type] 
} 
^ 
Target //tensorflow/tools/pip_package:build_pip_package failed to build 
Use --verbose_failures to see the command lines of failed build steps. 
INFO: Elapsed time: 118.926s, Critical Path: 115.25s 

Wer weiß, wie um dies zu beheben oder zu umgehen, oder muss ich nur warten, bis sie CUDA 8 zu unterstützen?

Antwort

2

Dies ist ein known issue mit der aktuellen Version von TensorFlow. Sie können versuchen, den Code von pull request zu patchen, um den fehlenden Typ (CUBLAS_DATA_HALF) zu definieren, der die Kompilierung fehlschlägt.

Verwandte Themen