• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ben-manes / caffeine / 1757
100%

Build:
DEFAULT BRANCH: master
Ran 09 May 2016 02:54PM UTC
Jobs 1
Files 65
Run time 4s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
1757

push

travis-ci

ben-manes
A custom a Bloom filter for policies in the simulator

This implementation is intended to use in TinyLFU-based caches for the
doorkeeper and adaptive sizing. The primary value is that it uses the
same hash functions as the CountMin4. This will allow computing the
hashes once for use in multiple sketches.

The doorkeeper is a technique to reduce the size of the CountMinSketch
by preventing "one-hit-wonders" from needing to be be stored. This is
described in the paper and implemented in go-tinylfu. It was backlogged
in Caffeine and not simulated, but should be introduced at some point.

The adaptive W-TinyLFU uses the sketch to detect mispredictions. This
increases the hit rate by dynamically tuning towards recency or
frequency depending on the workload.

Amusing story. This is based on my old interview prep (code kata) [1]
that later led to Guava's version. When I joined the team kept arguing
that no efficient implementation was possible (believed a SecureRandom
was needed, with the hashCode as the seed?!?). For some reason Googlers
hate reading Wikipedia and research papers, and were surprised when I
showed them a working prototype (yes, a toy hack as I never thought
anyone would look at it). But alas I was then pushed out of discussions
due to being a Noogler and the result was slow due to poor GC (Hasher)
and modulus operations (rejected my power-of-two and no-GC requests).

[1] https://github.com/ben-manes/concurrentlinkedhashmap/blob/wiki/BloomFilter.md

5326 of 5636 relevant lines covered (94.5%)

0.94 hits per line

Jobs
ID Job ID Ran Files Coverage
1 1757.1 (TERM=dumb) 09 May 2016 02:54PM UTC 0
94.5
Travis Job 1757.1
Source Files on build 1757
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #1757
  • e3f74b2a on github
  • Prev Build on master (#1756)
  • Next Build on master (#1758)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc