Как узнать фактическое количество процессоров, используемых скриптом? - PullRequest
0 голосов
/ 16 января 2019

Я хочу знать, сколько зарезервированных процессоров фактически использовал исполняемый скрипт, чтобы я мог оптимизировать резервирование процессора (не превышая резервные процессоры)

Например, если я выполнил скрипт с ограничениями, такими как
srun -t 60 -c 4 --mem=10000 SOMECOMMAND
После завершения задания я могу получить статистику задания, например,
sacct -l -j JOBNR

Из этой статистики я вижу потребление памяти заданием из "MaxRSS", ноЯ не могу понять, как узнать количество используемых процессоров?

"AllocCPUS" и запрашиваемые процессоры "ReqTres" всегда одинаковы.Я понимаю, что CPUTime дает мне затраченное время * ЦП, но, кажется, это всегда AllocCPUS * Истекшее время.

Я пропустил какое-то поле или все мои работы фактически использовали все ЦП, или это вообще не показывается для slurm

1 Ответ

0 голосов
/ 16 января 2019

Поле, которое вы ищете, является TotalCPU. Из справочной страницы sacct:

TotalCPU Сумма времени SystemCPU и UserCPU, используемого заданием или этапом задания.

Разделите это на CPUTime, чтобы получить эффективность.

Количество отформатированных CPUTime (истекшее время * ЦП), используемое заданием или шагом.

Slurm поставляется с Perl-скриптом для вычисления эффективности задания с именем seff (в разделе «contrib»). Смотрите здесь .

...