因此,我需要将计算密集型作业(深度神经网络训练)提交给一个扭矩集群,以缩短计算时间,我需要在活动节点之间每隔几分钟交换几个大型浮点数阵列,因为节点需要在最新版本的神经网络上工作,以便更好地训练它。
我想知道是否有任何良好的通信选项,至少告诉每个活动作业的姐妹作业的ips,这样它就可以通过tcp连接到她们。节点不能访问internet,我们不能让守护进程在作业提交服务器上工作。
我看到的唯一选择是:
发布于 2015-07-08 17:00:00
根据集群的体系结构,有多种方式在集群上的节点之间交换信息。Torque是一个资源管理器,所以如果作业是使用批处理脚本提交到集群的,那么应该有几个环境变量可以为您提供作业中使用的节点的主机名或IP地址。
查找IP地址和/或主机名的确切语法将取决于集群上使用的调度器/工作负载管理器和Torque。此链接包含PBS工程工作负载管理器的文档。
节点之间的并行通信可以通过多种方式实现,部分取决于集群中可用的硬件。使用MPI是并行化代码以便在集群上使用的最常见方法之一,许多实现支持多个高性能结构/互连系统(如Infiniband )。对不同类型的并行性的一些有用的介绍可以找到这里。
作为MPI的替代方案,远程直接内存访问(RDMA)可以用来在节点之间传递和访问信息。如果集群有Infiniband网络适配器,从供应商那里查看IB-谓词API将是在节点之间传递数据的额外选项。
https://stackoverflow.com/questions/30873337
复制相似问题