SLURM :Как отправить несколько параллельных кодов OpenMP в сценарий задания

Во-первых, вы можете удалить их так же, как установили, с помощью pip.

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

Затем, продвигаясь вперед, либо используйте pacman для установки всех ваших пакетов python (ruby, node, любых )пакетов, либо используйте переключатель --userдля установки в $HOME.

0
02.08.2020, 17:51
1 ответ

Этот ответ немного запоздал, но он все еще может быть полезен другим:

Проблема здесь, я думаю, заключается в том, что вы запрашиваете 4 задачи с --ntasks -на -node=4 и просите каждый процесс Python запустить 2 задачи (srun -n 2 ). Вместо этого вы хотите, чтобы каждый процесс Python был 1 задачей, выполняющей 2 потока.

Попробуйте с:

#!/bin/bash
#SBATCH -N 1
#SBATCH --ntasks-per-node=4
#SBATCH --cpus-per-task=2

export OMP_NUM_THREADS=2

srun -n 1 -c 2 python doSVD 1 &
srun -n 1 -c 2 python doSVD 2 &
srun -n 1 -c 2 python doSVD 3 &
srun -n 1 -c 2 python doSVD 4 &

wait

Я думаю -n 1по умолчанию, но это не помешает написать. Если это все еще не работает, мы можем попробовать массивы заданий.

1
18.03.2021, 23:15

Теги

Похожие вопросы