To Use or Not to Use: Graphics Processing Units for Pattern Matching Algorithms
Vajira Thambawita, Roshan Ragel, Dhammika Elkaduwe

TL;DR
This paper evaluates the conditions under which GPUs outperform CPUs for string matching using the Aho-Corasick algorithm, emphasizing the importance of selecting the optimal processing unit based on device performance.
Contribution
It provides an analysis framework to determine when GPUs or CPUs are more suitable for string matching tasks using Aho-Corasick, aiding performance optimization.
Findings
GPU performance varies depending on application and device.
Identifies critical points where GPU outperforms CPU.
Guidelines for choosing processing units for string matching.
Abstract
String matching is an important part in today's computer applications and Aho-Corasick algorithm is one of the main string matching algorithms used to accomplish this. This paper discusses that when can the GPUs be used for string matching applications using the Aho-Corasick algorithm as a benchmark. We have to identify the best unit to run our string matching algorithm according to the performance of our devices and the applications. Sometimes CPU gives better performance than GPU and sometimes GPU gives better performance than CPU. Therefore, identifying this critical point is significant task for researchers who are using GPUs to improve the performance of their string matching applications based on string matching algorithms.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNetwork Packet Processing and Optimization · Algorithms and Data Compression · Caching and Content Delivery
