Created
February 21, 2020 15:56
-
-
Save philippbayer/c5bd9d2062d1383a3136e90a13453236 to your computer and use it in GitHub Desktop.
GPU-enabled DeepVariant via Singularity, not Docker
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module load singularity | |
# we have to transform the docker image into a singularity thingy. Be careful to use the GPU docker image 0.9.0-gpu, not 0.9.0 | |
# the following command doesn’t work on copyQ?? I get `mksquashfs not found`, works fine on other systems | |
singularity pull $MYGROUP/singularity/myRepository/deepvariant.sif docker://google/deepvariant:0.9.0-gpu | |
# you may have to make the above folders | |
Then, using the example data described here: https://github.com/google/deepvariant/blob/r0.9/docs/deepvariant-quick-start.md | |
INPUT_DIR="${PWD}/quickstart-testdata" | |
DATA_HTTP_DIR="https://storage.googleapis.com/deepvariant/quickstart-testdata" | |
mkdir -p ${INPUT_DIR} | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/NA12878_S1.chr20.10_10p1mb.bam | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/NA12878_S1.chr20.10_10p1mb.bam.bai | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/test_nist.b37_chr20_100kbp_at_10mb.bed | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/test_nist.b37_chr20_100kbp_at_10mb.vcf.gz | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/test_nist.b37_chr20_100kbp_at_10mb.vcf.gz.tbi | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/ucsc.hg19.chr20.unittest.fasta | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/ucsc.hg19.chr20.unittest.fasta.fai | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/ucsc.hg19.chr20.unittest.fasta.gz | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/ucsc.hg19.chr20.unittest.fasta.gz.fai | |
wget -P ${INPUT_DIR} "${DATA_HTTP_DIR}"/ucsc.hg19.chr20.unittest.fasta.gz.gzi | |
OUTPUT_DIR="${PWD}/quickstart-output" | |
mkdir -p "${OUTPUT_DIR}" | |
# Then, on Topaz within a gpu-dev or gpu queue | |
salloc -p gpuq-dev --gres=gpu:1 | |
# alternatively within a proper sbatch script of course | |
# run the actual command | |
export containerImage=$MYGROUP/singularity/myRepository/deepvariant.sif | |
srun --export=ALL singularity run --nv $containerImage /opt/deepvariant/bin/run_deepvariant --model_type=WGS --ref={INPUT_DIR}/ucsc.hg19.chr20.unittest.fasta --reads=${INPUT_DIR}/NA12878_S1.chr20.10_10p1mb.bam --regions "chr20:10,000,000-10,010,000" --output_vcf=${OUTPUT_DIR}/output.vcf.gz --output_gvcf=${OUTPUT_DIR}/output.g.vcf.gz --num_shards=1 | |
# the --nv flag is very important. without it the NVIDIA support isn't there and it complains about missing libcuda | |
# it should only run for 5 seconds or so |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment