Implementing BREeze - a High-Performance Regular Expression Library Using Code Generation with BuildIt
Name
mitrovska-tamaram-meng-eecs-2023-thesis.pdf
Description
Thesis PDF
Size
563.85 KB
Format
Adobe PDF
Checksum (MD5)
c96b8113dd201ecb5548ba792524dd94
Author(s)
Mitrovska, Tamara
Advisor(s)
Amarasinghe, Saman
Date Issued
June 2023
Publisher
Massachusetts Institute of Technology
Abstract
Regular expression matching is a very common problem in software engineering, with applications in text processing, text searching, data scraping, syntax highlighting, deep packet inspection in networks, etc. Due to the varying complexity of regular expressions, having one general approach to match all types of expressions is usually not enough to get the needed performance for software applications. Many modern regular expression engines have tried to solve this problem by combining different algorithms and optimization techniques, which in most cases result in very complicated and large codebases. As a result, we introduce BREeze, a fully functional regular expression library implemented in just around 1500 lines of code with comparable performance to the modern regular expression engines. BREeze is implemented on top of BuildIt, a multi-stage code generation framework that makes it possible to generate high-performance, specialized code while keeping the implementation simple.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
In Copyright - Educational Use Permitted
Copyright retained by author(s)
Persistent DSpace Link