https://github.com/sfu-dis/optiql
Optimistic queue-based reader-writer lock for robust index synchronization (SIGMOD 2024)
https://github.com/sfu-dis/optiql
adaptive-radix-tree btree indexing latching lock mcs mcs-lock optimistic-lock-coupling optimistic-locking reader-writer-lock robustness synchornization
Last synced: about 1 month ago
JSON representation
Optimistic queue-based reader-writer lock for robust index synchronization (SIGMOD 2024)
- Host: GitHub
- URL: https://github.com/sfu-dis/optiql
- Owner: sfu-dis
- Created: 2023-08-18T19:37:27.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-09T04:22:23.000Z (about 1 year ago)
- Last Synced: 2025-03-25T10:04:30.855Z (about 2 months ago)
- Topics: adaptive-radix-tree, btree, indexing, latching, lock, mcs, mcs-lock, optimistic-lock-coupling, optimistic-locking, reader-writer-lock, robustness, synchornization
- Language: C++
- Homepage:
- Size: 3.29 MB
- Stars: 24
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## OptiQL: Optimistic Queuing Lock
OptiQL is an optimistic lock that offers both high read performance and robustness under contention by extending the classic queue-based MCS locks with optimistic reads.
See details in our [SIGMOD 2024 paper](https://www.cs.sfu.ca/~tzwang/optiql.pdf) below. If you use our work, please cite:
```
OptiQL: Robust Optimistic Locking for Memory-Optimized Indexes.
Ge Shi, Ziyi Yan and Tianzheng Wang.
Proceedings of the ACM on Management of Data, Vol 1, No. 3 (SIGMOD 2024)
```See you in [Santiago](https://2024.sigmod.org/)!
### Included in this repository:
This repository implements OptiQL and several other baseline locks, along with index use cases (B+-tree and ART) that use OptiQL in optimistic lock coupling. See sub-directories for:
* Index benchmarks: under `index-benchmarks` directory
* Microbenchmarks: under `latch-microbenchmarks` directory
* Plotting scripts: under `plots` directory