slurm/slurm.conf をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
slurm.confファイルを下記の様に修正する
#code(diff,nonumber){{
[root@slurm ~]# cat /etc/slurm/slurm.conf
ClusterName=cluster
SlurmctldHost=slurm # FQDNでも構わないが、search do...
# AuthType=auth/munge
AuthType=auth/slurm # slurm v23.11 以降はslurm内の...
CredType=cred/slurm
#DisableRootJobs=NO # rootによるジョブを禁止するか....
#EnforcePartLimits=NO # 投入したジョブがパーティショ...
# ALLならコマンド実行時(sbatch...
#GroupUpdateForce=0 # /etc/groupのタイムスタンプが...
#GroupUpdateTime=600 # 単位は秒. ldap/sssdでgroup情...
#JobFileAppend=0 # std/errファイルへの対処. 既定...
#JobRequeue=1 # 計算ノードが原因でジョブが異...
#JobSubmitPlugins=job_submit/lua # /etc/slurm/job_submit....
#KillOnBadExit=0 # [1](規定)はmpiプロセスで1つ...
#Licenses=matlab*4,moe:4 # ライセンス. でも特段FlexLMと...
# 「sbatch --licenses=matlab:1 ...
#MailProg=/bin/mail # jobの開始、終了、エラー時にメ...
# [--mail-type=END]の他にもBEGI...
MpiDefault=pmix # [sbatch a.sh]でa.sh内でmpirun...
# none(規定)は指定しない. pmix...
#PlugStackConfig= # 計算ノードでのジョブ実行時に...
# [required /usr/lib64/slurm/pa...
#PrivateData=jobs # 他人のジョブ情報をどこまで見...
ReturnToService=1 # 計算ノードが復活した際、0(規...
TmpFS=/scratch # 環境変数 $SLURM_TMPFS で定義...
JobContainerType=job_container/tmpfs # [/etc/slurm/job_co...
# 現実の/scratchに何...
#TrackWCKey=1 # SlurmDBDに記録されるタグを有...
# 決められたタグしか許容しない...
# あるいは[AccountingStorageEnf...
#UnkillableStepProgram= # ジョブ終了したのにゾンビとし...
ProctrackType=proctrack/cgroup
SlurmctldPidFile=/var/run/slurm/slurmctld.pid
SlurmctldPort=6817
SlurmdPidFile=/var/run/slurm/slurmd.pid
SlurmdPort=6818
SlurmdSpoolDir=/var/spool/slurm/d
SlurmUser=slurm
SlurmdUser=root
StateSaveLocation=/var/spool/slurm/ctld
SwitchType=switch/none
TaskPlugin=task/cgroup
SrunPortRange=60001-63000
# TIMERS
InactiveLimit=0
KillWait=30
MinJobAge=300
SlurmctldTimeout=120
SlurmdTimeout=300
Waittime=0
# SCHEDULING
#DefMemPerCPU=0 # core/threads当たりに...
#MaxMemPerCPU=0 # 最大メモリ/core. 1c...
SchedulerType=sched/backfill
SelectType=select/cons_tres
SelectTypeParameters=CR_Core # SelectTypeParameters...
# SelectTypeParameters...
# JOB PRIORITY
# LOGGING AND ACCOUNTING
AccountingStorageType=accounting_storage/none
#AccountingStorageTRES=gres/gpu
AccountingStoreFlags=YES
JobCompType=jobcomp/none
JobAcctGatherFrequency=30
JobAcctGatherType=jobacct_gather/cgroup
SlurmctldDebug=info
SlurmctldLogFile=/var/log/slurmctld.log
SlurmdDebug=info
SlurmdLogFile=/var/log/slurmd.log
GresTypes=gpu
# COMPUTE NODES
NodeName=n1 CPUs=1 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=n2 CPUs=2 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=n3 CPUs=4 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=s CPUs=8 Boards=1 SocketsPerBoard=1 CoresPerSoc...
# RealMemoryの値は、実際の計算機の値より小さくていい. O...
# 128GBで32coreのマシンなら128GBのうち8GBをOS向けとして...
# NodeName=gpu1 CPUs=32 ... RealMemory=122880 Gres=gpu:4
# ここで1core当たり2GBを最低として「DefMemPerCPU=2048」...
PartitionName=workq Nodes=ALL Default=YES MaxTime=INFINIT...
SlurmctldParameters=enable_configless
# POWER SAVE
#SuspendProgram= # SuspendTime(秒)の間、ジョブが来な...
#SuspendTime= # 単位は秒. idle状態がこの時間経過す...
#SuspendTimeout= # 単位は秒. SuspendProgramが実行後Su...
#ResumeProgram= # 眠った計算ノードを叩き起こすスクリ...
#ResumeTimeout= # 単位は秒. ResumeProgram が実行され...
#SuspendExcNodes= # 絶対眠らないノード
#SuspendExcParts= # 絶対に眠らないqueue. このqueueに含...
#SuspendRate= # 1分ごとに眠っていいノード数. 値が...
[root@slurm ~]#
}}
***複数のqueueを作る [#mf8ab190]
pbsとかではqueueというが、slurmでは「Partition」って言う...
上記の「PartitionName=workq Nodes=ALL Default=YES MaxTime...
これをGPUノードだけ、CPUノードだけにするなら
#code(nonumber){{
#PartitionName=workq Nodes=ALL Default=YES MaxTime=INFINI...
PartitionName=cpu Nodes=n2 MaxTime=INFINI...
PartitionName=gpu Nodes=n1,n2,s MaxTime=INFINI...
}}
とNodesでカンマでそのノードを指定します。反映させるには「...
どちらも「Default=YES」にしていないので、この場合はqueue...
参照先 [[https://oracle-japan.github.io/ocitutorials/hpc/...
***めも [#zd1327f0]
「ReturnToService」の値. DOWNとされた計算ノードが立ち上が...
値「0」は計算ノードが立ち上がってslurmdで通信出来ても手...
値「1」はメモリ不足とか予期しない再起動でDONWとされたな...
値「2」はslurm.confに記載されたノード構成なら利用可能に...
終了行:
slurm.confファイルを下記の様に修正する
#code(diff,nonumber){{
[root@slurm ~]# cat /etc/slurm/slurm.conf
ClusterName=cluster
SlurmctldHost=slurm # FQDNでも構わないが、search do...
# AuthType=auth/munge
AuthType=auth/slurm # slurm v23.11 以降はslurm内の...
CredType=cred/slurm
#DisableRootJobs=NO # rootによるジョブを禁止するか....
#EnforcePartLimits=NO # 投入したジョブがパーティショ...
# ALLならコマンド実行時(sbatch...
#GroupUpdateForce=0 # /etc/groupのタイムスタンプが...
#GroupUpdateTime=600 # 単位は秒. ldap/sssdでgroup情...
#JobFileAppend=0 # std/errファイルへの対処. 既定...
#JobRequeue=1 # 計算ノードが原因でジョブが異...
#JobSubmitPlugins=job_submit/lua # /etc/slurm/job_submit....
#KillOnBadExit=0 # [1](規定)はmpiプロセスで1つ...
#Licenses=matlab*4,moe:4 # ライセンス. でも特段FlexLMと...
# 「sbatch --licenses=matlab:1 ...
#MailProg=/bin/mail # jobの開始、終了、エラー時にメ...
# [--mail-type=END]の他にもBEGI...
MpiDefault=pmix # [sbatch a.sh]でa.sh内でmpirun...
# none(規定)は指定しない. pmix...
#PlugStackConfig= # 計算ノードでのジョブ実行時に...
# [required /usr/lib64/slurm/pa...
#PrivateData=jobs # 他人のジョブ情報をどこまで見...
ReturnToService=1 # 計算ノードが復活した際、0(規...
TmpFS=/scratch # 環境変数 $SLURM_TMPFS で定義...
JobContainerType=job_container/tmpfs # [/etc/slurm/job_co...
# 現実の/scratchに何...
#TrackWCKey=1 # SlurmDBDに記録されるタグを有...
# 決められたタグしか許容しない...
# あるいは[AccountingStorageEnf...
#UnkillableStepProgram= # ジョブ終了したのにゾンビとし...
ProctrackType=proctrack/cgroup
SlurmctldPidFile=/var/run/slurm/slurmctld.pid
SlurmctldPort=6817
SlurmdPidFile=/var/run/slurm/slurmd.pid
SlurmdPort=6818
SlurmdSpoolDir=/var/spool/slurm/d
SlurmUser=slurm
SlurmdUser=root
StateSaveLocation=/var/spool/slurm/ctld
SwitchType=switch/none
TaskPlugin=task/cgroup
SrunPortRange=60001-63000
# TIMERS
InactiveLimit=0
KillWait=30
MinJobAge=300
SlurmctldTimeout=120
SlurmdTimeout=300
Waittime=0
# SCHEDULING
#DefMemPerCPU=0 # core/threads当たりに...
#MaxMemPerCPU=0 # 最大メモリ/core. 1c...
SchedulerType=sched/backfill
SelectType=select/cons_tres
SelectTypeParameters=CR_Core # SelectTypeParameters...
# SelectTypeParameters...
# JOB PRIORITY
# LOGGING AND ACCOUNTING
AccountingStorageType=accounting_storage/none
#AccountingStorageTRES=gres/gpu
AccountingStoreFlags=YES
JobCompType=jobcomp/none
JobAcctGatherFrequency=30
JobAcctGatherType=jobacct_gather/cgroup
SlurmctldDebug=info
SlurmctldLogFile=/var/log/slurmctld.log
SlurmdDebug=info
SlurmdLogFile=/var/log/slurmd.log
GresTypes=gpu
# COMPUTE NODES
NodeName=n1 CPUs=1 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=n2 CPUs=2 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=n3 CPUs=4 Boards=1 SocketsPerBoard=1 CoresPerSoc...
NodeName=s CPUs=8 Boards=1 SocketsPerBoard=1 CoresPerSoc...
# RealMemoryの値は、実際の計算機の値より小さくていい. O...
# 128GBで32coreのマシンなら128GBのうち8GBをOS向けとして...
# NodeName=gpu1 CPUs=32 ... RealMemory=122880 Gres=gpu:4
# ここで1core当たり2GBを最低として「DefMemPerCPU=2048」...
PartitionName=workq Nodes=ALL Default=YES MaxTime=INFINIT...
SlurmctldParameters=enable_configless
# POWER SAVE
#SuspendProgram= # SuspendTime(秒)の間、ジョブが来な...
#SuspendTime= # 単位は秒. idle状態がこの時間経過す...
#SuspendTimeout= # 単位は秒. SuspendProgramが実行後Su...
#ResumeProgram= # 眠った計算ノードを叩き起こすスクリ...
#ResumeTimeout= # 単位は秒. ResumeProgram が実行され...
#SuspendExcNodes= # 絶対眠らないノード
#SuspendExcParts= # 絶対に眠らないqueue. このqueueに含...
#SuspendRate= # 1分ごとに眠っていいノード数. 値が...
[root@slurm ~]#
}}
***複数のqueueを作る [#mf8ab190]
pbsとかではqueueというが、slurmでは「Partition」って言う...
上記の「PartitionName=workq Nodes=ALL Default=YES MaxTime...
これをGPUノードだけ、CPUノードだけにするなら
#code(nonumber){{
#PartitionName=workq Nodes=ALL Default=YES MaxTime=INFINI...
PartitionName=cpu Nodes=n2 MaxTime=INFINI...
PartitionName=gpu Nodes=n1,n2,s MaxTime=INFINI...
}}
とNodesでカンマでそのノードを指定します。反映させるには「...
どちらも「Default=YES」にしていないので、この場合はqueue...
参照先 [[https://oracle-japan.github.io/ocitutorials/hpc/...
***めも [#zd1327f0]
「ReturnToService」の値. DOWNとされた計算ノードが立ち上が...
値「0」は計算ノードが立ち上がってslurmdで通信出来ても手...
値「1」はメモリ不足とか予期しない再起動でDONWとされたな...
値「2」はslurm.confに記載されたノード構成なら利用可能に...
ページ名:
1