📜 Пример sbatch-скрипта с ресурсами:

#!/bin/bash
#SBATCH --job-name=ml-train
#SBATCH --partition=gpu
#SBATCH --gres=gpu:1
#SBATCH --cpus-per-task=8
#SBATCH --mem=64G
#SBATCH --time=06:00:00
#SBATCH --output=logs/%j.out
 
source ~/venv/bin/activate
python train.py --model=resnet --epochs=20
 

🧠 Как понимать:

  • --gres=gpu:1 — запрос 1 GPU (можно указать тип: gpu:a100:1)

  • --cpus-per-task=8 — 8 CPU потоков, обычно соответствуют ядрам

  • --mem=64G — общее ограничение памяти на задачу

  • --mem-per-cpu=8G — альтернатива, автоматически вычислит итоговую память: 8G * CPUs


🔒 Важное:

  • Если не указать — SLURM выделит дефолтное значение, которое может быть слишком маленьким → задача упадёт.

  • Указанные ресурсы должны быть в пределах лимитов partition’а.

  • Если ты просишь больше, чем доступно → задача застрянет в PD (Resources).