DocumentCode
413053
Title
Almost wait-free resizable hashtables
Author
Gao, H. ; Groote, J.F. ; Hesselink, H.W.
Author_Institution
Dept. of Comput. Sci., Groningen Univ., Netherlands
fYear
2004
fDate
26-30 April 2004
Firstpage
50
Abstract
Summary form only given. In multiprogrammed systems, synchronization often turns out to be a performance bottleneck and the source of poor fault-tolerance. Wait-free and lock-free algorithms can do without locking mechanisms, and therefore do not suffer from these problems. We present an efficient almost wait-free algorithm for parallel accessible hashtables, which promises more robust performance and reliability than conventional lock-based implementations. Our solution is as efficient as sequential hashtables. It can easily be implemented using C-like languages and requires on average only constant time for insertion, deletion or accessing of elements. The algorithm allows the hashtables to grow and shrink when needed. A true problem of wait-free and lock-free algorithms is that they are hard to design correctly, even when apparently straightforward. The reason for this is that processes can execute all statements in every conceivable order. Since our algorithm is quite large and rather complex, we turned to the interactive theorem prover PVS to prove safety of our algorithm, which we could not have done reliably by hand. To our knowledge no algorithms of comparable complexity have ever been mechanically verified. Wait-freedom is shown informally.
Keywords
computational complexity; file organisation; multiprocessing programs; parallel processing; performance evaluation; theorem proving; C-like languages; PVS interactive theorem prover; fault-tolerance; lock-free algorithms; multiprogrammed systems; parallel accessible hashtables; performance bottleneck; sequential hashtables; synchronization; wait-free algorithms; wait-free resizable hashtables; wait-freedom; Algorithm design and analysis; Data structures; Delay; Distributed processing; Fault tolerant systems; Memory management; Parallel algorithms; Reliability theory; Robustness; Safety;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International
Print_ISBN
0-7695-2132-0
Type
conf
DOI
10.1109/IPDPS.2004.1302969
Filename
1302969
Link To Document