如何停止并行报告"没有更多的流程"用" -X"选项?

时间:2015-01-25 21:39:13

标签: gnu-parallel

解决此示例:http://www.gnu.org/software/parallel/man.html#EXAMPLE:-Speeding-up-fast-jobs

当我跑步时:

seq -w 0 9999 | parallel touch pict{}.jpg
seq -w 0 9999 | parallel -X touch pict{}.jpg

成功!但是,添加另一个9和BOOM:

$ seq -w 0 99999 | parallel --eta -X touch pict{}.jpg parallel: Warning: No more processes: Decreasing number of running jobs to 3. Raising ulimit -u or /etc/security/limits.conf may help. Computers / CPU cores / Max jobs to run 1:local / 4 / 3 parallel: Warning: No more processes: Decreasing number of running jobs to 2. Raising ulimit -u or /etc/security/limits.conf may help. parallel: Warning: No more processes: Decreasing number of running jobs to 1. Raising ulimit -u or /etc/security/limits.conf may help. parallel: Error: No more processes: cannot run a single job. Something is wrong.

我希望parallel -X不会运行比我拥有cpu核心更多的工作,并且在最大命令行长度允许的情况下将尽可能多的参数填充到每个作业上。我如何耗尽流程?

我的环境:

  • OSX Yosemite
  • ulimit -u == 709
  • GNU parallel 20141122
  • GNU bash,版本3.2.53(1)-release(x86_64-apple-darwin14)

1 个答案:

答案 0 :(得分:1)

您的期望是100%正确的。您所看到的显然是一个错误 - 可能是由于GNU Parallel没有在OSX上进行良好测试。请关注http://www.gnu.org/software/parallel/man.html#REPORTING-BUGS并提交错误报告。