检查 tensorflow 可配置属性值(bazel 构建)
Check tensorflow configurable attribute value (bazel build)
我使用此命令构建 tensorflow:
bazel build --config=opt //tensorflow:tensorflow_dll_import_lib
此目标在 cmd 中有一个 select:
genrule(
name = "tensorflow_dll_import_lib",
srcs = [":get_tensorflow_dll_import_lib"],
outs = ["tensorflow.lib"],
cmd = select({
"//tensorflow:windows": "cp -f $< $@",
"//conditions:default": "touch $@", # Just a placeholder for Unix platforms
}),
visibility = ["//visibility:public"],
)
这是 windows 的配置部分:
config_setting(
name = "windows",
values = {"cpu": "x64_windows"},
visibility = ["//visibility:public"],
)
现在我想知道 "cpu" 标志的确切值。
1)不用运行"bazel build"是否可以知道
2) How/where 当 运行 "bazel build"
时,我可以看到它的值吗
cpu
配置选项由 bazel 提供。
默认行为是,它由 bazel 在这里自动检测到:
https://github.com/bazelbuild/bazel/blob/master/tools/cpp/lib_cc_configure.bzl#L180
但是,您可以使用 --cpu
标志覆盖自动检测值。
您可以在此处详细了解 bazel 如何使用配置选项:
https://docs.bazel.build/versions/master/configurable-attributes.html#example
我使用此命令构建 tensorflow:
bazel build --config=opt //tensorflow:tensorflow_dll_import_lib
此目标在 cmd 中有一个 select:
genrule(
name = "tensorflow_dll_import_lib",
srcs = [":get_tensorflow_dll_import_lib"],
outs = ["tensorflow.lib"],
cmd = select({
"//tensorflow:windows": "cp -f $< $@",
"//conditions:default": "touch $@", # Just a placeholder for Unix platforms
}),
visibility = ["//visibility:public"],
)
这是 windows 的配置部分:
config_setting(
name = "windows",
values = {"cpu": "x64_windows"},
visibility = ["//visibility:public"],
)
现在我想知道 "cpu" 标志的确切值。
1)不用运行"bazel build"是否可以知道
2) How/where 当 运行 "bazel build"
cpu
配置选项由 bazel 提供。
默认行为是,它由 bazel 在这里自动检测到:
https://github.com/bazelbuild/bazel/blob/master/tools/cpp/lib_cc_configure.bzl#L180
但是,您可以使用 --cpu
标志覆盖自动检测值。
您可以在此处详细了解 bazel 如何使用配置选项: https://docs.bazel.build/versions/master/configurable-attributes.html#example