关于Slurm的总结

* 本文主要是总结几点使用过程的问题,因为对Slurm的了解有限,所以并不全面。

* 本人主要是使用slurm进行管理Kaldi任务。

0、相关的资源:

1、配置文件:/etc/slurm/slurm.conf

1. SelectTypeParameters会控制Kaldi的子任务如何运行

Proctracktype=proctrack/linuxproc
CacheGroups=0
ReturnToService=2
SelectType=select/cons_res
SelectTypeParameters=CR_Core,CR_CORE_DEFAULT_DIST_BLOCK
#SelectTypeParameters=CR_Core,CR_ONE_TASK_PER_CORE,CR_CORE_DEFAULT_DIST_BLOCK
#SelectTypeParameters=CR_CPU
TaskPlugin=task/affinity
TaskPluginParam=Sched
KillOnBadExit=1

2. 实际使用服务器时,曾经遇到过RealMemory减小的情况,导致配置文件与实际硬件不匹配,slurm运行出现问题。或是服务器硬件升级、硬件变更,或是关闭、开启Intel超线程。这些情况可能需要重新配置slurm的配置文件。以下就是关于硬件参数的配置。这些参数信息,建议使用slurmd -C命令得到。

NodeName=dell-PowerEdge-T630 CPUs=28 Boards=1 SocketsPerBoard=2 CoresPerSocket=14 ThreadsPerCore=1 RealMemory=386746 Gres=gpu:4
PartitionName=mipitalk Nodes=ALL Default=YES MaxTime=INFINITE State=UP

2、一些命令的总结:重启Slurm服务、查询Slurm状态...

1.重启Slurm:

cat slurm_restart.sh
#!/bin/bash

sudo systemctl restart slurmctld
sudo systemctl restart slurmd.service

2.查看Slurm状态:

cat slurm_status.sh
#!/bin/bash

systemctl status slurmctld && echo
systemctl status slurmd.service && echo
sinfo && echo

3.监视Slurm任务队列:

watch squeue
watch squeue -u user

 

3、遇到异常情况如何将drain状态重置

在kaldi模型训练过程中,有可能子任务异常导致任务长时间占用资源,而不能释放。进而导致Slurm进入异常状态。

step1:

sudo scontrol update NodeName=dell-PowerEdge-T630 State=DOWN Reason=hung_completing

step2:

./slurm_restart.sh

step3:

sudo scontrol update NodeName=dell-PowerEdge-T630 State=RESUME

Ref:

https://blog.csdn.net/kongxx/article/details/48193333

 

posted on 2020-07-20 03:33  hallboo  阅读(4035)  评论(0编辑  收藏  举报

导航