Download presentation
Presentation is loading. Please wait.
1
Hit or Miss ? !!!
2
Small size. Simple and fast. Implementable with hardware. Does not need too much power. Does not predict miss if we have a hit. Have a high hit rate especially on misses. Hit or Miss ? !!!
3
Bloom filter: is a method representing a set of N elements ( a 1,…,a n ) to support membership queries. The idea is to allocate a vector v of m bits, initially all set to 0. Choose k independent hash functions, h 1,…, h k,each with range 1… m. For each element a, the bits at positions h 1 ( a ),..., h k ( a ) in v are set to 1.
4
Given a query for b we check the bits at positions h 1 ( b ), h 2 ( b ),..., h k ( b ). If any of them is 0, then certainly b is not in the set A. Otherwise we conjecture that b is in the set although there is a certain probability that we are wrong. This is called a “false positive”. The parameters k and m should be chosen such that the probability of a false positive (and hence a false hit) is acceptable.
5
We used a separate predictor for each set in the L2 cache. Set 0 Set 1 Set N Set 0 Set 1 Set N Set 0 Set 1 Set N Set 0 Set 1 Set N Array 0 Array 1 Array N 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
6
SSmall size. SSimple and fast. IImplementable with hardware. DDoes not need too much power. DDoes not predict miss if we have a hit.
7
If A is a dynamic group, and in our case it is a dynamic one, it will be too hard to update the array when removing an element “e” from A, we can’t simply turn off Bloom[H(e)], to do so we must check that there is no element “e1” in A such that H(e)=H(e1). And this take a lot of time. If we don’t update the array the hit rate will become low.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.