-
SPAdes
SPAdes
SPAdes on lyhyiden lukujen kokoaja pienille genomeille. SPAdes toimii Illumina- tai IonTorrent-lukujen kanssa ja pystyy tuottamaan hybridikokoonpanoja 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ä tavallisilla aineistoilla.
- IonHammer – lukujen virheenkorjaustyökalu IonTorrent-datalle, joka toimii myös molemmilla datatyypeillä.
- SPAdes – iteratiivinen lyhyiden lukujen genomikokoonpanomoduuli; K:n arvot valitaan automaattisesti lukupituuden ja aineistotyypin perusteella.
- MismatchCorrector – työkalu, joka parantaa virheellisten emästen ja lyhyiden indelien määriä tuloksena saatavissa contigeissa ja scaffoldeissa; 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 SPAdesin yhdessä BayesHammerin/IonHammerin kanssa korkealaatuisten kokoonpanojen saamiseksi. Jos kuitenkin käytät omaa lukujen virheenkorjaustyö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 SPAdesin erityisiä parametrikokonaisuuksia seuraaviin tarkoituksiin:
- Coronaspades (
coronaspades.py) - Metaviralspades (
metaviralspades.py) - Rnaviralspades (
rnaviralspades.py) - Metagenomiikka (
metaspades.py) - Plasmidikokoonpano (
plasmidspades.py) - RNA-Seq-kokoonpano (
rnaspades.py)
Katso lisätietoja SPAdes-dokumentaatiosta.
Lisenssi
Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv2 -lisenssillä.
Saatavuus
- Roihu-CPU: 4.2.0, 4.3.0,
bio-apps-moduulin kautta.
Käyttö
SPAdes on osa bio-apps -kokoelmaa Roihussa. Lataa ensin bio-apps-moduulipuu ja sitten SPAdes-moduuli:
Saat käyttöohjeen komennolla:
Kokoonpanotehtävät voivat vaatia paljon resursseja, joten varsinaisia SPAdes-ajoja ei pidä koskaan suorittaa kirjautumissolmuilla. Kaikkiin todellisiin analyysitehtäviin suosittelemme SPAdesin ajamista eräajona.
Esimerkki SPAdes-eräajotiedostosta:
#!/bin/bash
#SBATCH --job-name=SPAdes
#SBATCH --account=<project>
#SBATCH --output=spades_out_%j
#SBATCH --error=spades_err_%j
#SBATCH --partition=small
#SBATCH --time=12:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=8
#SBATCH --mem=32G
module load bio-apps/v202603
module load spades/4.3.0
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 käyttää komentoa csc-projects CSC-projektiesi tarkistamiseen.
Enimmäisajoajaksi on
asetettu 12 tuntia (--time=12:00:00). Koska SPAdes käyttää säiepohjaista rinnakkaistusta, 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 (valitsin -t). Tässä tapauksessa käytämme muuttujaa $SLURM_CPUS_PER_TASK, joka sisältää arvon --cpus-per-task.
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-ytimien määrä muuttuu.
Työ lähetetään eräajo järjestelmään komennolla sbatch. Esimerkiksi jos eräajotiedoston
nimi on spades_job.sh, lähetyskomento on:
Lisätietoja eräajojen suorittamisesta löytyy sivulta eräajokomentosarjan luominen Roihulle.