Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sri-csl/lfht
Lock Free Hash Table
https://github.com/sri-csl/lfht
Last synced: 15 days ago
JSON representation
Lock Free Hash Table
- Host: GitHub
- URL: https://github.com/sri-csl/lfht
- Owner: SRI-CSL
- License: other
- Created: 2022-11-08T17:35:18.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2022-11-08T17:40:22.000Z (about 2 years ago)
- Last Synced: 2024-11-06T04:37:12.132Z (2 months ago)
- Language: C
- Size: 2.03 MB
- Stars: 0
- Watchers: 18
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# An Expanding (Almost) Lock Free Hash Table
### Prerequisites
The software should build out of the box on any `x86_64` based machine with a modern C
compiler. We rely on the [standard atomics library](http://en.cppreference.com/w/c/atomic)
that is part of `C11`. We have tested the software as thoroughly as we could on both
Darwin and Linux.### Building
```
make
```followed by
```
make check
```should do some rudimentary tests.
```
make stress
```is a much more strenuous set of tests. Be patient, it takes about a week.
The algorithm we use is inspired by a paper by [Tobias Maier](doc/concurrent_htables-v2.pdf), [arxiv](https://arxiv.org/abs/1601.04017),
but is different in several important aspects. The most noticable difference
is that we do not mark the keys before they are copied, but rather require the
threads to copy before marking.