2010
DOI: 10.1145/1671970.1921704
|View full text |Cite
|
Sign up to set email alerts
|

Redesigning the string hash table, burst trie, and BST to exploit cache

Abstract: A key decision when developing in-memory computing applications is choice of a mechanism to store and retrieve strings. The most efficient current data structures for this task are the hash table with move-to-front chains and the burst trie, both of which use linked lists as a substructure, and variants of binary search tree. These data structures are computationally efficient, but typical implementations use large numbers of nodes and pointers to manage strings, which is not efficient in use of cache. In this… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Year Published

2013
2013
2020
2020

Publication Types

Select...
4
1
1

Relationship

1
5

Authors

Journals

citations
Cited by 9 publications
(3 citation statements)
references
References 91 publications
0
3
0
Order By: Relevance
“…The best replacement word based on contextual information among the candidate words that passes the heuristics is selected using a 4-gram language model (LM) trained on the title strings from Wiki-Clickstream. The language model is generated using KenLM [24], 4 which is based on modified Kneser-Ney smoothing and provides fast model construction and querying. For example, an LM-based replacement for the target string "live queen", is "live together" while a random replacement gives "live teufelshorner"; for the target string "web server", a random replacement yields "web castelvetere" and an LM-based replacement gives "web content".…”
Section: Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…The best replacement word based on contextual information among the candidate words that passes the heuristics is selected using a 4-gram language model (LM) trained on the title strings from Wiki-Clickstream. The language model is generated using KenLM [24], 4 which is based on modified Kneser-Ney smoothing and provides fast model construction and querying. For example, an LM-based replacement for the target string "live queen", is "live together" while a random replacement gives "live teufelshorner"; for the target string "web server", a random replacement yields "web castelvetere" and an LM-based replacement gives "web content".…”
Section: Methodsmentioning
confidence: 99%
“…QAC implementation strategies vary based on how the partial query P is matched against the target strings [32]. A common approach is to use a trie [3,4,25,27] to retrieve candidates that have P as a prefix; or inverted index-based approaches [10,11,23] that offer completions independent of the ordering of the words in the partial query. The functionality of a QAC system can be extended beyond character level matches by including contextual cues [11] or synonyms [12,28].…”
Section: Introductionmentioning
confidence: 99%
“…The use of pointers in dynamic string data structures is the fundamental cause of cache-inefficiency, as they can lead to random memory accesses (Askitis and Zobel, 2011). Existing data structures are computationally efficient, but use large number of pointers to manage strings.…”
Section: About This Workmentioning
confidence: 99%