Puncte:2

Gestionarea memoriei SLURM la instalarea cu un singur nod (probleme)

drapel it

Am configurarea SLURM pe un singur nod CentOS 7 cu 64 de nuclee (128 CPU-uri). Am folosit SLURM pentru a trimite joburi cu succes folosind ambele srun și lot. Cu toate acestea, cu avertismentul că nu aloca memorie. Pot aloca CPU-uri, dar nu și memorie.

Când încerc să aloc memorie, primesc

sbatch: eroare: specificația memoriei nu poate fi satisfăcută
sbatch: eroare: Trimiterea jobului în lot a eșuat: Configurația nodului solicitată nu este disponibilă

Deci asta va rula

#!/bin/bash
#SBATCH --job-name=nume
#SBATCH --output=name.txt
#SBATCH --cpus-per-task=10
#SBATCH --time=6-59:00

Dar asta nu va rula

#!/bin/bash
#SBATCH --job-name=nume
#SBATCH --output=name.txt
#SBATCH --cpus-per-task=10
#SBATCH --mem=2000M
#SBATCH --time=6-59:00

în mod similar, acesta nu va rula

#!/bin/bash
#SBATCH --job-name=nume
#SBATCH --output=name.txt
#SBATCH --cpus-per-task=10
#SBATCH --mem-per-cpu=2000M
#SBATCH --time=6-59:00

Ambele dau mesajul de eroare de mai sus.

Aceasta este o durere pentru că acum, când încep să maximizez utilizarea procesorului, am locuri de muncă care se ciocnesc și eșuează și cred că este pentru că nu există o alocare adecvată a memoriei, așa că programele se vor bloca cu aloc rău mesaje de eroare sau pur și simplu opriți rularea. Am folosit destul de mult SLURM pe clusterele Compute Canada, iar alocarea memoriei nu a fost nicio problemă. Problema este că rulez SLURM pe un singur nod care este și nodul de conectare? sau că, în esență, folosesc setările implicite și trebuie să fac ceva de administrare?

Am încercat să folosesc diferite unități pentru memorie, cum ar fi 2G Decat 2000M si am incercat sa folosesc 1024M la fel, dar fără niciun rezultat.

Fișierul slurm.conf este

ClusterName=linux
ControlMachine=nume fals

ControlAddr=adresă inactivă
#BackupController=
#BackupAddr=
#
#SlurmUser=slurm
SlurmdUser=rădăcină
SlurmctldPort=port fals
SlurmdPort=dummyport+1
AuthType=auth/munge
#JobCredentialPrivateKey=
#JobCredentialPublicCertificate=
StateSaveLocation=/var/lib/slurm
SlurmdSpoolDir=/tmp/slurmd
SwitchType=comutator/niciunul
MpiDefault=niciunul
SlurmctldPidFile=/var/run/slurmctld.pid
SlurmdPidFile=/var/run/slurmd.pid
ProctrackType=proctrack/pgid
#PluginDir=
#FirstJobId=
ReturnToService=1
#MaxJobCount=
#PlugStackConfig=
#PropagatePrioProcess=
#PropagateResourceLimits=
#PropagateResourceLimitsExcept=
#Prolog=
#Epilog=
#SrunProlog=
#SrunEpilog=
#TaskProlog=
#TaskEpilog=
#TaskPlugin=
#TrackWCKey=nu
#TreeWidth=50
#TmpFS=
#UsePAM=
#
# TIMER
SlurmctldTimeout=300
SlurmdTimeout=300
InactiveLimit=0
MinJobAge=300
KillWait=30
Timp de așteptare=0
#
# PROGRAMARE
SchedulerType=programat/reumplere
#SchedulerAuth=
#SchedulerPort=
#SchedulerRootFilter=
SelectType=select/cons_res
SelectTypeParameters=CR_CORE
#FastSchedule=1
#PriorityType=prioritate/multifactor
#PriorityDecayHalfLife=14-0
#PriorityUsageResetPeriod=14-0
#PriorityWeightFairshare=100000
#PriorityWeightAge=1000
#PriorityWeightPartition=10000
#PriorityWeightJobSize=1000
#PriorityMaxAge=1-0
#
# LOGARE
#DebugFlags=gres
SlurmctldDebug=3
#SlurmctldLogFile=
SlurmdDebug=3
#SlurmdLogFile=
JobCompType=jobcomp/none
#JobCompLoc=
#
# CONTABILITATE
#JobAcctGatherType=jobacct_gather/linux
#JobAcctGatherFrequency=30
#
#AccountingStorageType=accounting_storage/slurmdbd
#AccountingStorageHost=
#AccountingStorageLoc=
#AccountingStoragePass=
#AccountingStorageUser=
#
# NOduri de calcul
GresTypes=gpu
NodeName=dummyname CoresPerSocket=64 Sockets=1 ThreadsPerCore=2 State=IDLE Gres=gpu:2
#NodeName=dummyname CoresPerSocket=64 Sockets=1 ThreadsPerCore=2 State=IDLE
PartitionName=toate Nodurile=dummyname Implicit=YES Shared=Da MaxTime=INFINITE State=UP
drapel in
Vă rog să vă împărtășiți slurm.conf și cgroup.conf?
Wesley avatar
drapel it
@GeraldSchneider Am adăugat fișierul `slurm.conf`. Nu pare să existe un „cgroup.conf”. `/slurm/` are un fișier `cgroup.conf.example`, dar asta este tot.
drapel in
Nu ați definit nicio configurație de memorie pentru nodul dvs. Încercați să adăugați parametrul `RealMemory=` la linia dvs. `NodeName=`.
Wesley avatar
drapel it
@GeraldSchneider încă primesc eroarea. Am adăugat `RealMemory=200000` la linie
Wesley avatar
drapel it
De asemenea, primesc aceeași eroare când încerc să adaug SelectTypeParameters=CR_CPU_Memory și alte variante care implică memoria
Wesley avatar
drapel it
Mai sunt idei @GeraldSchneider? 50 de puncte nu este mult, dar sunt puncte sincere :)
Nathan Musoke avatar
drapel cn
@wesley, am putut remedia ceea ce ar putea fi aceeași eroare setând „MaxMemPerNode”. Consultați https://slurm.schedmd.com/cons_res_share.html

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.