Cache automaton
Cache automaton
复制标题
缓存自动机
DOI:
10.1145/3123939.3123986
复制
发表时间:
2017
期刊:
影响因子:
--
通讯作者:
Das, Reetuparna
中科院分区:
文献类型:
--
作者:
Subramaniyan, Arun;Wang, Jingcheng;Balasubramanian, Ezhil R.;Blaauw, David;Sylvester, Dennis;Das, Reetuparna
Finite State Automata are widely used to accelerate pattern matching in many emerging application domains like DNA sequencing and XML parsing. Conventional CPUs and compute-centric accelerators are bottlenecked by memory bandwidth and irregular memory access patterns in automata processing.We presentCache Automaton, which repurposes last-level cache for automata processing, and a compiler that automates the process of mapping large real world Non-Deterministic Finite Automata (NFAs) to the proposed architecture. Cache Automaton extends a conventional last-level cache architecture with components to accelerate two phases in NFA processing: state-match and state-transition. State-matching is made efficient using a sense-amplifier cycling technique that exploits spatial locality in symbol matches. State-transition is made efficient using a new compact switch architecture. By overlapping these two phases for adjacent symbols we realize an efficient pipelined design.We evaluate two designs, one optimized for performance and the other optimized for space, across a set of 20 diverse benchmarks. The performance optimized design provides a speedup of 15× over DRAM-based Micron's Automata Processor and 3840× speedup over processing in a conventional x86 CPU. The proposed design utilizes on an average 1.2MBof cache space across benchmarks, while consuming 2.3nJof energy per input symbol. Our space optimized design can reduce the cache utilization to 0.72MB, while still providing a speedup of 9× over AP.