使用 scoop 指定跨节点的工作人员分布
Specifying distribution of workers across nodes using scoop
当运行在 HPC 集群上运行 scoop 程序时,是否有一种方法可以指定跨节点的 worker 分布?
我最近才看到 scoop,到目前为止,它似乎是一个很好的工具,可以将设计为 运行 在单个计算节点上使用多处理的代码快速转换为同时利用多个节点的代码。
然而,有没有一种方法可以使用 scoop 来 运行 整个集群中每个计算节点只有一个工作人员,以便允许代码中更深层次的多线程 运行 在每个多核节点?
我知道可以使用 -n 标志指定要初始化的工作人员数量,或者使用主机文件或 --hosts 标志指定要连接的特定主机(http://scoop.readthedocs.io/en/latest/usage.html#how-to-launch-scoop-programs ) 有没有办法为此使用主机文件?如果是这样,如何在具有通常会将节点分配给程序的调度系统(例如,在本例中为扭矩)的集群上完成此操作?
如果这不能用 scoop 完成,是否可以用其他包(MPI、Parallel Python、pathos 等)完成?
刚开始自己独家报道。
您似乎可以通过主机文件指定每个主机的工作人员数量来做到这一点。
具有以下语法的主机文件:
hostname_or_ip 4
other_hostname
third_hostname 2
其中名称是系统主机名或 IP 地址,数字代表要启动的工作器数量。
参见:https://scoop.readthedocs.io/en/0.7/usage.html#hostfile-format
当运行在 HPC 集群上运行 scoop 程序时,是否有一种方法可以指定跨节点的 worker 分布?
我最近才看到 scoop,到目前为止,它似乎是一个很好的工具,可以将设计为 运行 在单个计算节点上使用多处理的代码快速转换为同时利用多个节点的代码。
然而,有没有一种方法可以使用 scoop 来 运行 整个集群中每个计算节点只有一个工作人员,以便允许代码中更深层次的多线程 运行 在每个多核节点?
我知道可以使用 -n 标志指定要初始化的工作人员数量,或者使用主机文件或 --hosts 标志指定要连接的特定主机(http://scoop.readthedocs.io/en/latest/usage.html#how-to-launch-scoop-programs ) 有没有办法为此使用主机文件?如果是这样,如何在具有通常会将节点分配给程序的调度系统(例如,在本例中为扭矩)的集群上完成此操作?
如果这不能用 scoop 完成,是否可以用其他包(MPI、Parallel Python、pathos 等)完成?
刚开始自己独家报道。
您似乎可以通过主机文件指定每个主机的工作人员数量来做到这一点。
具有以下语法的主机文件:
hostname_or_ip 4
other_hostname
third_hostname 2
其中名称是系统主机名或 IP 地址,数字代表要启动的工作器数量。
参见:https://scoop.readthedocs.io/en/0.7/usage.html#hostfile-format