Executando uma matriz de tarefas de slurm [closed]

2

Eu tenho um job_array.sh com 23 tarefas:

> angsd -i ./realigned_RSFV1A.bam -anc ./BF_genome.fa -gl 1 -doSaf 1 -doSnpStat 1 -doMajorMinor 1 -doMaf 1 -doGeno 6 -doCounts 1 -doPost 1 -nThreads 24 -out ./RSFV1A -sites ./beng_wbm_par15_varcal.pos
> angsd -i ./realigned_RSFV1B.bam -anc ./BF_genome.fa -gl 1 -doSaf 1 -doSnpStat 1 -doMajorMinor 1 -doMaf 1 -doGeno 6 -doCounts 1 -doPost 1 -nThreads 24 -out ./RSFV1B -sites ./beng_wbm_par15_varcal.pos
> angsd -i ./realigned_RSFV1C.bam -anc ./BF_genome.fa -gl 1 -doSaf 1 -doSnpStat 1 -doMajorMinor 1 -doMaf 1 -doGeno 6 -doCounts 1 -doPost 1 -nThreads 24 -out ./RSFV1C -sites ./beng_wbm_par15_varcal.pos

...

para executar em paralelo usando um script de slurm.

Estou tentando:

#!/bin/bash
#SBATCH --mail-user 
#SBATCH --mail-type=ALL
#SBATCH -p std.q
#SBATCH --exclusive
#SBATCH --oversubscribe
#SBATCH --time=24:00:00     # 24 hours
#SBATCH --output=./HET.stdout
#SBATCH --job-name=HET
#SBATCH --array=1-23
#SBATCH --export=ALL

inds="$(seq -s ' ' 1 23)"
ind=${inds[$SLURM_ARRAY_TASK_ID]}
$ind

mas não funciona

Eu também tentei:

eval $(sed "${SLURM_ARRAY_TASK_ID}q;d" ./job_array.sh)

Funciona, mas chama os trabalhos um após o outro, não em paralelo. Então, é igualmente demorado.

    
por Madza Yasodara Farias Virgens 08.09.2018 / 03:31

0 respostas

Tags