1

我不得不承认我正在阅读 gnu 并行文档,但找不到我想要的东西。我需要运行一个有多个选项的代码。该代码是数学密集型的,在单核运行的 3Ghz 计算机中最多需要 5 天。我以前使用 gfortran 和 -fopemp,但现在我正在运行这个 C 代码,所以 gnu 并行似乎足够了。现在到了这个问题,我需要使用 nice 和 nohup 使用以下选项执行 wcmap.c:

nohup nice -n 19 ./wcmap --slon_min 74.5 --slon_max 74.5 --ll_0_min 325 --ll_0_max 340 --bet_min 0.0 --bet_max 15 --vg 38.9 --ll_0_step 0.5 --bet_step 0.5 --path PARALLEL/ MORHIST-Exit.dat 

我试过 gnu 并行但没有成功

parallel --gnu nice -n 19 ./wcmap --slon_min 74.5 --slon_max 74.5 --ll_0_min 325 --ll_0_max 340 --bet_min 0.0 --bet_max 15 --vg 38.9 --ll_0_step 0.5 --bet_step 0.5 --path PARALLEL/ MORHIST-Exit.dat  :::

我需要在远程服务器的几个节点上运行几天。甚至在我的办公室计算机(4 核)上,这就是我在远程会话中使用 nohup 的原因。任何建议表示赞赏!先感谢您!塞巴斯蒂安

4

1 回答 1

0

GNU Parallel 不能神奇地并行化 wcmap 程序的内部结构。它可以做的是并行运行具有不同参数的 wcmap。因此,让我们假设您要运行:

./wcmap --slon_min 74.5 --slon_max 74.5 MORHIST-Exit.dat
./wcmap --slon_min 75 --slon_max 75 MORHIST-Exit.dat
./wcmap --slon_min 75.5 --slon_max 75.5 MORHIST-Exit.dat
./wcmap --slon_min 76 --slon_max 76 MORHIST-Exit.dat

然后你可以用 GNU Parallel 做到这一点:

parallel ./wcmap --slon_min {} --slon_max {} MORHIST-Exit.dat ::: 74.5 75 75.5 76
于 2013-06-06T11:23:07.597 回答