【问题标题】:Torque PBS vs Python MultiprocessingTorque PBS 与 Python 多处理
【发布时间】:2015-04-19 18:21:26
【问题描述】:

我有一个 Python 脚本,它在具有 512 个 CPU 和 4TB 内存的服务器上运行。该脚本使用 Python 的 Multiprocessing 模块通过分叉 30 个并行子进程来进行并行处理。我现在需要编写一个 PBS 脚本来从另一台服务器远程调用该脚本。我可以看到有两种方法: 1、保持脚本不变,使用qsub提交运行脚本的作业。然后脚本将使用 Multiprocessing 模块进行并行化。 2. 将脚本改为串行处理,然后使用 PBS 提交 30 个不同参数的作业进行并行化。

谁能给我一些关于不同方法的利弊的线索?谢谢。

【问题讨论】:

    标签: python pbs python-multiprocessing torque


    【解决方案1】:

    据我所见,每种方法的优缺点都不是很重要,因为无论哪种方式,您都在运行多个单独的作业,而不是单个 512 进程 MPI 作业。

    由于 Torque 是您工作流程中的一个新部分,您需要确定要使用的队列以及对该队列设置的限制。限制通常由管理员设置,并且可以设置为有利于少量大型作业,第一种方法,或大量小型作业,第二种方法。跑步

    qmgr -c 'p s'
    

    将向您展示其中的一些信息,但与管理员交谈会让您了解他们打算如何使用该系统,并希望让您对如何运行您的工作有所了解。

    如果您发现没有设置任何限制,您可能要考虑使用大量小作业的方法。通过队列获得 20 个处理器的作业比让 200 个处理器的作业在共享系统上运行更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多