Recalibrating Fine-Grained Locking in Parallel Bucket Hash Tables
Autor: | Ákos Dudás, Sándor Juhász, Sándor Kolumbán |
---|---|
Rok vydání: | 2013 |
Předmět: | |
Zdroj: | Facing the Multicore-Challenge III ISBN: 9783642358920 Facing the Multicore-Challenge |
DOI: | 10.1007/978-3-642-35893-7_6 |
Popis: | 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. |
Databáze: | OpenAIRE |
Externí odkaz: |