В нашем кластере мы определяем QOS для каждой учетной записи Slurm (учетной записи, имеющей одного или нескольких пользователей). Мы даем определенное количество c процессорных часов для каждой учетной записи, устанавливая GrpTRESMins = cpu = x минут. Например, скажем, моя учетная запись называется account1 :
sacctmgr modify qos qos_account1 set GrpTRESMins=cpu=10000
, поэтому, когда эта сумма будет достигнута, новые задания не могут быть запущены с использованием этой учетной записи.
Поправьте меня, если я ошибаюсь, но если я проверю значение UsageRaw с помощью следующего запроса:
scontrol -o show assoc_mgr accounts=account1 flags=assoc
это даст мне время ЦП (в секундах), которое было использовано, верно? Если я преобразую оставшееся время в минутах, это именно то, что осталось до того, как я не смогу выполнить какое-либо новое задание.
Однако, если я запускаю:
sreport cluster AccountUtilizationByUser start=2013-01-01 end=2020-04-01 accounts=account1 -t minutes
, я получаю другое время для столбца «Используется». В зависимости от учетной записи, оно может быть выше или ниже значения UsageRaw.
Так что мне было интересно, может кто-нибудь сказать мне, действительно ли GrpTRESMins - это способ установить ограничения по времени процессора для учетной записи? Почему такая разница между UsageRaw и столбцом sreport «Used»?
Спасибо за вашу помощь.