User Tools

Site Tools


This is an old revision of the document!

blast+ , blastall

NCBI Blast+ is a shared-memory program that runs on a single node with multiple threads. The Intel processors on the razor cluster will run blast about three times as fast as the AMD processors on trestles. Razor 12-core nodes are sufficient since blast+ scales to about 8 threads as show by user/real time, but the number of cores present is used in each exmple. Blast works better with a database located on a local file system, so if doing a number of runs, it may be worth the couple of minutes to copy the database to your area of the local scratch disk, as shown. For a single run it is probably faster overall to read directly from the parallel filesystem database. If copying the database please remember to remove it at the end of the job.


/home/rfeynman$ cd /local_scratch/rfeynman
/local_scratch/rfeynman$ rsync -a /share/apps/bioinformatics/blast/db20150912/nt .
/local_scratch/rfeynman$ module purge;module load blast/2.3.0+ 
/local_scratch/rfeynman$ time blastn -num_threads 32 -db nt/nt -query /home/rfeynman/NM_001005648 >blast-2.3.0.out

real    0m11.146s
user    1m33.556s
sys     0m10.938s
/local_scratch/rfeynman$ rm -rf ./nt

razor: examples are shown for the last 3 versions of blastn and for blastall used with qiime. In this case 2.2.29 and 2.3.0 give the same output while 2.2.28 and blastall give different output.

/gpfs_home/rfeynman$ cd /local_scratch/rfeynman
/local_scratch/rfeynman$ rsync -a /share/apps/blast/db/nt .
/local_scratch/rfeynman$ module purge;module load blast/2.2.28+
/local_scratch/rfeynman$ time blastn -num_threads 16 -db nt/nt -query /share/apps/blast/queries/blastn/NM_001005648 >blast-2.2.28.out

real	0m3.273s
user	0m2.204s
sys	0m1.530s
/local_scratch/rfeynman$ module purge;module load blast/2.2.29+
/local_scratch/rfeynman$ time blastn -num_threads 16 -db nt/nt -query /share/apps/blast/queries/blastn/NM_001005648 >blast-2.2.29.out

real	0m3.817s
user	0m38.202s
sys	0m3.077s
/local_scratch/rfeynman$ module purge;module load blast/2.3.0+
/local_scratch/rfeynman$ time blastn -num_threads 16 -db nt/nt -query /share/apps/blast/queries/blastn/NM_001005648 >blast-2.3.0.out

real	0m3.327s
user	0m33.666s
sys	0m3.284s
/local_scratch/rfeynman$ module purge; module load gcc/4.6.3 mkl/13.1.0 python/2.7.5 qiime/1.9.1
/local_scratch/rfeynman$ time blastall -p blastn -a 16 -d nt/nt -i /share/apps/blast/queries/blastn/NM_001005648 -o blastall.out

real	0m6.231s
user	1m20.847s
sys	0m3.195s
/local_scratch/rfeynman$ ls -al *out
-rw-r--r-- 1 rfeynman rfeynman  119520 Feb 29 13:10 blast-2.2.28.out
-rw-r--r-- 1 rfeynman rfeynman  498945 Feb 29 13:11 blast-2.2.29.out
-rw-r--r-- 1 rfeynman rfeynman  498538 Feb 29 13:11 blast-2.3.0.out
-rw-r--r-- 1 rfeynman rfeynman 1422859 Feb 29 13:14 blastall.out
/local_scratch/rfeynman$ diff -ibw blast-2.2.29.out blast-2.3.0.out
< BLASTN 2.2.29+
> BLASTN 2.3.0+
/local_scratch/rfeynman$ rm -rf ./nt
blast.1456775231.txt.gz · Last modified: 2016/02/29 19:47 by root