SvABA (formerly Snowman) is an SV and indel caller for short-read BAMs. It performs genome-wide local assembly with a vendored SGA, realigns contigs with BWA-MEM, and scores variants by reassembled read support. Tumor/normal, trios, and single-sample modes are supported; variants are emitted as VCF plus a verbose tab-delimited companion (bps.txt.gz) that carries the full per-sample evidence.
Allocate an interactive session and run the program.
Sample session (user input in bold):
[user@biowulf]$ sinteractive
salloc.exe: Pending job allocation 46116226
salloc.exe: job 46116226 queued and waiting for resources
salloc.exe: job 46116226 has been allocated resources
salloc.exe: Granted job allocation 46116226
salloc.exe: Waiting for resource configuration
salloc.exe: Nodes cn3144 are ready for job
[user@cn3144 ~]$ module load svaba
[user@cn3144 ~]$ svaba run -t tumor.bam -n normal.bam -G ref.fa -a my_run -p 2 \
-k chr22 \
--blacklist tracks/hg38.combined_blacklist.bed
[user@cn3144 ~]$ exit
salloc.exe: Relinquishing job allocation 46116226
[user@biowulf ~]$
Create a batch input file (e.g. svaba.sh). For example:
#!/bin/bash
set -e
module load svaba
svaba run -t tumor.bam -n normal.bam -G ref.fa -a my_run -p $SLURM_CPUS_PER_TASK \
-k chr22 \
--blacklist tracks/hg38.combined_blacklist.bed
Submit this job using the Slurm sbatch command.
sbatch [--cpus-per-task=#] [--mem=#] svaba.sh
Create a swarmfile (e.g. svaba.swarm). For example:
svaba run -t tumor1.bam -n normal1.bam -G ref.fa -a run1 -p $SLURM_CPUS_PER_TASK \
-k chr22 --blacklist tracks/hg38.combined_blacklist.bed
svaba run -t tumor2.bam -n normal2.bam -G ref.fa -a run2 -p $SLURM_CPUS_PER_TASK \
-k chr22 --blacklist tracks/hg38.combined_blacklist.bed
svaba run -t tumor3.bam -n normal3.bam -G ref.fa -a run3 -p $SLURM_CPUS_PER_TASK \
-k chr22 --blacklist tracks/hg38.combined_blacklist.bed
Submit this job using the swarm command.
swarm -f svaba.swarm [-g #] [-t #] --module svabawhere
| -g # | Number of Gigabytes of memory required for each process (1 line in the swarm command file) |
| -t # | Number of threads/CPUs required for each process (1 line in the swarm command file). |
| --module svaba | Loads the SvABA module for each subjob in the swarm |