У меня есть задание SLURM, которое я отправляю с sbatch
, например
sbatch --gres gpu:Tesla-V100:1 job.sh
job.sh
обучает модель на графическом процессоре V100. Сам код не регистрирует использование памяти графического процессора.
Существует ли команда SLURM для запроса пикового использования памяти графического процессора после завершения задания?
Я не уверен, что можно будет обнаружить нагрузку, вызванную запуском самого задания sbatch. Но вы можете попробовать проверить общую метрику использования вашей карты. Насколько я понимаю, для nvidia есть инструмент nvidia-smi . Я нашел другие инструменты, упомянутые в в этом вопросе .
Поэтому я бы посоветовал установить nvidia-smi и запустить его в отдельном окне терминала с помощью такой команды, как:
watch nvidia-smi
А затем запустить свою работу. Вы должны загружать изменения в вашу карту в реальном времени.
Еще одна возможность - отслеживать свою работу с помощью других профайлеров . К сожалению, у меня нет карты nvidia, и я не могу проверить ни один из этих инструментов, но я полагаю, что это поможет вам в вашем расследовании.
После разговора с сотрудниками нашей группы высокопроизводительных вычислений: похоже, что
SLURM не регистрирует использование памяти графического процессора выполняемыми заданиями, отправленными с sbatch
.
Следовательно, эту информацию нельзя восстановить с помощью какой-либо команды SLURM. Например, такая команда, как
ssacct -j [job id]
, показывает общее использование памяти, но не показывает использование памяти GPU.