-
Bioapplications puhti
Bioapplications puhti
Tämä opassivu sisältää vaiheittaiset ohjeet siihen, miten valittujen bio-ohjelmistojen Singularity-kontteja ajetaan Puhti-supertietokoneessa. Alla esitetyt esimerkit toimivat mallina omien räätälöityjen Singularity-ajojen rakentamiseen.
DeepVariant-työvuo
DeepVariant-työvuota (Poplin et al., Nature Biotechnology, 2018) käytetään varianttien tunnistamiseen WGS- ja WES-aineistoissa. Lisätietoja DeepVariant-ohjelmista löytyy täältä.
DeepVariant-työvuon ajamiseen tarvitaan DeepVariantin Docker-image, mallit ja testidata. Lisäksi DeepVariant-menetelmän ajamisen edellytyksiä ovat 1) referenssigenomi FASTA -muodossa ja sitä vastaava indeksitiedosto (.fai) sekä 2) kohdistettujen lukujen tiedosto BAM -muodossa ja sitä vastaava indeksitiedosto (.bai).
Muunna Docker-image Singularity-imageksi omalla koneellasi
Yksi tapa rakentaa Singularity-image on ladata DeepVariantin Docker-image paikalliseen rekisteriin ja muuntaa se sitten Singularity-imageksi. Näin voidaan välttää mahdolliset virheet, joita voi ilmetä, jos Docker-image vedetään suoraan Google-rekisteristä singularity build -komennolla. Huomaa, että nämä image-muunnokset täytyy tehdä omalla koneellasi tai virtuaalikoneessa cPoudassa, koska Puhti ei myönnä käyttäjille root-oikeuksia.
Vedä DeepVariant-image ja työnnä se paikalliseen rekisteriin seuraavasti:
sudo docker pull gcr.io/deepvariant-docker/deepvariant:0.8.0
sudo docker tag gcr.io/deepvariant-docker/deepvariant:0.8.0 localhost:5000/deepvariant:latest
sudo docker run -d -p 5000:5000 --restart=always --name registry registry:2
sudo docker push localhost:5000/deepvariant:latest
luo sitten määrittelytiedosto (deffile) seuraavasti:
Valmistele eräajokomentosarja DeepVariant-työvuon ajamiseen Puhdissa (tiedosto: deepvariant_puhti.sh)
#!/bin/bash
#SBATCH --time=00:05:00
#SBATCH --partition=test
#SBATCH --account=project_xxx
export TMPDIR=$PWD
singularity -s exec -B $PWD:/data \
deepvariant.simg \
/opt/deepvariant/bin/run_deepvariant \
--model_type=WGS \
--ref=/data/testdata/ucsc.hg19.chr20.unittest.fasta \
--reads=/data/testdata/NA12878_S1.chr20.10_10p1mb.bam \
--regions "chr20:10,000,000-10,010,000" \
--output_vcf=output.vcf.gz \
--output_gvcf=output.g.vcf.gz
Lähetä työ sbatch-komennolla
Huomaa, että DeepVariantin GPU-versiota voi käyttää seuraavalla sbatch-komentosarjalla
#!/bin/bash
#SBATCH --time=00:05:00
#SBATCH --partition=gputest
#SBATCH --gres=gpu:v100:1
#SBATCH --account=project_xxx
export TMPDIR=$PWD
singularity -s exec --nv -B $PWD:/data \
deepvariant_gpu.simg \
/opt/deepvariant/bin/run_deepvariant \
--model_type=WGS \
--ref=/data/testdata/ucsc.hg19.chr20.unittest.fasta \
--reads=/data/testdata/NA12878_S1.chr20.10_10p1mb.bam \
--regions "chr20:10,000,000-10,010,000" \
--output_vcf=output.vcf.gz \
--output_gvcf=output.g.vcf.gz
DeepVariant interaktiivisena työnä Puhdissa
Singularity-kontteja voi ajaa myös interaktiivisessa tilassa. Esimerkiksi DeepVariant voidaan ajaa seuraavasti:
Lataa ja pura DeepVariant-kansio, joka sisältää datan ja Singularity-imaget, kirjautumissolmulla
Käynnistä sitten interaktiivinen komentotulkki ja anna pyydetyt parametrit päätteen kehotteiden mukaisesti Käynnistä interaktiivinen Singularity-istunto Suorita varsinaiset työvuon komennot Singularity-istunnossa Poistu Singularity-istunnosta ja interaktiivisesta eräajotyöstä