www.tech-doc.cn STDSIMManager端口策略

STDSIMManager端口策略


在并行计算中,所有可能位于不同机器上的Simcenter Amesim进程都通过网络进行通信。

STDSIMBatch和STDSIMExplore分别是批量运行和设计探索研究的主控程序。STDSIMManager是在所有远程计算节点上启动的服务,用于处理节点上的运行任务。STDSIMManager管理多个执行仿真运行的子进程(STDSIMDaemon)。STDSIMManager和STDSIMDaemon使用TCP端口与主控进程通信。因此必须在集群网络上为STDSIM可执行文件启用TCP入站通信(例如:在Windows上设置端口或特定可执行程序的防火墙例外)。

多个STDSIMManager可以在同一节点上同时运行,但需使用不同的TCP端口。只要STDSIMManager使用不同的TCP端口,多个用户可以共享一个节点。建议让Simcenter Amesim自动分配TCP端口。另一种方式是进行端口规划,为每个用户分配特定的基础TCP端口。

为应对多个用户共享端口范围的情况,可采用将特定端口号分配给不同用户的策略(将端口作为资源管理),每个用户在其分配的端口上运行仿真。

警告:

STDSIMManager实际上会为工作节点上的每个任务部署。任务结束时,STDSIMManager进程会释放端口,但操作系统有时会延迟几秒才释放端口。这意味着新的STDSIMManager(来自随后在同一节点上启动的新任务)将无法绑定该端口(因为端口仍被占用),导致任务失败或资源不足。为避免这种情况,建议运行时的端口间隔大于0。

错误追踪器AMEHPCError会捕获此错误。

图2-1. 单节点上多个STDSIMManager正确使用端口的示例