如何从slurm加载anaconda虚拟环境?

Hyu*_* Jo 4 bash environment anaconda slurm

我在安装了 slurm 的虚拟机上设置了 anaconda,如下所示。

base                     /root/anaconda3
upload                *  /root/anaconda3/envs/upload
Run Code Online (Sandbox Code Playgroud)

slurm 中的文件是:

#SBATCH -J vs_slurm_upload
#SBATCH -o ./out/%j_log.out
#SBATCH --ntasks=1
#SBATCH --array=0-14
FILES=(../workdir/*)

pwd
conda info --envs
source activate upload
Run Code Online (Sandbox Code Playgroud)

但是,与我设置的Anaconda设置不同,没有上传虚拟环境。

结果如下:

base                     /root/anaconda3
Run Code Online (Sandbox Code Playgroud)

为了在slurm中设置虚拟环境,我是否需要设置docker而不是在我的VM中设置它?

我还不太明白slurm。

感谢你的回复。

mer*_*erv 6

差异可能是因为~/.condarc由于未在登录模式下运行 SLURM 脚本(即,作为您的用户),因此未加载特定于用户的脚本。尝试将脚本修改为:

#!/bin/bash -l

#SBATCH -J vs_slurm_upload
#SBATCH -o ./out/%j_log.out
#SBATCH --ntasks=1
#SBATCH --array=0-14
FILES=(../workdir/*)

pwd
conda info --envs
conda activate upload
Run Code Online (Sandbox Code Playgroud)

请注意,我还更改了source activate-conda activate自 Conda v4.4 以来,以前的语法已被弃用。