feat: add approximate kmer fingerprinting with memory-mapped storage

Introduce a new `fingerprint` module that stores packed B-bit vectors via memory-mapped files. Expose the module publicly and add `build_approx_evidence` to `Layer` and `MphfLayer` for generating compact `fingerprint.bin` files. Implement `find_approx` for fast, probabilistic kmer lookups using configurable bit-widths. Update dependencies to `bitvec` v1 and add `cacheline-ef`, `epserde`, and `memmap2` to support the new storage and serialization logic.
This commit is contained in:
Eric Coissac
2026-05-23 08:48:59 +02:00
parent 24afd74e2f
commit e1dab86daf
6 changed files with 213 additions and 3 deletions
+1
View File
@@ -12,6 +12,7 @@ cacheline-ef = "1.1"
epserde = "0.8"
rayon = "1"
ndarray = "0.16"
bitvec = "1"
memmap2 = "0.9"
serde = { version = "1", features = ["derive"] }
serde_json = "1"