WABPF / project4-workload

0 stars 0 forks source link

调研与尝试:Bloom Filter Map:5.16 #2

Open yunwei37 opened 1 year ago

yunwei37 commented 1 year ago

布隆过滤器是一种节省空间的概率数据结构,用于快速测试一个元素是否存在于一个集合中。在布隆过滤器中,假阳性是可能的,而假阴性则不可能。

这个补丁集包括布隆过滤器中可配置数量的哈希值和条目的基准测试。这些基准大致表明,平均而言,使用3个哈希函数是最理想的选择之一。当比较hashmap查找中使用3个哈希值的bloom filter和不使用bloom filter的hashmap查找时,使用bloom filter的查找对于5万个条目大约快15%,对于10万个条目快25%,对于5万个条目快180%,对于1百万个条目快200%。

CSZongzi commented 1 year ago

计划依序实现:

  1. 在本地开发环境成功运行 samples/bpf 中的至少一个实例
  2. 验证 [PATCH bpf-next 4/5] bpf/benchs: Add benchmark test for bloom filter maps
  3. 验证 [PATCH bpf-next 5/5] bpf/benchs: Add benchmarks for comparing hashmap lookups with vs. without bloom filter
CSZongzi commented 1 year ago

寄寄:

$ bpftool prog load tracex1_kern.o /sys/fs/bpf/tracex1_kern
Error: failed to pin program kprobe/__netif_receive_skb_core
Warning: bpftool is now running in libbpf strict mode and has more stringent requirements about BPF programs.
If it used to work for this object file but now doesn't, see --legacy option for more details.
CSZongzi commented 1 year ago

这个 issue 我可能挣扎不动了 = =

yunwei37 commented 1 year ago

可能需要sudo 一下?

不过算啦,不想试试也没关系:)