向 LSF 提交长命令的最佳实践
Best practice for submitting long commands to LSF
我正在使用 LSF 中的 bsub
将作业提交到集群。我的命令调用第三方软件并包含一长串文件以及其他参数(大约 8000 个字符)。
直接提交这么长的命令是否安全,或者它们会被截断吗?我应该将命令保存到文件然后调用 bsub sh command.sh
?
提交如此长的命令的最佳做法是什么。
谢谢
LSF(据我所知)没有特殊限制,运行可以完全覆盖整个命令行。但是,您可能需要考虑以下几点:
- shell 您 运行 中的
bsub
命令可能会对您可以提交的命令的总长度施加限制。这通常由 OS 限制控制,互联网上有很多关于它的问题。 Here is one example 其中显示了几种确定系统限制的方法。如果链接断开,那里的最佳答案建议 xargs --show-limits
而另一种方法是检查 getconf ARG_MAX
- 接受字符串作为输入的某些
bsub
选项可能对可以传递给它们的字符串的长度有限制。例如 -R
选项可以接受 512 个字符的字符串——在大多数情况下,我相信如果参数太长,LSF 将拒绝该工作(但我不能确定是否所有的情况都是这样)他们)。
我正在使用 LSF 中的 bsub
将作业提交到集群。我的命令调用第三方软件并包含一长串文件以及其他参数(大约 8000 个字符)。
直接提交这么长的命令是否安全,或者它们会被截断吗?我应该将命令保存到文件然后调用 bsub sh command.sh
?
提交如此长的命令的最佳做法是什么。
谢谢
LSF(据我所知)没有特殊限制,运行可以完全覆盖整个命令行。但是,您可能需要考虑以下几点:
- shell 您 运行 中的
bsub
命令可能会对您可以提交的命令的总长度施加限制。这通常由 OS 限制控制,互联网上有很多关于它的问题。 Here is one example 其中显示了几种确定系统限制的方法。如果链接断开,那里的最佳答案建议xargs --show-limits
而另一种方法是检查getconf ARG_MAX
- 接受字符串作为输入的某些
bsub
选项可能对可以传递给它们的字符串的长度有限制。例如-R
选项可以接受 512 个字符的字符串——在大多数情况下,我相信如果参数太长,LSF 将拒绝该工作(但我不能确定是否所有的情况都是这样)他们)。