TY - GEN
T1 - Recalibrating fine-grained locking in parallel bucket hash tables
AU - Dudás, Á.
AU - Juhász, S.
AU - Kolumbán, S.
PY - 2013
Y1 - 2013
N2 - Mutual exclusion protects data structures in parallel environments in order to preserve data integrity. A lock being held effectively blocks the execution of all other threads wanting to access the same shared resource until the lock is released. This blocking behavior reduces the level of parallelism causing performance loss. Fine grained locking reduces the contention for the locks resulting in better throughput, however, the granularity, i.e. how many locks to use, is not straightforward. In large bucket hash tables, the best approach is to divide the table into blocks, each containing one or more buckets, and locking these blocks independently. The size of the block, for optimal performance, depends on the time spent within the critical sections, which depends on the table's internal properties, and the arrival intensity of the queries. A queuing model is presented capturing this behavior, and an adaptive algorithm is presented fine-tuning the granularity of locking (the block size) to adapt to the execution environment.
AB - Mutual exclusion protects data structures in parallel environments in order to preserve data integrity. A lock being held effectively blocks the execution of all other threads wanting to access the same shared resource until the lock is released. This blocking behavior reduces the level of parallelism causing performance loss. Fine grained locking reduces the contention for the locks resulting in better throughput, however, the granularity, i.e. how many locks to use, is not straightforward. In large bucket hash tables, the best approach is to divide the table into blocks, each containing one or more buckets, and locking these blocks independently. The size of the block, for optimal performance, depends on the time spent within the critical sections, which depends on the table's internal properties, and the arrival intensity of the queries. A queuing model is presented capturing this behavior, and an adaptive algorithm is presented fine-tuning the granularity of locking (the block size) to adapt to the execution environment.
UR - https://www.scopus.com/pages/publications/84872445958
U2 - 10.1007/978-3-642-35893-7_6
DO - 10.1007/978-3-642-35893-7_6
M3 - Conference contribution
AN - SCOPUS:84872445958
SN - 978-3-642-35892-0
T3 - Lecture Notes in Computer Science (LNCS)
SP - 60
EP - 71
BT - Facing the multicore-challenge III
A2 - Keller, R.
A2 - Kramer, D.
A2 - Weiss, J.P.
PB - Springer
CY - Berlin
T2 - 3rd Conference on Facing the Multicore-Challenge
Y2 - 19 September 2012 through 21 September 2012
ER -