我正在并行运行多个进程,并且每个进程并行地读取同一个文件。它看起来像某些进程看到文件的损坏版本,如果我将进程数量增加到> 15左右。处理这种情况的推荐方式是什么?从多个进程并行读取文件
更多详细信息: 并行读取的文件实际上是一个perl脚本。多个作业是python进程,每个作业都使用不同的输入参数独立启动此perl脚本。当作业数量增加时,这些作业中的一部分会给出perl脚本语法无效的错误(这不是真的)。因此,我怀疑其中一些作业是在损坏的perl脚本中读取的。
我正在32core机器上运行所有这些。
“它看起来像一些进程看到文件的损坏版本” - 2件事情:(1)您的同步逻辑中可能有一个错误。 (2)不太可能读取多个进程的文件会使其更快,但可能会更慢。 – 2014-09-26 00:22:05
没有任何同步逻辑。正如我所说,这个文件是一个perl脚本,并行启动。所以是的,它会更快,因为每个perl进程都在独立数据集上工作 – slash90 2014-09-26 00:26:09
“没有任何同步逻辑” - 存在您的问题! (我想的很多)。阅读我再次说的话。我没有说你大概复杂的处理速度不会更快,我说“它不太可能读取多个进程的文件会使它更快(即文件读取部分)” – 2014-09-26 00:27:42