Slurm集群:配置并非所有核心都具有相同数量线程的节点



我有一个新节点,我正试图将它添加到我的Slurm集群中。新机器上的核心并不都有相同数量的线程:6个核心每个有2个线程,4个核心每个都有1个线程,总共有16个CPU。这由lscpu -e:显示

CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ   MINMHZ
0    0      0    0 0:0:0:0          yes 6300.0000 800.0000
1    0      0    0 0:0:0:0          yes 6300.0000 800.0000
2    0      0    1 1:1:1:0          yes 6300.0000 800.0000
3    0      0    1 1:1:1:0          yes 6300.0000 800.0000
4    0      0    2 2:2:2:0          yes 6300.0000 800.0000
5    0      0    2 2:2:2:0          yes 6300.0000 800.0000
6    0      0    3 3:3:3:0          yes 6300.0000 800.0000
7    0      0    3 3:3:3:0          yes 6300.0000 800.0000
8    0      0    4 4:4:4:0          yes 6300.0000 800.0000
9    0      0    4 4:4:4:0          yes 6300.0000 800.0000
10    0      0    5 5:5:5:0          yes 6300.0000 800.0000
11    0      0    5 5:5:5:0          yes 6300.0000 800.0000
12    0      0    6 6:6:6:0          yes 3600.0000 800.0000
13    0      0    7 7:7:6:0          yes 3600.0000 800.0000
14    0      0    8 8:8:6:0          yes 3600.0000 800.0000
15    0      0    9 9:9:6:0          yes 3600.0000 800.0000

当添加到slurm.conf时,我通常只从lscpu复制信息。对于我的新机器,信息是:

CPU(s):                          16
On-line CPU(s) list:             0-15
Thread(s) per core:              1
Core(s) per socket:              10
Socket(s):                       1

我在slurm.conf后面附加了以下内容:NodeName=MYNODE CPUs=16 SocketsPerBoard=1 CoresPerSocket=10 ThreadsPerCore=1。然而,这引发了以下错误:

error: NodeNames=MYNODE CPUs=16 match no Sockets, Sockets*CoresPerSocket or Sockets*CoresPerSocket*ThreadsPerCore. Resetting CPUs.

在内部,slurm似乎希望节点的核心具有相同数量的线程。如何为我的新节点正确配置slurm.conf

尝试删除SocketsPerBoard=1 CoresPerSocket=10 ThreadsPerCore=1并仅指定NodeName=MYNODE CPUs=16。如果同时指定CPUSSocketsCoresPerSocket等,Slurm将尝试理解CPU的值。如果你没有指定它们,Slurm将接受你给它的CPU值。

最新更新