假设我要在集群上运行作业:job1.m

Slurm处理批处理作业,我正在加载Mathematica以保存输出文件job1.csv

我提交了job1.m,它正排在队列中。现在,我将job1.m编辑为具有不同的变量和参数,并告诉它将数据保存到job1_edited.csv。然后,我重新提交job1.m。

现在,队列中有两个批处理作业。

我的输出文件会怎样? job1.csv将是原始job1.m文件中的数据吗?并且job1_edited.csv将成为来自已编辑文件的数据吗?还是job1.csv和job1_edited.csv是相同的输出?

:(

提前致谢!

最佳答案

我假设job1.m是Mathematica的工作,是从Bash提交脚本内部运行的。在这种情况下,作业开始时会读取job1.m,因此,如果在提交后但在作业开始之前对其进行了修改,则将运行修改后的版本。如果在作业开始后对其进行了修改,则将运行原始版本。

如果job1.m是提交脚本本身(因此您运行sbatch job1.m),那么该脚本将复制到特定于作业的假脱机目录中,因此,即使在提交作业后对其进行了修改,它仍将运行原始版本。

无论如何,为了可重复性和可追溯性,最好使用诸如FireworksBosco之类的工作流管理器。

关于wolfram-mathematica - 使用Slurm提交.m批处理作业后,是否可以在不更改原始提交的情况下编辑.m文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32216228/

10-12 20:57