This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Blastclust Ignores The Multithreading Argument (-A)

I'm trying to run:

blastclust -a 48 -p T -d ./uniprot/2011_04/all.fasta  -v progress

I have 48 cores on the server thus -a 48 argument, but only 100% CPU (1 core) is used.

I have Blast2 version 2.2.21 (standard for Debian 6).

This seems to be a bug because parallelism is clearly requested and at least a warning message should be show when proceeding on a single core.

Does anyone know how to workaround this?

blast parallel clustering

Do the -a switch work for regular blast?

Yes. blastall -a 7 -p blastp -i ~/myseq.fasta -d ./uniprot/2011_04/all.fasta got only up to 130% CPU on the first run. And 700% on the second identical run.

It is probably not compiled with pthreads support - but that is hard to tell without further investigation. However, consider using Uclust or CD-HIT instead.

Did you manage to resolve this problem?

No. Looks like not a lot of people liked this question. An nobody even tried a simple repro.

1 answer

From a little experimentation I can tell you that 'blastclust' is multi-threaded, but only when it come to the cluster generation part. The initial preparation, i.e. before the "Start clustering of NNNN queries" message is single threaded.

You can check that the process is using threads by using 'ps', from the man page:

To get info about threads:

ps -eLf
ps axms

Which for a sample case, clustering PDB proteins using four threads, shows the expected number of threads:

hamish    2141  1455  2141 20    5 21:40 pts/0    00:01:05 blastclust -i pdbaa -a 4 -o outfile.txt
hamish    2141  1455  4232  0    5 21:45 pts/0    00:00:00 blastclust -i pdbaa -a 4 -o outfile.txt
hamish    2141  1455  4233  0    5 21:45 pts/0    00:00:00 blastclust -i pdbaa -a 4 -o outfile.txt
hamish    2141  1455  4234  0    5 21:45 pts/0    00:00:00 blastclust -i pdbaa -a 4 -o outfile.txt
hamish    2141  1455  4235  0    5 21:45 pts/0    00:00:00 blastclust -i pdbaa -a 4 -o outfile.txt
hamish    4236  1610  4236  0    1 21:45 pts/1    00:00:00 ps -eLf

This is on Ubuntu 10.04 LTS, which uses the Debian supplied NCBI BLAST 2.2.21 which you mention. So I'm guessing that you were unlucky enough to be looking at the wrong moment, when it appears to be single threaded.

Log in to answer this question.