SIMD Implementation of the Aho-Corasick Algorithm using Intel AVX2

Authors

  • Lazhar Ourlis University of Batna 2, Algeria
  • Djamel Bellala University of Batna 2, Algeria

DOI:

https://doi.org/10.12694/scpe.v20i3.1572

Abstract

The Aho-Corasick (AC) algorithm is a multiple pattern exact string-matching algorithm proposed by Alfred V. Aho and Margaret J. Corasick. It is used to locate all occurrences of a finite set of patterns within an input text simultaneously. The AC algorithm is in the heart of many applications including digital forensics such as digital signatures demonstrating the authenticity of a digital message or document, full text search (utility programs such as grep, awk and sed of Unix systems), information retrieval (biological sequence analysis and gene identification), intrusion detection systems (IDS) in computer networks like SNORT, web filtering, spam filters, and antimalware solutions (virus scanner). In this paper we present a vectorized version of the AC algorithm designed with the use of packed instructions based on the Intel streaming SIMD (Single Instruction Multiple Data) extensions AVX2 (Advanced Vector Extensions 2.0) technology. This paper shows that the vectorized AC algorithm reduces significantly the time matching process comparing to the implementation of the original AC algorithm.

Author Biography

  • Djamel Bellala, University of Batna 2, Algeria

    Bellala Djamel is a University Professor "Department of Computer Science" with the University of Batna 2, Algeria, where he taught and conducted research in operation research. His several international articles have special focus on optimization of industrial systems with metaheuristic implementations.

Downloads

Published

2019-09-22

Issue

Section

Research Reports