我在大学的计算集群上使用 condor 来管理大量工作。我的程序读入两个大 (~1Gb) 输入文件并生成一个小 (~100kb) 输出文件。我所有的输入文件都位于同一个网络磁盘上,所有 condor 节点都可以读取(我们大约有 150 个)。我注意到在我提交大量作业后,它们开始运行速度变慢,我怀疑这是由于 IO 延迟,因为磁盘头必须移动更多才能同时读取许多文件。我想通过在运行作业之前将文件复制到节点来优化这一点。更准确地说,我希望一次只复制一个文件,以便更按顺序读取磁盘。我试着用
should_transfer_files = YES
when_to_transfer_output = ON_EXIT
transfer_input_files = file1, file2
但这似乎并没有强制后续作业等待前面的作业完成复制文件。