User Tools

Site Tools


quast

This is an old revision of the document!


Quast

QUAST stands for QUality ASsessment Tool. The tool evaluates genome assemblies by computing various metrics. Quast was developed by the Algorithmic Biology Lab at the St. Petersburg Academic University of the Russian Academy of Sciences. For more documentation on Quast click here

Enviornment Setup

Quast is used as a python command line tool, so we will need to load the python module to run the script, do this by adding this line to either the .bashrc file or the PBS script when you run your tests.

module load python

Create a directory to run the Quast jobs and copy the test data from the Quast version folder as shown below.

razor-l2:jokinsey:~$ mkdir QUAST-JOBS
razor-l2:jokinsey:~$ cd QUAST-JOBS/
razor-l2:jokinsey:~/QUAST-JOBS$ cp -r /share/apps/quast/quast-3.1/test_data/ .

Serial Example

Inside your $HOME/QUAST-JOBS directory create a PBS script named quastTest.pbs with the information below, to run Quast on the sample inputs.

#!/bin/bash
#PBS -N Quast
#PBS -q tiny12core
#PBS -j oe
#PBS -m abe
#PBS -M jokinsey@uark.edu
#PBS -o Quast.$PBS_JOBID
#PBS -l nodes=1:ppn=12
#PBS -l walltime=00:10:00

cd $PBS_O_WORKDIR
cp -r test_data/ /scratch/$PBS_JOBID
cd /scratch/$PBS_JOBID

python /share/apps/quast/quast-3.1/quast.py test_data/contigs_1.fasta test_data/contigs_2.fasta -R test_data/reference.fasta.gz -G test_data/genes.gff
mv /scratch/$PBS_JOBID/quast_results/results* $PBS_O_WORKDIR/quast_results/

This script will run Quast on the inputs located in the /scratch/$PBS_JOBID directory. If you would like to know more about the values and flags used refer to the manual here.

The output for the job should be located in $HOME/QUAST-JOBS/quast_results/results_<when_the_job_was_submitted>.

All thats left is to submit the job.

razor-l2:jokinsey:~/QUAST-JOBS$ qsub quastTest.pbs

We did not specify an output directory therefore Quast will create a directory quast_results/results_<DATE> where the output of the job will be stored. It will also create a directory quast_results/latest where the most recent job's output will be stored.

Many files will be given as output, and all of there descriptions are listed in the manual. A simplified listing of the output will be in the report.txt file.

Parallel Example

When Quast is run it will determine the number of available processors which we specify in the PBS script with the value of ppn. Quast also allows manual specification of the number of allowed threads, which can decrease the time of the job. Change the PBS script above to include thread specification.

#!/bin/bash
#PBS -N Quast
#PBS -q tiny12core
#PBS -j oe
#PBS -m abe
#PBS -M jokinsey@uark.edu
#PBS -o Quast.$PBS_JOBID
#PBS -l nodes=1:ppn=12
#PBS -l walltime=00:10:00

cd $PBS_O_WORKDIR

python /share/apps/quast/quast-3.1/quast.py --threads 48 test_data/contigs_1.fasta test_data/contigs_2.fasta -R test_data/reference.fasta.gz -G test_data/genes.gff

This sets the max thread count at 48 for out set value of 12 virtual processors. You can evaluate the speedup by comparing the completion times of a job running in serial job and a job running in parallel with the change above.

quast.1507833008.txt.gz · Last modified: 2017/10/12 18:30 by jokinsey