A fast string searching algorithm
Communications of the ACM
Succinct indexable dictionaries with applications to encoding k-ary trees and multisets
SODA '02 Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms
Implementing database operations using SIMD instructions
Proceedings of the 2002 ACM SIGMOD international conference on Management of data
Adding Compression to Block Addressing Inverted Indexes
Information Retrieval
High-order entropy-compressed text indexes
SODA '03 Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms
Proceedings of the 16th Conference on Foundations of Software Technology and Theoretical Computer Science
Succinct static data structures
Succinct static data structures
ACM Computing Surveys (CSUR)
GLIMPSE: a tool to search through entire file systems
WTEC'94 Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
Compressed Suffix Trees with Full Functionality
Theory of Computing Systems
Proceedings of the 31st annual international ACM SIGIR conference on Research and development in information retrieval
Engineering a compressed suffix tree implementation
Journal of Experimental Algorithmics (JEA)
Fast and Compact Web Graph Representations
ACM Transactions on the Web (TWEB)
Fast data analytics with FPGAs
ICDEW '11 Proceedings of the 2011 IEEE 27th International Conference on Data Engineering Workshops
Accelerating search and recognition workloads with SSE 4.2 string and text processing instructions
ISPASS '11 Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software
Scaling scientific applications on clusters of hybrid multicore/GPU nodes
Proceedings of the 8th ACM International Conference on Computing Frontiers
SIMD-based decoding of posting lists
Proceedings of the 20th ACM international conference on Information and knowledge management
String matching with lookahead
Discrete Applied Mathematics
Hi-index | 0.00 |
Current processors include instruction set extensions especially designed for improving the performance of media, imaging, and 3D workloads. These instructions are rarely considered when implementing practical solutions for algorithms and compressed data structures, mostly because they are not directly generated by the compiler. In this paper, we proclaim their benefits and encourage their use, as they are an unused asset included in almost all general-purpose computers. As a proof of concept, we perform an experimental evaluation by straightforwardly including some of these complex instructions in basic string algorithms used for indexing and search, obtaining significant speedups. This opens a new interesting line of research: designing new algorithms and data structures by taking into account the existence of these sets of instructions, in order to achieve significant speedups at no extra cost.