Skip to content

u-index/u-index-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

170 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

U-index

Install

  1. Clone this repo into eg ~/u-index-rs.
  2. Also clone sdsl-lite-fm into a sibling dir ~/sdsl-lite-fm
  3. Follow the instructions in the sdsl-lite-fm to build that library.
  4. Now do cargo build -r in the u-index-rs dir. That should work.

Run

Experiments are run from the u-index-rs dir using cargo run -r --example bench. This writes ./stats.json. That can be plotted using ./eval.py.

Input data is ./human-genome.fa, which should be (a symlink to) a (human) genome. I use chm13v2.0.fa. Note that examples/bench.rs by default only reads chromosome 1, or more generally the first sequence in the fasta file.

Note: If you have CMake >= 4.0 installed, you may have to explicitly set the CMAKE_POLICY_VERSION_MINIMUM environment variable for divsufsort_rs to build. You can do this like so:

CMAKE_POLICY_VERSION_MINIMUM=3.5 cargo b --release

Paper

U-Index: A Universal Indexing Framework for Matching Long Patterns
Lorraine A. K. Ayad, Gabriele Fici, Ragnar Groot Koerkamp, Grigorios Loukides, Rob Patro, Giulio Ermanno Pibiri, and Solon P. Pissis

SEA 2025, doi.org/10.4230/LIPIcs.SEA.2025.4

About

Implementation of the u-index

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors