C implementation of the BLAST algorithm

IN PROGRESS
Bids
19
Avg Bid (GBP)
N/A
Project Budget (GBP)
£250 - £750

Project Description:
I require a high performing C implementation of the BLAST algorithm. The software is only required to compare two provided sequences of nucleotide or protein data, rather than comparing a query sequence against a database of reference material.

The code should output the same score, expected value, bit score, ident and gap results as given by the NCBI implementation.

The software must be appropriate for use in a threaded application. Code is provided to show an example of how the implementation is expected to be used.

A single threaded application running on a 64-bit 2.4GHz CPU using this implementation must be able to perform at least 1000 sequence comparisons per second, where each sequence has 1000 bases.

Deliverables:
1) Well structured and documented C source and header files
2) A Makefile to build the algorithm into a dynamic library, and to build the example application to use the library
3) Documentation explaining the structure of the software
4) Software must compile without modification on a current Linux distribution (CentOS, Ubuntu)

Notes:
1) It is acceptable to use code from existing BLAST implementations, providing all sections of code are labelled. That said, the delivery must be well structured and easy to navigate, so it is not acceptable to incorporate the full NCBI toolkit, for example.
2) IUPAC codes are the expected alphabet of the input sequences

Further reading:
http://en.wikipedia.org/wiki/BLAST
http://blast.ncbi.nlm.nih.gov/Blast.cgi

Skills required:
Algorithm, C Programming
Additional Files: blast_example.tar
About the employer:
Verified
Public Clarification Board
Bids are hidden by the project creator. Log in as the employer to view bids or to bid on this project.
You will not be able to bid on this project if you are not qualified in one of the job categories. To see your qualifications click here.