Learn More
High-performance automata-processing engines are traditionally evaluated using a limited set of regular expressionrulesets. While regular expression rulesets are valid real-world examples of use cases for automata processing, they represent a small proportion of all use cases for automata-based computing. With the recent availability of architectures and(More)
Reliability for general purpose processing on the GPU (GPGPU) is becoming a weak link in the construction of reliable supercomputer systems. Because hardware protection is expensive to develop, requires dedicated on-chip resources, and is not portable across different architectures, the efficiency of software solutions such as redundant multithreading (RMT)(More)
The Levenshtein Nondeterministic Finite state Automaton (NFA) recognizes input strings within a set edit distance of a configured pattern in linear time. This automaton can be pipelined to recognize all substrings of an input text in linear time with additional use of nondeterminism. In general, von Neumann hardware cannot directly execute NFAs without(More)
Micron's Automata Processor (AP) efficiently emulates non-deterministic finite automata and has been shown to provide large speedups over traditional von Neumann execution for massively parallel, rule-based, data-mining and pattern matching applications. We demonstrate the AP's ability to generate high-quality and energy efficient pseudo-random behavior for(More)
Micron's new Automata Processor (AP) architecture exploits the very high and natural level of parallelism found in DRAM technologies to achieve native-hardware implementation of non-deterministic finite automata (NFAs). The use of DRAM technology to implement the NTA states provides high capacity and therefore provide extraordinary parallelism for pattern(More)
Brill tagging is a classic rule-based algorithm for part-of-speech (POS) tagging that assigns tags, such as nouns, verbs, adjectives, etc., to input tokens. Due to the the intense memory requirements of rule matching, CPU implementations of the Brill tagging algorithm have been found to be slow. We show that Micron's Automata Processor (AP) - a new(More)
Newly-available spatial architectures to accelerate finite-automata processing have spurred research and development on novel automata-based applications. However, spatial automata processing architecture research is lacking, because of a lack of automata optimization and place-and-route tools. To solve this issue, we propose a new, open-source(More)
Finite automata have proven their usefulness in high-profile domains ranging from network security to machine learning. While prior work focused on their applicability for purely regular expression workloads such as antivirus and network security rulesets, recent research has shown that automata can optimize the performance for algorithms in other areas(More)
Regular expressions are sequences of characters that define search patterns, commonly used in pattern matching with strings. Regular expression matching plays an important role in a variety of applications, such as bioinformatics, network inspection, etc. However, it is a challenging problem because pattern matching is a computationally intensive operation(More)
We present MNRL, an open-source, general-purpose and extensible state machine representation language. The representation is exible enough to support traditional nite automata (NFAs, DFAs) while also supporting more complex machines, such as those which propagate multi-bit signals between processing elements. The speci cation is based on JSON, a data(More)