GNU Parallel - 多个命令

GNU Parallel - multiple commands

我想 运行 对几个输入进行几个长时间的 运行ning 处理。例如:

solver_a problem_1
solver_b problem_1
...
solver_b problem_18
solver_c problem_18

我知道如何 运行 多个 参数 相同的 命令 - 这是核心用例。这更像是相反的情况:同一个 argument.

的多个 commands

当然,您总是可以 运行 多个并行实例 - 但是在调度资源时,同一台机器上或同一用户下的实例是否相互了解?

我想你想要 GNU Parallel 到 运行 通过 3 个求解器中的每一个求解 18 个问题中的每一个:

parallel echo solver_{1} problem_{2} ::: {a..c} ::: {1..18}

示例输出

solver_a problem_1
solver_a problem_2
solver_a problem_3
solver_a problem_4
...
...
solver_c problem_16
solver_c problem_17
solver_c problem_18

或者,更快地更改其他参数:

parallel echo solver_{2} problem_{1} ::: {1..18} ::: {a..c}