summaryrefslogtreecommitdiffstats
path: root/include/shard
diff options
context:
space:
mode:
authorDouglas Rumbaugh <dbr4@psu.edu>2023-07-26 09:47:34 -0400
committerDouglas Rumbaugh <dbr4@psu.edu>2023-07-26 09:47:34 -0400
commita29c1d776830f9fd929bf7b8696774ad0d3d50d0 (patch)
treee1f6237362845559d80cb8bb785fdbdf59f986d7 /include/shard
parent63929187f2c1d0c95719d8435794a5136cb1cc73 (diff)
downloaddynamic-extension-a29c1d776830f9fd929bf7b8696774ad0d3d50d0.tar.gz
Exposed epsilon configuration parameter for PGM
Diffstat (limited to 'include/shard')
-rw-r--r--include/shard/PGM.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/include/shard/PGM.h b/include/shard/PGM.h
index 0d4268a..65d548e 100644
--- a/include/shard/PGM.h
+++ b/include/shard/PGM.h
@@ -53,12 +53,13 @@ struct PGMBufferState {
};
-template <RecordInterface R>
+template <RecordInterface R, size_t epsilon=128>
class PGM {
private:
typedef decltype(R::key) K;
typedef decltype(R::value) V;
+
public:
// FIXME: there has to be a better way to do this
@@ -112,7 +113,7 @@ public:
}
if (m_reccnt > 0) {
- m_pgm = pgm::PGMIndex<K>(keys);
+ m_pgm = pgm::PGMIndex<K, epsilon>(keys);
}
}
@@ -175,7 +176,7 @@ public:
}
if (m_reccnt > 0) {
- m_pgm = pgm::PGMIndex<K>(keys);
+ m_pgm = pgm::PGMIndex<K, epsilon>(keys);
}
}
@@ -270,7 +271,7 @@ private:
size_t m_alloc_size;
K m_max_key;
K m_min_key;
- pgm::PGMIndex<K> m_pgm;
+ pgm::PGMIndex<K, epsilon> m_pgm;
BloomFilter<R> *m_bf;
};