Windows上的Cuda使用Tensorflow 1.9 Bazel构建错误

时间:2018-07-26 08:46:05

标签: tensorflow bazel

我正在尝试编译一个使用Tensorflow内核的示例程序,该程序在以下环境中通过Bazel在Windows 10 64bit上具有CUDA支持:

  • Windows 10 64位
  • CUDA工具包9.0
  • CUDNN 9.0
  • Tensorflow 1.9
  • Bazel 0.16

我成功通过了configure.py,添加了CUDA和CUDNN位置。

这是我的Bazel BUILD文件:

cc_binary(
  name = "mnistpredict.dll",
  srcs = ["mnist.cc", "MNIST.h"],
  deps = [
      "//tensorflow/core:tensorflow",
  ],
  linkshared=1
)

我尝试使用以下命令进行编译: bazel build //tensorflow/loadgraph:mnistpredict.dll

  

错误:   C:/用户/ laci /下载/tensorflow-1.9.0/tensorflow/loadgraph/BUILD:1:1:   加载包'tensorflow / core'时出错:遇到错误   读取扩展文件'cuda / build_defs.bzl':没有这样的软件包   '@ local_config_cuda // cuda':追溯(最近一次通话结束):           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   1166行                   _create_local_cuda_repository(repository_ctx)           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   _create_local_cuda_repository中的第995行                   _get_cuda_config(repository_ctx)           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   _get_cuda_config中的第750行                   _cudnn_version(repository_ctx,cudnn_install_base ...,...)           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   _cudnn_version中的第466行                   find_cuda_define(repository_ctx,cudnn_header_dir,“ c ...”,...)           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   在find_cuda_define中的第422行                   auto_configure_fail((“读取%s时出错:%s”%(str(h ...)))           文件“ C:/users/laci/downloads/tensorflow-1.9.0/third_party/gpus/cuda_configure.bzl”,   第210行,在auto_configure_fail中                   fail((“(\ n%sCuda配置错误:%...)))

     

Cuda配置错误:读取错误   C:/用户/ laci /下载/cudnn-9.0-windows10-x64-v7.1/cuda/include/cudnn.h:   java.io.IOException:错误:   src / main / native / windows / processes-jni.cc(239):CreateProcessW(“ grep”   --color = never -A1 -E“ #define CUDNN_MAJOR” C:/用户/laci/Downloads/cudnn-9.0-windows10-x64-v7.1/cuda/include/cudnn.h):   系统找不到指定的文件。

     

并由'//tensorflow/loadgraph:mnistpredict.dll'引用错误:   目标'//tensorflow/loadgraph:mnistpredict.dll'的分析失败;   构建中止:分析失败INFO:经过时间:1.612s INFO:0   流程。失败:构建未成功完成(2个软件包   已加载)       当前正在加载:tensorflow / core

当我尝试不使用CUDA支持时,便可以成功编译它。

1 个答案:

答案 0 :(得分:2)

它正在%PATH%下寻找grep.exe,但失败了。将Git \ bin添加到%PATH%或为Windows安装grep即可解决问题。

花了几天的时间才终于在Windows 7 64位上使用bazel + msys2构建一个tensorflow-gpu 1.10 whl。