Отображение использованных часов процессора со слёрмом

У меня есть учетная запись пользователя на суперкомпьютере, где задания обрабатываются с грязью.

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

Я знаю, что есть все эти команды, такие как sacct, sreport, sshare и т. Д., Но кажется, что нет простой команды, которая отображает использованные часы процессора.

Кто-нибудь может мне помочь?

1 ответ

Решение

Как прокомментировали другие, святость должна дать вам эту информацию. Вам нужно будет просмотреть справочную страницу, чтобы получить информацию о прошлых работах. Вы можете указать --starttime и --endtime, чтобы ограничить ваш запрос, чтобы он соответствовал вашему распределению, когда он заканчивается / обновляется. Опции -l должны дать вам больше информации, чем вам нужно, поэтому вы можете получить меньший набор опций, указав, что вам нужно с --format.

В вашем случае правильный ответ - спросить администраторов. Вам было выделено время для рисования. Вероятно, у них есть система, которая покажет вам ваш баланс, и вы сможете согласовать свой баланс с выходом сакрального. Кроме того, если используемая вами система имеет разные типы узлов, такие как большой объем памяти, графический процессор, MIC или старый, они, вероятно, будут по-разному взимать плату за эти ресурсы.

Вы можете получить обзор использованных часов процессора с помощью следующего:

sacct -SYYYY-mm-dd -u username -ojobid,start,end,alloccpu,cputime | column -t

Вы можете рассчитать общее умножение CPUTime SBU на AllocCPU, что означает умножение общего времени ЦП (sysem+user) на количество используемых ЦП.

Пример:

    JobID         NodeList         State       Start                End                  AllocCPUS   CPUTime
------------  ---------------  ----------  -------------------  -------------------  ----------  ----------
6328552       tcn[595-604]     CANCELLED+  2019-05-21T14:07:57  2019-05-23T16:48:15  240         506-17:12:00
6328552.bat+  tcn595           CANCELLED   2019-05-21T14:07:57  2019-05-23T16:48:16  24          50-16:07:36
6328552.0     tcn[595-604]     FAILED      2019-05-21T14:10:37  2019-05-23T16:48:18  240         506-06:44:00
6332520       tcn[384,386,45+  COMPLETED   2019-05-23T16:06:04  2019-05-24T00:26:36  72          25-00:38:24
6332520.bat+  tcn384           COMPLETED   2019-05-23T16:06:04  2019-05-24T00:26:36  24          8-08:12:48
6332520.0     tcn[384,386,45+  COMPLETED   2019-05-23T16:06:09  2019-05-24T00:26:33  60          20-20:24:00
6332530       tcn[37,41,44,4+  FAILED      2019-05-23T17:11:31  2019-05-25T09:13:34  240         400-08:12:00
6332530.bat+  tcn37            FAILED      2019-05-23T17:11:31  2019-05-25T09:13:34  24          40-00:49:12
6332530.0     tcn[37,41,44,4+  CANCELLED+  2019-05-23T17:11:35  2019-05-25T09:13:34  240         400-07:56:00

Поля показаны на странице руководства. Они могут быть показаны как -oOPTION (в нижнем регистре или в правильной записи POSIX --format='Option,AnotherOption...' (список в человеке).

Все идет нормально. Но здесь есть большая оговорка:

То, что вы видите здесь, идеально подходит для того, чтобы получить представление о том, что вы запустили или чего ожидать с точки зрения ЦП / часов. Но это не обязательно будет отражать ваш реальный бюджетный статус, поскольку во многих случаях каждый узел / раздел может иметь дополнительный параметр - вес, который является набором параметров для целей учета, а не частью SLURM. Например, узлы GPU могут иметь значение веса x3, что означает, что каждый GPU/ час измеряется как 3 SBU вместо 1 для бюджетных целей. Что я хочу сказать, так это то, что вы можете использовать sacct для получения информации о времени процессора, но это не обязательно будет отражать, сколько кредитов SBU у вас осталось.

Другие вопросы по тегам