Skip to content

Latest commit

 

History

History
 
 

bench

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

sucds/bench

Benchmark for bit vectors

This crate provides benchmarks for bit vectors using random bits with different scales (n = 1K and 1M) and different densities (p = 50%, 10%, and 1%).

You can measure time performances with the following commands.

cargo bench timing_bitvec_rank
cargo bench timing_bitvec_select

You can also measure memory efficiency with the following command.

cargo run --release --bin mem_bitvec

Benchmark for integer vectors

This crate provides benchmarks for integer vectors using LCP arrays computed from three texts in Pizza&Chili Corpus, referencing to the experiments in DACs' paper.

We use the head 1 MiB of each text. The basic statistics of the LCP values are as follows.

Data Number Max Mean Meadian
dblp 1 MiB 192 36.198 23
dna 1 MiB 747 10.807 10
proteins 1 MiB 8,085 284.555 5

You can measure time performances with the following command.

cargo bench timing_intvec_access

You can also measure memory efficiency with the following command.

cargo run --release --bin mem_intvec

Benchmark for character sequences

This crate provides benchmarks for character sequences using three texts in Pizza&Chili Corpus.

We use the head 1 MiB of each text, whose statistics are:

Data Number Alphsize
dblp 1 MiB 89
dna 1 MiB 6
proteins 1 MiB 22

You can measure time performances with the following command.

cargo bench timing_chrseq_access

You can also measure memory efficiency with the following command.

cargo run --release --bin mem_chrseq

Native optimizations

We recommend setting the native option to maximize the performance of CPU intrinsics.

RUSTFLAGS="-C target-cpu=native" cargo bench

License

The softwere under data are generated from Pizza&Chili Corpus and follow LGPL License.