Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

SPAdes

SPAdes on lyhyiden lukujen kokoaja pienille genomeille. SPAdes toimii Illumina- tai IonTorrent-lukujen kanssa ja pystyy tuottamaan hybridikokoamisia käyttäen PacBio-, Oxford Nanopore- ja Sanger-lukuja.

SPAdes (spades.py) sisältää useita erillisiä moduuleja:

  • BayesHammer – lukujen virheenkorjaustyökalu Illumina-lukuille, joka toimii hyvin sekä yksisoluisilla että tavanomaisilla aineistoilla.
  • IonHammer – lukujen virheenkorjaustyökalu IonTorrent-datalle, joka toimii myös molemmilla aineistotyypeillä.
  • SPAdes – iteratiivinen lyhyiden lukujen genomikokoamismoduuli; K:n arvot valitaan automaattisesti lukupituuden ja aineistotyypin perusteella.
  • MismatchCorrector – työkalu, joka parantaa tuloksena syntyvien kontigien ja scaffoldien mismatch- ja lyhyiden indelien määriä; tämä moduuli käyttää BWA-työkalua [Li H. and Durbin R., 2009]; MismatchCorrector on oletuksena pois käytöstä, mutta suosittelemme ottamaan sen käyttöön.

Suosittelemme ajamaan SPAdesia yhdessä BayesHammerin/IonHammerin kanssa korkealaatuisten kokoamisten saamiseksi. Jos kuitenkin käytät omaa lukujen korjaustyökaluasi, virheenkorjausmoduuli on mahdollista kytkeä pois päältä. On myös mahdollista käyttää pelkästään lukujen virheenkorjausvaihetta, jos haluat käyttää toista kokoajaa.

Yleiskäyttöisen SPAdesin lisäksi saatavilla on erityisiä SPAdes-parametrikokonaisuuksia seuraaviin tarkoituksiin:

  • Coronaspades (coronaspades.py)
  • Metaviralspades (metaviralspades.py)
  • Rnaviralspades (rnaviralspades.py)
  • Metagenomiikka (metaspades.py)
  • Plasmidikokoaminen (plasmidspades.py)
  • RNA-Seq-kokoaminen (rnaspades.py)

Katso lisätietoja SPAdesin dokumentaatiosta.

Lisenssi

Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv2 -lisenssillä.

Saatavuus

  • Puhti: 3.15.5, 4.0.0

Käyttö

Puhdissa SPAdes otetaan käyttöön lataamalla spades-moduuli.

module load spades/<version>

Käyttöohjeen saat komennolla:

spades.py -h

Kokoamistehtävät voivat vaatia erittäin paljon resursseja, joten varsinaisia SPAdes-ajoja ei tule koskaan suorittaa Puhdin kirjautumissolmuilla. Kaikissa varsinaisissa analyysitehtävissä suosittelemme ajamaan SPAdesin eräajona.

Esimerkki SPAdes-eräajotiedostosta:

#!/bin/bash
#SBATCH --job-name=SPAdes
#SBATCH --account=<project>
#SBATCH --time=12:00:00
#SBATCH --ntasks=1
#SBATCH --nodes=1
#SBATCH --output==spades_out
#SBATCH --error=sprdes_err
#SBATCH --cpus-per-task=8
#SBATCH --mem=32G
#SBATCH --partition=small

module load biokit
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK 
srun spades.py --pe1-1 reads_R1.fastq.gz --pe1-2 reads_R2.fastq.gz -t $SLURM_CPUS_PER_TASK -o SpadesResult

Yllä olevassa esimerkissä <project> tulee korvata projektisi nimellä. Voit tarkistaa CSC-projektisi komennolla csc-projects. Enimmäisajoajaksi on asetettu 12 tuntia (--time=12:00:00). Koska SPAdes käyttää säiepohjaista rinnakkaistamista, prosessia käsitellään yhtenä työnä, joka tulee suorittaa yhdellä solmulla (--ntasks=1, --nodes=1). Työ varaa kahdeksan ydintä --cpus-per-task=8, jotka voivat käyttää yhteensä enintään 32 Gt muistia (--mem=32G). Huomaa, että käytettävien ytimien määrä täytyy määritellä sekä $OMP_NUM_THREADS-ympäristömuuttujalla että varsinaisessa spades.py-komennossa (valinta -t). Tässä tapauksessa käytämme $SLURM_CPUS_PER_TASK-muuttujaa, joka sisältää --cpus-per-task-arvon. Voisimme yhtä hyvin käyttää export OMP_NUM_THREADS=8 ja -t 8, mutta silloin meidän täytyy muistaa muuttaa arvot, jos varattujen CPU-yksiköiden määrä muuttuu.

Työ lähetetään eräajo järjestelmään sbatch-komennolla. Jos esimerkiksi eräajotiedoston nimi on spades_job.sh, lähetyskomento on:

sbatch spades_job.sh 

Lisätietoja eräajojen suorittamisesta löytyy Puhdin käyttöoppaan eräajo-osiosta.

Lisätietoja

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta