@inproceedings{4e05863c166146ccafc97398ea583eb4,
title = "HARE: Hardware accelerator for regular expressions",
abstract = "Rapidly processing text data is critical for many technical and business applications. Traditional software-based tools for processing large text corpora use memory bandwidth inefficiently due to software overheads and thus fall far short of peak scan rates possible on modern memory systems. Prior hardware designs generally target I/O rather than memory bandwidth. In this paper, we present HARE, a hardware accelerator for matching regular expressions against large in-memory logs. HARE comprises a stall-free hardware pipeline that scans input data at a fixed rate, examining multiple characters from a single input stream in parallel in a single accelerator clock cycle. We describe a 1GHz 32-character-wide HARE design targeting ASIC implementation that processes data at 32 GB/s-matching modern memory bandwidths. This ASIC design outperforms software solutions by as much as two orders of magnitude. We further demonstrate a scaled-down FPGA proof-of-concept that operates at 100MHz with 4-wide parallelism (400 MB/s). Even at this reduced rate, the prototype outperforms grep by 1.5-20x on commonly used regular expressions.",
author = "Vaibhav Gogte and Aasheesh Kolli and Cafarella, {Michael J.} and Loris D'Antoni and Wenisch, {Thomas F.}",
year = "2016",
month = dec,
day = "14",
doi = "10.1109/MICRO.2016.7783747",
language = "English (US)",
series = "Proceedings of the Annual International Symposium on Microarchitecture, MICRO",
publisher = "IEEE Computer Society",
booktitle = "MICRO 2016 - 49th Annual IEEE/ACM International Symposium on Microarchitecture",
address = "United States",
note = "49th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2016 ; Conference date: 15-10-2016 Through 19-10-2016",
}