SLURM高级配置教程

SLURM高级配置教程

目前由Slurm管理的一些大型系统的示例包括:

  • 美国橡树岭国家实验室(ORNL)的Frontier,拥有8,699,904个核心。
  • 中国国防科技大学的天河-2,拥有4,981,760个核心。
  • 国家能源研究科学计算中心(NERSC)的Perlmutter,拥有761,856个核心。

在系统规模大几个数量级的情况下,Slurm的运行已经通过仿真得到了验证。在这样的规模下获得最佳性能确实需要一些调整。

性能

以下是执行一个打印“Hello world”并退出的MPI程序的时间,包括处理输出的时间。由于硬件、软件和配置的差异,你的性能可能会有所不同。

  • 在122,880个计算节点的BlueGene/Q上执行1,966,080个任务:322秒
  • 在15,000个计算节点的Linux集群上执行30,000个任务:30秒

系统配置

一些系统配置参数可能需要修改,以支持大量打开的文件和有大量信息突发的TCP连接。可以使用/etc/rc.d/rc.local/etc/sysctl.conf脚本进行修改,这样在重启后能够保留修改。

  • **/proc/sys/fs/file-max:**同时打开的文件的最大数量,我们推荐的限制是至少32832个。
  • **/proc/sys/net/ipv4/tcp_max_syn_backlog:**保留在内存中的SYN请求的最大数量,我们还没有从3路握手中获得第三个数据包。对于内存超过128Mb的系统,默认值为1024,对于低内存机器,默认值为128。如果服务器出现过载,可以尝试增加这个数字。
  • **/proc/sys/net/ipv4/tcp_syncookies:**当内核为特定套接字的同步积压队列溢出时,用于向主机发送syncookies。默认值是0,它禁用了这个功能。将该值设置为1。
  • **/proc/sys/net/ipv4/tcp_synack_retries:**对一个SYN请求重发多少次SYN,ACK回复。换句话说,这告诉系统要尝试建立一个由其他主机启动的被动TCP连接多少次。这个变量是一个整数,但在任何情况下都不应该大于255。每次重传大约需要30到40秒。默认值为5,这导致被动TCP连接的超时时间约为180秒,一般来说是令人满意的。
  • **/proc/sys/net/core/somaxconn:**socket listen()积压的限制,在用户空间称为SOMAXCONN。默认值为128。这个值应该被大幅提高,以支持请求的爆发。例如,为了支持1024个请求的爆发,将somaxconn设置为1024。
  • **/proc/sys/net/ipv4/ip_local_port_range:**识别可用的外部端口,这些端口用于许多Slurm通信。这个值可以提高以支持大量的通信。例如,将数值 "32768 65535 "写进ip_local_port_range文件,以使该范围的端口可用。

发送队列长度(txqueuelen)可能也需要用ifconfig命令来修改,对于一个拥有非常大的集群的站点来说,推荐将值设置为4096(例如,ifconfig txqueuelen 409)。

线程/进程限制

在SLES 12 SP2(用于Cray系统,带有CLE 6.0UP04,预计在2017年中期发布)中新引入了一个限制。SLES 12 SP2中附带的systemd版本包含了对

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值