我正在用bazel构建syntaxnet(tensorflow fork)。它很慢地工作非常并保持挂断。如何指定bazel使用的CPU内核数量?
上次我遇到这个问题(caffe)时,有人通过添加-j4
来更改我使用的内核数量。在bazel这个命令不起作用。任何自定义命令为这样的bazel?
CPU规格:3.8GHz的时钟,四核
CPU型号:AMD 4800(或类似的规定)。
谢谢!
我正在用bazel构建syntaxnet(tensorflow fork)。它很慢地工作非常并保持挂断。如何指定bazel使用的CPU内核数量?
上次我遇到这个问题(caffe)时,有人通过添加-j4
来更改我使用的内核数量。在bazel这个命令不起作用。任何自定义命令为这样的bazel?
CPU规格:3.8GHz的时钟,四核
CPU型号:AMD 4800(或类似的规定)。
谢谢!
我加了--jobs 4
,并且设法通过了。它可能与-j4
相同。
完整的命令行是:
bazel test --jobs 4 --genrule_strategy=standalone syntaxnet/... util/utf8/...
啊,好吧。比--local_resources好多了! –
请注意,根据https://docs.bazel.build/versions/master/bazel-user-manual.html,默认作业值为200.这是bazel的上限,它试图找出并行性可能基于内存,CPU计数等。 – Twirrim
答案是你必须在bazel命令后加上--local_resources
,然后指定你需要的东西(ctrl + F it here)。
应该默认使用所有核心。 IE,我在12核心机器上运行它,'top'显示12个'clang'命令并行运行,并且全部使用100%的CPU,这不是你的情况吗? –