We would like to propose a string matching algorithm on GPU, called PFAC library.
PFAC is an open-source library, with C level API and is easy to use (Users even need not know about CUDA programming).
The purpose of PFAC is to match all longest patterns in a given input stream against patterns pre-defined by users.
The applications include content-searching, virus detection or DNA analysis.
PFAC library does not use multi-GPU intrinsically but users can combine PFAC library with OpenMP or PThread library
to perform string matching on Multi-GPU. OpenMP or PThread example could be found in the release.
Download and further information: http://code.google.com/p/pfac/