问题标签 [gnu-parallel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
237 浏览

parallel-processing - 在 gnu 并行中如何指定结果文件/目录的名称?

我有一个可执行文件,它接受两个浮点数作为命令行参数。我正在使用 gnu 并行运行我的程序的多个实例,这些实例具有不同的浮点参数值。参数在文件中显示为 2 列。例子:

我尝试使用parallel --results将输出系统地存储在目录结构中。但是,生成的文件具有如下名称,因为参数值是双精度值:

有没有办法指定生成的文件/目录名称的格式?例如,我可以按输入文件中的顺序命名每个参数组合吗?

谢谢

0 投票
1 回答
1368 浏览

file-io - gnu 中的文件 I/O 并行

我有一个接受单个参数的程序。我正在使用 gnu 并行对此参数执行参数扫描。每次运行都会生成一个结果,我想将所有结果附加到一个文件中,比如 Results.txt。

这样做的正确方法是什么?

我不应该让每个实例都打开文件并写入文件,因为这可能会产生冲突并且还会打乱结果的顺序。我能想到的唯一方法是让每次运行在具有唯一名称的文件中生成其输出,然后,当 gnu 并行完成运行时,使用脚本将结果合并到单个文件中。

  1. 有没有更简单的方法来实现这一点?
  2. 当多个实例写入/读取同一个文件时会发生什么?gnu 是否并行创建多个副本,每个实例一个,就像它为 stdout 和 stderror 所做的那样?

谢谢

0 投票
1 回答
6019 浏览

bash - 具有并行 curl 操作的 Bashscript

我有一个带有 url 的列表,我喜欢用 CURL 加载它,并使用 bash 脚本对结果进行一些操作。由于它几乎是 100k 请求,我喜欢并行运行它。我已经研究了 GNU 并行,但是我要如何将所有内容粘合在一起呢?谢谢!

脚本:

0 投票
2 回答
289 浏览

gnu-parallel - 如何将 GNU Parallel 与主机组一起使用?

如何维护远程主机列表以在其上运行 GNU Parallel 命令,而无需手动指定服务器?

最好,我可以有几个不同的组/文件,其中包含机器名称/地址,并在任何这些组上运行 GNU Parallel 命令。

0 投票
1 回答
503 浏览

parallel-processing - 剩余的 GNU 并行显示作业

我想这个问题/问题可以通过满足以下一个(或多个)问题来解决

1) 我如何显示剩余的工作?2)我如何漂亮的输出--eta

1) 我检查了手册页,目前在我的函数中使用 $PARALLEL_SEQ,但我怎样才能获得剩余的工作?Parallel 帮助我编译了大约 800 个文件,我想知道我剩下的工作。

2)或者,是否有更好(更好)的输出方式--eta?我的输出看起来真的很乱。我只想看到一个 ETA。

我正在使用的并行标志:--no-notice --keep-order --group

输出示例:

0 投票
1 回答
775 浏览

parallel-processing - GNU 并行更改 PATH 环境变量

我正在尝试使用 GNU Parallel 在远程机器上运行带有多个参数的脚本。这看起来有点像:

/shared/location/script.sh正在使用 git。所以我得到这个错误:

remote-machine如果我手动登录并运行/shared/location/script.shparam_a或者param_b一切正常。所以我检查了 $PATH 变量,发现如果我remote-machine使用 GNU 并行运行某些东西,它看起来像PATH=/usr/bin:/bin:/usr/sbin:/sbin. 如果我直接从机器上运行它,它也有/local/bin/git.

为什么会这样,如何克服?

提前致谢

0 投票
1 回答
542 浏览

parallel-processing - 使用 --onall 时,GNU 并行不会在远程服务器上并行运行

我正在尝试在具有多个参数的多个远程服务器上运行脚本。GNU 并行命令是:

脚本.sh:

我正在尝试在 4 个进程上并行运行:

  • rh32 使用 param1 运行 script.sh
  • rh32 使用 param2 运行 script.sh
  • rh64 使用 param1 运行 script.sh
  • rh64 使用 param2 运行 script.sh

当查看累积的输出时,看起来真正发生的是:

  • rh32 使用 param1 运行 script.sh
  • rh64 使用 param1 运行 script.sh

- 正在并行运行。完成后,其他两个将并行运行。

我怎样才能让它们四个同时并行运行?

谢谢,

0 投票
1 回答
1482 浏览

bash - GNU 并行:如何格式化替换字符串?

我正在尝试实现以下目标,并且我想在使用 GNU 并行的多个进程上做到这一点。

我试过这个,它不工作:

0 投票
2 回答
1984 浏览

gnu-parallel - 为什么在教程中使用 GNU Parallel --jobs 4 选项运行 5 个作业?

我正在通过GNU Parallel totorial工作。在“多个参数”部分中,有以下示例(注意:num30000 是一个文本文件,其连续行上的数字为 1 到 30,000):

为了更好的并行性,当文件结束时,GNU Parallel 可以在所有并行作业之间分配参数。

并行运行 4 个作业会将最后一行参数拆分为 4 个作业,总共有 5 个作业:

输出:

我的问题是:为什么我们期望总共有 5 个工作?我显然错过了一点,虽然我不知道这是否重要。我预计有 4 个工作,因为 30,000 可以被 4 整除。我决定在运行以下命令后发布这个问题:

这导致:

这在我看来就像第一个echo命令传递了前 23,695 个参数。然后,其余的被分成 4 个作业,参数计数为 1577、1577、1577 和 1574。我是否误解了并行调用应该做什么?谢谢!

0 投票
1 回答
1540 浏览

bash - 在脚本中执行 GNU Parallel

从命令行parallel echo {} ::: A B C执行的命令返回正确的结果,而在 bash 脚本中调用时返回错误:

这是脚本:

这是输出:

知道为什么以及如何在 bash 脚本中正确调用 GNU 并行吗?