The included code and white paper provides a parallel solution for the DNA string matching problem, as described in the included problem description text file. The included write-up gives an overview of Cilk++ and some of the tools available for Cilk programming. The Rabin-Karp hashing method and a simple search algorithm to compare the query string with a successive database substrings is presented and analyzed. After some serial optimizations are described, the write-up describes how the algorithm is parallelized using Cilk++. The code was intended for Linux OS platforms.
DISCLAIMER: This code is provided by the author as a submitted contest entry, and is intended for educational use only. The code is not guaranteed to solve all instances of the input data sets and may require modifications to work in your own specific environment.