Wed 23 Oct 2024 15:00 - 15:20 at IBR West - Performance Analysis and Optimisation 1 Chair(s): Manu Sridharan

Multi-pattern matching is widely used in modern software for applications requiring high throughput such as protein search, network traffic inspection, virus or spam detection. Graphic Processor Units (GPUs) excel at executing massively parallel workloads. Regular expression (regex) matching is typically performed by simulating the execution of deterministic finite automata (DFAs) or nondeterministic finite automata (NFAs). The natural implementations of these automata simulation algorithms on GPUs are highly inefficient because they give rise to irregular memory access patterns.

This paper presents HybridSA, a heterogeneous CPU-GPU parallel engine for multi-pattern matching. HybridSA uses bit parallelism for the efficient simulation of NFAs on GPUs, thus reducing the number of memory accesses and increasing the throughput. Our bit-parallel algorithms extend the classical shift-and algorithm for string matching to a large class of regular expressions, and reduces automata simulation to a small number bitwise operations. We have developed a compiler to translate regular expressions into bit masks, to perform optimizations and to choose the best algorithms to run on the GPU. The vast majority of the regular expressions are accelerated on the GPU, while the patterns that exhibit random memory accesses are executed on the CPU in parallel. We evaluate HybridSA against state-of-the-art CPU and GPU engines, as well as a hybrid combination of the two. HybridSA achieves between 4 and 60 times higher throughput than the state-of-the-art CPU engine and between 4 and 233 times better than the state-of-the-art GPU engine across a collection of real-world benchmarks.

Wed 23 Oct

Displayed time zone: Pacific Time (US & Canada) change

13:40 - 15:20
Performance Analysis and Optimisation 1OOPSLA 2024 at IBR West
Chair(s): Manu Sridharan University of California at Riverside
13:40
20m
Talk
Accurate Data Race Prediction in the Linux Kernel through Sparse Fourier Learning
OOPSLA 2024
Gabriel Ryan Columbia University, Burcu Cetin Columbia University, Christian Yongwhan Lim Columbia University, Suman Jana Columbia University
DOI
14:00
20m
Talk
Mix Testing: Specifying and Testing ABI Compatibility of C/C++ Atomics Implementations
OOPSLA 2024
Luke Geeson University College London, James Brotherston , Wilco Dijkstra Arm Ltd, Alastair F. Donaldson Imperial College London, Lee Smith Arm, Tyler Sorensen University of California at Santa Cruz, John Wickerson Imperial College London
DOI Media Attached
14:20
20m
Talk
Practical Verification Of Smart Contracts Using Memory Splitting
OOPSLA 2024
Shelly Grossman Tel Aviv University, Alexander Bakst Certora, Sameer Arora Certora Inc., John Toman Certora, inc., Chandrakana Nandi Certora, Mooly Sagiv Tel Aviv University
DOI
14:40
20m
Talk
Fast and Optimal Extraction for Sparse Equality GraphsOOPSLA 2024 Distinguished Paper Award
OOPSLA 2024
Amir Kafshdar Goharshady Hong Kong University of Science and Technology, Chun Kit Lam Hong Kong University of Science and Technology, Lionel Parreaux HKUST (The Hong Kong University of Science and Technology)
DOI
15:00
20m
Talk
HybridSA: GPU Acceleration of Multi-Pattern Regex Matching using Bit Parallelism
OOPSLA 2024
Alexis Le Glaunec Rice University, Lingkun Kong Rice University, Konstantinos Mamouras Rice University
DOI