Velvet

From UFRC
Jump to navigation Jump to search

Template:UFHPC Software

Velvet

Sequence assembler for very short reads. Velvet is a de novo genomic assembler specially designed for short read sequencing technologies, such as Solexa or 454, developed by Daniel Zerbino and Ewan Birney at the European Bioinformatics Institute (EMBL-EBI), near Cambridge, in the United Kingdom.


Velvet currently takes in short read sequences, removes errors then produces high quality unique contigs. It then uses paired-end read and long read information, when available, to retrieve the repeated areas between contigs.


Variations


/apps/velvet/1.1.05/velveth
/apps/velvet/1.1.05/velvetg
These versions are the defailt compile options (max kmer=31, single threaded)
/apps/velvet/1.1.05/velveth_OMP
/apps/velvet/1.1.05/velvetg_OMP
These versions are compiled with the default kmer, but using OpenMP--see OpenMP notes below for details
/apps/velvet/1.1.05/velveth_max99_OMP
/apps/velvet/1.1.05/velvetg_max99_OMP
These versions are compiled with a max kmer of 99 and OpenMP--see OpenMP notes below for details

Note that all versions were compiled with icc.
Please file a bugzilla request for additional compile options like color space, different kmers, LONGSEQUENCES, etc.


OpenMP Notes


If you use one of the OpenMP versions of velvet, you must set the enviromental variables OMP_NUM_THREADS and OMP_THREAD_LIMIT to the appropriate value based on your processor request in your submission script. For example if you use #PBS -l nodes=1:ppn=8 in your script also include export OMP_NUM_THREADS=7; expot OMP_THREAD_LIMIT=8 (for a bash script).


From the Velvet manual:

OpenMP allows a program to make use of multiple CPU cores on the same machine. You might have to set the environment variables OMP_NUM_THREADS and OMP_THREAD_LIMIT. Velvet will the use up to OMP_NUM_THREADS+ 1 or OMP_THREAD_LIMIT threads.


Website

Velvet home page.


!/bin/bash
#PBS -N velvet
#PBS -o velvet.out
#PBS -e velvet.err
#PBS -M <your e-mail addres>
#PBS -m abe
#PBS -l walltime=12:00:00     # HH:MM:SS
#PBS -l pmem=4gb               # 4GB of RAM per thread, or 4X8=32GB in this case
#PBS -l nodes=1:ppn=8 

cd $PBS_O_WORKDIR

#Set OMP_THREAD_LIMIT--should be the same as ppn above
export OMP_THREAD_LIMIT=8

#Set OMP_NUM_THREADS--should be 1 lower than ppn 
export OMP_NUM_THREADS=7

/apps/velvet/1.1.05/velveth_max99_OMP velvet_out/ 45 -fastq.gz -shortPaired my_paried_data.fastq.gz
/apps/velvet/1.1.05/velvetg_max99_OMP velvet_out/ -min_contig_lgth 250 -exp_cov 10 -ins_length 350