title: High performance pattern matching on heterogeneous platform.
abstract: Pattern discovery is one of the fundamental tasks in bioinformatics and pattern recognition is a powerful technique for searching sequence patterns in the biological sequence databases. Fast and high performance algorithms are highly demanded in many applications in bioinformatics and computational molecular biology since the significant increase in the number of DNA and protein sequences expand the need for raising the performance of pattern matching algorithms. For this purpose, heterogeneous architectures can be a good choice due to their potential for high performance and energy efficiency. In this paper we present an efficient implementation of Aho-Corasick (AC) which is a well known exact pattern matching algorithm with linear complexity, and Parallel Failureless Aho-Corasick (PFAC) algorithm which is the massively parallelized version of AC algorithm without failure transitions, on a heterogeneous CPU/GPU architecture. We progressively redesigned the algorithms and data structures to fit on the GPU architecture. Our results on different protein sequence data sets show that the new implementation runs 15 times faster compared to the original implementation of the PFAC algorithm.
authors.affiliation: Department of Information Technology, University of Turku, Finland.
authors.forename: Shima
authors.initials: S
authors.lastname: Soroushnia
authors.affiliation: Department of Information Technology, University of Turku, Finland.
authors.forename: Masoud
authors.initials: M
authors.lastname: Daneshtalab
authors.affiliation: Department of Information Technology, University of Turku, Finland.
authors.forename: Juha
authors.initials: J
authors.lastname: Plosila
authors.affiliation: Department of Information Technology, University of Turku, Finland.
authors.forename: Tapio
authors.initials: T
authors.lastname: Pahikkala
authors.affiliation: Department of Information Technology, University of Turku, Finland.
authors.forename: Pasi
authors.initials: P
authors.lastname: Liljeberg
mesh_terms: D000465:Algorithms; D000595:Amino Acid Sequence; D000818:Animals; D001483:Base Sequence; D030562:Databases, Protein; D010363:Pattern Recognition, Automated / Q000379:methods*; D013997:Time Factors