From 3035aa893543a0c1b72d3bc17f2d9c251544537f Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Mon, 4 Jul 2016 20:08:18 +0200 Subject: [PATCH] blocks/blockstore: add CacheOpts - structure of cache config License: MIT Signed-off-by: Jakub Sztandera --- blocks/blockstore/caching.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 blocks/blockstore/caching.go diff --git a/blocks/blockstore/caching.go b/blocks/blockstore/caching.go new file mode 100644 index 000000000..5657059d8 --- /dev/null +++ b/blocks/blockstore/caching.go @@ -0,0 +1,16 @@ +package blockstore + +// Next to each option is it aproximate memory usage per unit +type CacheOpts struct { + HasBloomFilterSize int // 1 bit + HasBloomFilterHashes int // No size, 7 is usually best, consult bloom papers + HasARCCacheSize int // 32 bytes +} + +func DefaultCacheOpts() CacheOpts { + return CacheOpts{ + HasBloomFilterSize: 512 * 8 * 1024, + HasBloomFilterHashes: 7, + HasARCCacheSize: 64 * 1024, + } +}