Код: Выделить всё
#!/bin/bash
#SBATCH -N 12
#SBATCH -C gpu
#SBATCH -G 48
#SBATCH -q regular
module load pytorch
srun --exact -N 1 -G 0 -n 1 --cpu_bind=cores python run_main.py
Код: Выделить всё
for i in range(N):
processes = []
for k in range(48): #i.e. one task per gpu
cmd = "srun --exact --ntasks=1 -G 1 -N 1 --cpu-bind=none python run_task.py (with a bunch of arguments depending on k, etc)"
print(cmd)
process = Popen(cmd, shell=True)
processes.append(process)
for process in processes:
process.wait()
#do something else depending on run_task outcomes, and then launch over GPUs again
Подробнее здесь: https://stackoverflow.com/questions/792 ... hin-python