Optimal packed string matching
- Oren Ben-Kiki,
- Philip Bille,
- Dany Breslauer,
- Leszek Ga̧sieniec,
- Roberto Grossi,
- Oren Weimann
- Intel,
- Technical University of Denmark,
- University of Haifa,
- University of Liverpool,
- University of Pisa
Related Event
Title
Event type
ConferenceDate
12/12/2011 - 12/14/2011Location
Abstract
In the packed string matching problem, each machine word accommodates α characters, thus an n-character text occupies n/α memory words. We extend the Crochemore-Perrin constant-space O(n)-time string matching algorithm to run in optimal O(n/α) time and even in real-time, achieving a factor α speedup over traditional algorithms that examine each character individually. Our solution can be efficiently implemented, unlike prior theoretical packed string matching work. We adapt the standard RAM model and only use its AC0instructions (i.e., no multiplication) plus two specialized AC0packed string instructions. The main string-matching instruction is available in commodity processors (i.e., Intel's SSE4.2 and AVX Advanced String Operations); the other maximal-suffix instruction is only required during pattern preprocessing. In the absence of these two specialized instructions, we propose theoretically-efficient emulation using integer multiplication (not AC0) and table lookup.
Publication Information
Output type
Original language
English (US)Pages from-to (Number of pages)
Pages 423-432 (10 pages)Publication milestones
- Published - 2011
Publication status
Publication series
- Publication series name: Leibniz International Proceedings in Informatics, LIPIcs
ISSN (Print): 1868-8969
Volume: 13
ISBN (Print)
9783939897347Publication IDs
- Scopus: 84863112223
