C implementation of the BLAST algorithm

In Progress

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 [url removed, login to view] CPU using this implementation must be able to perform at least 1000 sequence comparisons per second, where each sequence has 1000 bases.


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)


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:

[url removed, login to view]

[url removed, login to view]

Skills: Algorithm, C Programming

See more: blast algorithm, blast implementation, blast algorithm implementation, use of data structure in programming, use of algorithm in programming, use of algorithm, use algorithm, ubuntu programming, the algorithm is, the algorithm, structured programming, software for dynamic programming, programming wiki, programming in ubuntu, programming and algorithm, programming algorithm example, implementation of data structure, how to use algorithm, how to algorithm, example of dynamic programming, example of an algorithm in programming, example of an algorithm, example of algorithm in programming, example of algorithm, example of a algorithm

About the Employer:
( 1 review ) Cheltenham, United Kingdom

Project ID: #4482995