The Community for Technology Leaders
Green Image
Issue No. 03 - March (2012 vol. 23)
ISSN: 1045-9219
pp: 436-443
Daniel G. Chavarría-Miranda , Pacific Northwest National Laboratory, Richland
Antonino Tumeo , Pacific Northwest National Laboratory, Richland
Oreste Villa , Pacific Northwest National Laboratory, Richland
ABSTRACT
String matching requires a combination of (sometimes all) the following characteristics: high and/or predictable performance, support for large data sets and flexibility of integration and customization. This paper compares several software-based implementations of the Aho-Corasick algorithm for high-performance systems. We focus on the matching of unknown inputs streamed from a single source, typical of security applications and difficult to manage since the input cannot be preprocessed to obtain locality. We consider shared-memory architectures (Niagara 2, x86 multiprocessors, and Cray XMT) and distributed-memory architectures with homogeneous (InfiniBand cluster of x86 multicores) or heterogeneous processing elements (InfiniBand cluster of x86 multicores with NVIDIA Tesla C1060 GPUs). We describe how each solution achieves the objectives of supporting large dictionaries, sustaining high performance, and enabling customization and flexibility using various data sets.
INDEX TERMS
Aho-Corasick, string matching, GPGPU, Cray XMT, multithreaded architectures, high-performance computing.
CITATION
Daniel G. Chavarría-Miranda, Antonino Tumeo, Oreste Villa, "Aho-Corasick String Matching on Shared and Distributed-Memory Parallel Architectures", IEEE Transactions on Parallel & Distributed Systems, vol. 23, no. , pp. 436-443, March 2012, doi:10.1109/TPDS.2011.181
100 ms
(Ver 3.3 (11022016))