如何指定bazel使用的CPU核心数?

时间:2016-06-13 11:29:22

标签: tensorflow bazel syntaxnet

我正在用bazel构建syntaxnet(tensorflow fork)。它慢慢地工作非常并且一直挂起。

我最后一次遇到这个问题(有caffe)有人通过添加-j4来改变我正在使用的核心数量。在bazel这个命令不起作用。像这样的任何bazel自定义命令?

CPU规格:3.8ghz时钟,Quadcore

CPU型号:AMD 4800(或类似的东西)。

谢谢!

2 个答案:

答案 0 :(得分:3)

我添加了--jobs 4,它设法通过了。它可能与-j4相同。

完整的命令行是:

bazel test --jobs 4 --genrule_strategy=standalone syntaxnet/... util/utf8/...

答案 1 :(得分:0)

Guy Coderanswer中描述的类似问题,请尝试--local_resources。以我有限的经验来看,Bazel消耗的内核数量大约是我设置的两倍,有时会消耗所有内核几秒钟。即使使用bazel test -c opt --local_resources 20000,1,0.25,我仍然看到系统上的大量负载。 (以下是他的回答)

来自Bazel User Manual

  

--local_resources可用RAM,可用CPU ,可用IO

     

此选项,需要三个逗号分隔的浮点数   参数,指定Bazel可以占用的本地资源量   在计划构建和测试活动时要考虑到这一点。选项   预计可用RAM(MB), CPU内核数(含1.0)   代表单个全核)和工作站I / O功能(具有   1.0代表普通工作站)。默认情况下,Bazel将直接从系统估计RAM的数量和CPU内核的数量   配置并假定1.0 I / O资源。

     

如果使用此选项,Bazel将忽略两者   --ram_utilization_factor。