使用 bazel-buildfarm 构建 TensorFlow
Building TensorFlow with bazel-buildfarm
我正在尝试使用远程执行+缓存和 bazel-buildfarm 从源代码构建 TensorFlow。我已经使用示例配置文件设置了一个 bazel-buildfarm 服务器和 worker @ https://github.com/bazelbuild/bazel-buildfarm(参见 examples/
目录)。
我在 TensorFlow 的源代码库中的 .bazelrc 添加了以下规则(master 的负责人):
build --spawn_strategy=remote
build --genrule_strategy=remote
build --strategy=Javac=remote
build --strategy=Closure=remote
build --remote_executor=grpc://<bazel-buildfarm-server>:8980
然后我 运行 ./configure
使用我知道的选项对本地非远程构建成功。
我开始构建 TensorFlow:
bazel build —config=opt —config=cuda --config=v2 //tensorflow/tools/pip_package:build_pip_package
此后不久我收到此错误消息:
...
ERROR: /tensorflow/tensorflow/core/util/BUILD:345:1: Executing genrule //tensorflow/core/util:version_info_gen failed: No usable spawn strategy found for spawn with mnemonic Genrule. Your --spawn_strategy, --genrule_strategy or --strategy flags are probably too strict. Visit https://github.com/bazelbuild/bazel/issues/7480 for migration advice
Target //tensorflow/tools/pip_package:build_pip_package failed to build
谁能帮我解读这条信息?我想弄清楚发生了什么,以及如何使用 bazel-buildfarm 构建 TensorFlow。
删除 --spawn_strategy
和 --genrule_strategy
标志。 Actions 将在可用时使用远程执行,否则回退到本地或沙盒选项。听起来 genrule 需要在本地 运行,但是您的标志阻止了它这样做。
我正在尝试使用远程执行+缓存和 bazel-buildfarm 从源代码构建 TensorFlow。我已经使用示例配置文件设置了一个 bazel-buildfarm 服务器和 worker @ https://github.com/bazelbuild/bazel-buildfarm(参见 examples/
目录)。
我在 TensorFlow 的源代码库中的 .bazelrc 添加了以下规则(master 的负责人):
build --spawn_strategy=remote
build --genrule_strategy=remote
build --strategy=Javac=remote
build --strategy=Closure=remote
build --remote_executor=grpc://<bazel-buildfarm-server>:8980
然后我 运行 ./configure
使用我知道的选项对本地非远程构建成功。
我开始构建 TensorFlow:
bazel build —config=opt —config=cuda --config=v2 //tensorflow/tools/pip_package:build_pip_package
此后不久我收到此错误消息:
...
ERROR: /tensorflow/tensorflow/core/util/BUILD:345:1: Executing genrule //tensorflow/core/util:version_info_gen failed: No usable spawn strategy found for spawn with mnemonic Genrule. Your --spawn_strategy, --genrule_strategy or --strategy flags are probably too strict. Visit https://github.com/bazelbuild/bazel/issues/7480 for migration advice
Target //tensorflow/tools/pip_package:build_pip_package failed to build
谁能帮我解读这条信息?我想弄清楚发生了什么,以及如何使用 bazel-buildfarm 构建 TensorFlow。
删除 --spawn_strategy
和 --genrule_strategy
标志。 Actions 将在可用时使用远程执行,否则回退到本地或沙盒选项。听起来 genrule 需要在本地 运行,但是您的标志阻止了它这样做。