首页 > 解决方案 > 登录节点如何与 slurm 集群中的计算节点通信?

问题描述

我刚开始使用与 Slurm Workload Manager 一起运行的计算集群。我很好奇计算节点在计算时如何与登录节点通信,因为即将运行的脚本与脚本可能读取的其他文件一起存储在登录节点中。

例如,在工作字典中,浮点数列表以可以加载的格式存储pickle。我希望在计算节点上运行的脚本如下所示:

import pickle
with open('data_list.db', 'rb') as source_file:
    data_list = pickle.load(source_file)

data_sum = sum(data_list)
print(data_sum)

如果我通过 bash 脚本提交此example.py脚本

#!/bin/bash
#SBATCH --job-name=test
#SBATCH --partition=the_partition
#SBATCH --nodes=1
#SBATCH --ntasks=6
python example.py

登录节点和计算节点到底在运行什么?

标签: pythonslurm

解决方案


Slurm 期望登录节点和计算节点都可以访问相同的网络文件系统(通常是NFS)或并行文件系统(BeeGFSLustre等),以便可以在任何计算节点的任何导出目录中读取和写入每个文件。


推荐阅读