This is an old revision of the document!
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
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/ .
$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 firstname.lastname@example.org #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
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
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 email@example.com #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.