Experiences with string matching on the Fermi Architecture
String matching is at the core of many real-world applications, such as security, bioinformatic, data mining. All these applications requires the ability to match always growing data sets against large dictionaries effectively, fastly and possibly in real time. Unfortunately, string matching is a computationally intensive procedure which poses significant challenges on current software and hardware implementations. Graphic Processing Units (GPU) have become an interesting target for such high-throughput applications, but the algorithms and the data structures need to be redesigned to be parallelized and adapted to the underlining hardware, coping with the limitations imposed by these architectures. In this paper we present an efficient implementation of the Aho-Corasick string matching algorithm on GPU, showing how we progressively redesigned the algorithm and the data structures to fit on the architecture. We then evaluate the implementation on single and multiple Tesla C2050 (T20 ``Fermi'' based) boards, comparing them to the previous Tesla C1060 (T10 based) solutions and equivalent multicore implementations on x86 CPUs. We discuss the various tradeoffs of the different architectures.
- Research Organization:
- Pacific Northwest National Lab. (PNNL), Richland, WA (United States)
- Sponsoring Organization:
- USDOE
- DOE Contract Number:
- AC05-76RL01830
- OSTI ID:
- 1023200
- Report Number(s):
- PNNL-SA-75647; TRN: US201118%%503
- Resource Relation:
- Conference: Architecture of Computing Systems - ARCS 2011: 24th International Conference, February 24-25, 2011, Como, Italy. Lecture Notes in Computer Science, 6566:26-37
- Country of Publication:
- United States
- Language:
- English
Similar Records
Accelerating DNA analysis applications on GPU clusters
Aho-Corasick String Matching on Shared and Distributed Memory Parallel Architectures