Performance Evaluation of Separate Chaining for Concurrent Hash Maps
Ana Castro, Miguel Areias and Ricardo Rocha
September 2025
Abstract
Hash maps are a widely used and efficient data structure for storing
and accessing data organized as key-value pairs. Multithreading with
hash maps refers to the ability to concurrently execute multiple
lookup, insert, and delete operations, such that each operation runs
independently while sharing the underlying data structure. One of the
main challenges in hash map implementation is the management of
collisions. Arguably, separate chaining is among the most well-known
strategies for collision resolution. In this paper, we present a
comprehensive study comparing two common approaches to implementing
separate chaining - linked lists and dynamic arrays - in a
multithreaded environment using a lock-based concurrent hash map
design. Our study includes a performance evaluation covering
parameters such as cache behavior, energy consumption, contention
under concurrent access, and resizing overhead. Experimental results
show that dynamic arrays maintain more predictable memory access and
lower energy consumption in multithreaded environments.
Bibtex
@Article{castro-mathematics25,
author = {A. Castro and M. Areias and R. Rocha},
title = {{Performance Evaluation of Separate Chaining for Concurrent Hash Maps}},
journal = {Mathematics},
pages = {1--19},
volume = {14},
number = {17},
month = {September},
year = {2025},
note = {Article number 2820},
}
Download Paper
PDF file
MDPI