Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#994958: ITP: critnib -- ordered map data structure with lock-free reads

0 views
Skip to first unread message

Adam Borowski

unread,
Sep 23, 2021, 7:40:03 PM9/23/21
to
Package: wnpp
Severity: wishlist
Owner: Adam Borowski <kilo...@angband.pl>
X-Debbugs-Cc: debian...@lists.debian.org

* Package name : critnib
Version : 1.0
Upstream Author : yours truly
* URL : https://github.com/kilobyte/critnib
* License : BSD-3
Programming Lang: C
Description : ordered map data structure with lock-free reads
Critnib is a data structure that provides a very fast equal and
less-than/greater-than searches; it is a mix between DJBerstein's
critbit and radix trees. While in bad cases it has worse memory use
than binary trees, it works well on real-life data which tends to
have a limited number of "decision bits":
* fully random: divergence happens immediately
* malloc addresses: clumps of distinct bits in the middle
* sequences: only lowest bits are filled
.
This library ships only uintptr_t→uintptr_t mappings, optimized for
reads from a very critical section but not so frequent writes. Other
variants also exist (such as fully lock-free writes, keys of arbitrary
length), and can be added upon request.

0 new messages