Hi,

I have this list of proteins from a new genome project so its pretty much unannotated. However, it's closely related to *C. elegans* so I was thinking of trying to identify the closest *C. elegans* homologues.

What I've been doing right now is doing a protein blast in ncbi with the protein sequences and then taking the top *C. elegans* hit, however, there are far too many sequences to be able to do this one at a time, so I was wondering if there's a way to do it faster/automated/program that does it for me.

Thanks!
Try using [HMMER][1].

The manual is available [here][2].

IN BRIEF: for each protein sequence in *C. elegans* you make a HMM using `hmmbuild` command. Concatenate all HMM models into a single file to make a database file. You have to use `hmpress` to create additional files in order to search your database. Now you can use either `phmmer` if you want to scan against the database you have just created or `hmmsearch` to scan individual models against the sequences you have. The documentation describes very well what commands you need, but note the subtle differences of scanning model vs set of sequences and set of sequences vs db of models.

If you have access to a parallel environment such as MPI (OpenMPI can usually be installed even on the local machines to take full advantage of multiple cores) then you can build the HMMER with MPI support to increase throughput.

A rough idea of a time in our use was: Building and pressing a database of ~10k models takes 10 mins (ish) scanning a coding sequence against a database of ~10k models takes 2-3 seconds. This is very rough guide that we have used it, which undoubtedly will differ from your use case.

 [1]: http://hmmer.janelia.org/
 [2]: ftp://selab.janelia.org/pub/software/hmmer3/3.1b1/Userguide.pdf