jbapple / libfilter

High-speed Bloom filters and taffy filters for C, C++, and Java
Apache License 2.0
32 stars 6 forks source link

Benchmark for different filters #21

Closed patelprateek closed 1 year ago

patelprateek commented 2 years ago

Thanks for the amazing work. Can we please also add some benchmarking results for different filters. Trying to understand the Build latency , query latency , fpp rates and bits per value for these different filters to choose something that fits under some of opur sla requirements. use case is upper bound 50-100 million values to be added , for a given bits/value , what would be the memory size for the filter and build latency when adding huge number of elements to the filter

jbapple commented 2 years ago

Benchmarks are available in https://github.com/jbapple/libfilter/tree/master/cpp/extras/benchmarks

patelprateek commented 2 years ago

ran make make cpp-world : throws error make[3]: Entering directory '/home/jupyter/libfilter/cpp/extras/test' g++ -std=c++17 -I /home/jupyter/libfilter/c/include -I /home/jupyter/libfilter/cpp/include -I /home/jupyter/libfilter/cpp/extras/include -I /home/jupyter/libfilter/cpp/extras/googletest/googletest/include -I googletest/googletest/include -W -Wall -Wextra -march=native -mtune=native -O3 -DNDEBUG -ggdb3 -Iinclude -MM block.cpp -o block.d.new block.cpp:5:10: fatal error: gtest/gtest.h: No such file or directory 5 | #include "gtest/gtest.h" | ^~~~~~~

jbapple commented 2 years ago

You need to initialize the git submodules first: git submodule update --init --recursive