Overview of the second text retrieval conference (TREC-2)
TREC-2 Proceedings of the second conference on Text retrieval conference
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Cache-conscious data placement
Proceedings of the eighth international conference on Architectural support for programming languages and operating systems
Analysis of the Search Performance of Coalesced Hashing
Journal of the ACM (JACM)
Techniques for collision resolution in hash tables with open addressing
ACM '86 Proceedings of 1986 ACM Fall joint computer conference
Automated data-member layout of heap objects to improve memory-hierarchy performance
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Computing Surveys (CSUR)
Communications of the ACM
Reducing the retrieval time of scatter storage techniques
Communications of the ACM
Burst tries: a fast, efficient data structure for string keys
ACM Transactions on Information Systems (TOIS)
In-memory hash tables for accumulating text vocabularies
Information Processing Letters
Reconsidering custom memory allocation
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Hash Joins and Hash Teams in Microsoft SQL Server
VLDB '98 Proceedings of the 24rd International Conference on Very Large Data Bases
Cache Conscious Indexing for Decision-Support in Main Memory
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
Space Efficient Hash Tables with Worst Case Constant Access Time
STACS '03 Proceedings of the 20th Annual Symposium on Theoretical Aspects of Computer Science
Adaptive Algorithms for Cache-Efficient Trie Search
ALENEX '99 Selected papers from the International Workshop on Algorithm Engineering and Experimentation
Virtual Cache Line: A New Technique to Improve Cache Exploitation for Recursive Data Structures
CC '99 Proceedings of the 8th International Conference on Compiler Construction, Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS'99
Efficient Tree Layout in a Multilevel Memory Hierarchy
ESA '02 Proceedings of the 10th Annual European Symposium on Algorithms
Performance in Practice of String Hashing Functions
Proceedings of the Fifth International Conference on Database Systems for Advanced Applications (DASFAA)
Improving Cache Behavior of Dynamically Allocated Data Structures
PACT '98 Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques
Cache-conscious data structures: design and implementation
Cache-conscious data structures: design and implementation
Journal of Algorithms
Automatic pool allocation: improving performance by controlling data structure layout in the heap
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Efficient hashing with lookups in two memory accesses
SODA '05 Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms
Database hash-join algorithms on multithreaded computer architectures
Proceedings of the 3rd conference on Computing frontiers
Cache-conscious coallocation of hot data streams
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Architecture-conscious hashing
DaMoN '06 Proceedings of the 2nd international workshop on Data management on new hardware
Cache-oblivious string B-trees
Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Cache-conscious frequent pattern mining on modern and emerging processors
The VLDB Journal — The International Journal on Very Large Data Bases
Balanced allocation and dictionaries with tightly packed constant size bins
Theoretical Computer Science
An experimental comparison of cache-oblivious and cache-conscious programs
Proceedings of the nineteenth annual ACM symposium on Parallel algorithms and architectures
Adaptive aggregation on chip multiprocessors
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
History-Independent Cuckoo Hashing
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part II
More Robust Hashing: Cuckoo Hashing with a Stash
ESA '08 Proceedings of the 16th annual European symposium on Algorithms
B-tries for disk-based string management
The VLDB Journal — The International Journal on Very Large Data Bases
Addressing for random-access storage
IBM Journal of Research and Development
Search data structures for skewed strings
WEA'03 Proceedings of the 2nd international conference on Experimental and efficient algorithms
Comparing integer data structures for 32 and 64 bit keys
WEA'08 Proceedings of the 7th international conference on Experimental algorithms
Cache-Conscious collision resolution in string hash tables
SPIRE'05 Proceedings of the 12th international conference on String Processing and Information Retrieval
Cache-oblivious index for approximate string matching
CPM'07 Proceedings of the 18th annual conference on Combinatorial Pattern Matching
Comparing integer data structures for 32- and 64-bit keys
Journal of Experimental Algorithmics (JEA)
Lock-free parallel dynamic programming
Journal of Parallel and Distributed Computing
Engineering scalable, cache and space efficient tries for strings
The VLDB Journal — The International Journal on Very Large Data Bases
Redesigning the string hash table, burst trie, and BST to exploit cache
Journal of Experimental Algorithmics (JEA)
Hi-index | 0.00 |
A hash table is a fundamental data structure in computer science that can offer rapid storage and retrieval of data. A leading implementation for string keys is the cache-conscious array hash table. Although fast with strings, there is currently no information in the research literature on its performance with integer keys. More importantly, we do not know how efficient an integer-based array hash table is compared to other hash tables that are designed for integers, such as bucketized cuckoo hashing. In this paper, we explain how to efficiently implement an array hash table for integers. We then demonstrate, through careful experimental evaluations, which hash table, whether it be a bucketized cuckoo hash table, an array hash table, or alternative hash table schemes such as linear probing, offers the best performance---with respect to time and space---for maintaining a large dictionary of integers in-memory, on a current cache-oriented processor.