diff options
author | Nilay Vaish <nilay@cs.wisc.edu> | 2015-09-23 11:23:10 -0500 |
---|---|---|
committer | Nilay Vaish <nilay@cs.wisc.edu> | 2015-09-23 11:23:10 -0500 |
commit | 6bd7aa1f201253905458efaf8bf1202ffbd0d70a (patch) | |
tree | 8af1f7b38eb685934c37e189fa98492bd08c1162 /src/mem/ruby/filters/H3BloomFilter.cc | |
parent | c2376918a5a43febbd89a5211c411e6d31ada28f (diff) | |
download | gem5-6bd7aa1f201253905458efaf8bf1202ffbd0d70a.tar.xz |
ruby: bloom filters: refactor code
Diffstat (limited to 'src/mem/ruby/filters/H3BloomFilter.cc')
-rw-r--r-- | src/mem/ruby/filters/H3BloomFilter.cc | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/src/mem/ruby/filters/H3BloomFilter.cc b/src/mem/ruby/filters/H3BloomFilter.cc index b0d277782..5d6a9558f 100644 --- a/src/mem/ruby/filters/H3BloomFilter.cc +++ b/src/mem/ruby/filters/H3BloomFilter.cc @@ -27,7 +27,6 @@ */ #include "base/intmath.hh" -#include "base/str.hh" #include "mem/ruby/filters/H3BloomFilter.hh" using namespace std; @@ -354,7 +353,7 @@ static int H3[64][16] = { 394261773, 848616745, 15446017, 517723271, }, }; -H3BloomFilter::H3BloomFilter(string str) +H3BloomFilter::H3BloomFilter(int size, int hashes, bool parallel) { //TODO: change this ugly init code... primes_list[0] = 9323; @@ -378,21 +377,9 @@ H3BloomFilter::H3BloomFilter(string str) adds_list[4] = 7777; adds_list[5] = 65931; - vector<string> items; - tokenize(items, str, '_'); - assert(items.size() == 3); - - // head contains filter size, tail contains bit offset from block number - m_filter_size = atoi(items[0].c_str()); - m_num_hashes = atoi(items[1].c_str()); - - if (items[2] == "Regular") { - isParallel = false; - } else if (items[2] == "Parallel") { - isParallel = true; - } else { - panic("ERROR: Incorrect config string for MultiHash Bloom! :%s", str); - } + m_filter_size = size; + m_num_hashes = hashes; + isParallel = parallel; m_filter_size_bits = floorLog2(m_filter_size); |