Prioritete oddanih poslov
Računski viri HPC Vega bi naj bili na pravičen način razporejeni med vsemi projekti in uporabniki. Zato so vsi sodelujoči uporabniki upravičeni do enakih pravil glede razpoložljivosti sredstev in čakalnih dob pri oddaji poslov. Ta sistem je vzpostavljen za spodbujanje uporabnikov, da časovno uravnotežijo svoje oddaje poslov in da sistem prepreči preveliko prednost uporabnikov, ki ne uravnotežijo virov. Tako noben uporabnik ne more na gruči doseči preveliko prevlado.
Slurm redno izračunava prioritete poslov in jih posodablja, da odražajo nenehne spremembe v situaciji. Na primer, če je prioriteta konfigurirana tako, da upošteva preteklo uporabo gruče s strani uporabnika, izvajajoča se opravila enega uporabnika znižajo prioriteto čakajočih opravil tega uporabnika.
Obstaja več faktorjev, ki vplivajo na prioriteto posla. Prednost opravila v danem trenutku bo utežena vsota vseh uporabljenih faktorjev.
Faktorji za opredelitev prioritet poslov (razvrščeni po teži prioritete):
-
Fairshare: je največji dejavnik pri določanju prioritete na HPC Vegi. Je merilo pretekle uporabe gruče s strani uporabnika. Dejansko spremlja razliko med obljubljenim deležem računalniškega vira in količino sredstev, ki jih je porabil uporabnik. Uporabniki z višjo Fair share oceno nato dobijo večjo prednost v čakalni vrsti. Uporaba, ki je višja od pričakovane, bo običajno povzročila znižanje ocene Fair share. Bolj ekstremna kot je prekomerna uporaba, hujši je verjeten padec. In obratno.
-
Dejavniki TRES: vsak tip TRES ima svoj faktor prioritete za posel, ki predstavlja količino zahtevanega/dodeljenega tipa TRES na določeni particiji.
-
Velikost opravila: Faktor velikosti opravila je v korelaciji s številom vozlišč ali CPU-jev, ki jih posel zahteva.
-
Particija: Particija, na katero je poslan posel, določeno s parametrom --partition. Večje kot je število dodeljenih celoštevilskih prioritet, večja bo prioriteta za posle, ki zahtevajo izvajanje na tej particiji.
-
QOS: Kakovost storitve, povezana z poslom, ob oddaji posla podana s parametrom --qos. Vsakemu QOS je mogoče dodeliti celoštevilsko prioriteto. Večje kot je število, večja bo prioriteta poslov, ki zahtevajo ta QOS.
-
Starost posla: Kako dolgo je posel čakal v čakalni vrsti. Faktor starosti predstavlja dolžino časa, ko je posel stal v čakalni vrsti in je hkrati bil primern za izvajanje. Na splošno velja, da dlje kot delo čaka v čakalni vrsti, večji je faktor starosti. Vendar pa se faktor starosti za odvisni posel ne bo spremenil, dokler čaka na dokončanje posla, od katerega je odvisen.
Izračun prioritete posla je torej sledeč:
Job_priority =
(PriorityWeightFairshare) * (fair-share_factor) +
(PriorityWeightAge) * (age_factor) +
(PriorityWeightJobSize) * (job_size_factor) +
(PriorityWeightPartition) * (partition_factor) +
(PriorityWeightQOS) * (QOS_factor) +
SUM(TRES_weight_cpu * TRES_factor_cpu,
TRES_weight_<type> * TRES_factor_<type>