From 194d9d7c8d2364073263505c98c6ecbf9f2cae22 Mon Sep 17 00:00:00 2001 From: khizmax Date: Sun, 13 Sep 2015 17:17:19 +0300 Subject: [PATCH] Fixed MultiLevelHashSet MT-test --- tests/unit/set2/set_insdel_func.cpp | 3 +++ tests/unit/set2/set_insdel_func.h | 3 +++ tests/unit/set2/set_insdel_string.cpp | 3 +++ tests/unit/set2/set_insdel_string.h | 3 +++ tests/unit/set2/set_insdelfind.cpp | 3 +++ tests/unit/set2/set_insdelfind.h | 3 +++ tests/unit/set2/set_type_multilevel_hashset.h | 2 +- 7 files changed, 19 insertions(+), 1 deletion(-) diff --git a/tests/unit/set2/set_insdel_func.cpp b/tests/unit/set2/set_insdel_func.cpp index 3bb3286e..02773f1e 100644 --- a/tests/unit/set2/set_insdel_func.cpp +++ b/tests/unit/set2/set_insdel_func.cpp @@ -19,6 +19,9 @@ namespace set2 { c_nCuckooProbesetSize = cfg.getSizeT("CuckooProbesetSize", c_nCuckooProbesetSize ); c_nCuckooProbesetThreshold = cfg.getSizeT("CuckooProbesetThreshold", c_nCuckooProbesetThreshold ); + c_nMultiLevelSet_HeadBits = cfg.getSizeT("MultiLevelMapHeadBits", c_nMultiLevelSet_HeadBits); + c_nMultiLevelSet_ArrayBits = cfg.getSizeT("MultiLevelMapArrayBits", c_nMultiLevelSet_ArrayBits); + if ( c_nInsertThreadCount == 0 ) c_nInsertThreadCount = std::thread::hardware_concurrency(); if ( c_nDeleteThreadCount == 0 ) diff --git a/tests/unit/set2/set_insdel_func.h b/tests/unit/set2/set_insdel_func.h index 505c0a49..727f330d 100644 --- a/tests/unit/set2/set_insdel_func.h +++ b/tests/unit/set2/set_insdel_func.h @@ -27,6 +27,9 @@ namespace set2 { size_t c_nCuckooProbesetSize = 16; // CuckooSet probeset size (only for list-based probeset) size_t c_nCuckooProbesetThreshold = 0; // CUckooSet probeset threshold (0 - use default) + size_t c_nMultiLevelSet_HeadBits = 10; + size_t c_nMultiLevelSet_ArrayBits = 4; + size_t c_nLoadFactor = 2; private: diff --git a/tests/unit/set2/set_insdel_string.cpp b/tests/unit/set2/set_insdel_string.cpp index f84adffb..f20d5205 100644 --- a/tests/unit/set2/set_insdel_string.cpp +++ b/tests/unit/set2/set_insdel_string.cpp @@ -18,6 +18,9 @@ namespace set2 { c_nCuckooProbesetSize = cfg.getSizeT("CuckooProbesetSize", c_nCuckooProbesetSize ); c_nCuckooProbesetThreshold = cfg.getSizeT("CuckooProbesetThreshold", c_nCuckooProbesetThreshold ); + c_nMultiLevelSet_HeadBits = cfg.getSizeT("MultiLevelMapHeadBits", c_nMultiLevelSet_HeadBits); + c_nMultiLevelSet_ArrayBits = cfg.getSizeT("MultiLevelMapArrayBits", c_nMultiLevelSet_ArrayBits); + if ( c_nInsertThreadCount == 0 ) c_nInsertThreadCount = std::thread::hardware_concurrency(); if ( c_nDeleteThreadCount == 0 ) diff --git a/tests/unit/set2/set_insdel_string.h b/tests/unit/set2/set_insdel_string.h index 8d68793a..7608542f 100644 --- a/tests/unit/set2/set_insdel_string.h +++ b/tests/unit/set2/set_insdel_string.h @@ -23,6 +23,9 @@ namespace set2 { size_t c_nCuckooProbesetSize = 16; // CuckooSet probeset size (only for list-based probeset) size_t c_nCuckooProbesetThreshold = 0; // CUckooSet probeset threshold (0 - use default) + size_t c_nMultiLevelSet_HeadBits = 10; + size_t c_nMultiLevelSet_ArrayBits = 4; + size_t c_nLoadFactor = 2; private: diff --git a/tests/unit/set2/set_insdelfind.cpp b/tests/unit/set2/set_insdelfind.cpp index 3330b278..df6a559a 100644 --- a/tests/unit/set2/set_insdelfind.cpp +++ b/tests/unit/set2/set_insdelfind.cpp @@ -19,6 +19,9 @@ namespace set2 { c_nCuckooProbesetSize = cfg.getSizeT("CuckooProbesetSize", c_nCuckooProbesetSize ); c_nCuckooProbesetThreshold = cfg.getSizeT("CuckooProbesetThreshold", c_nCuckooProbesetThreshold ); + c_nMultiLevelSet_HeadBits = cfg.getSizeT("MultiLevelMapHeadBits", c_nMultiLevelSet_HeadBits); + c_nMultiLevelSet_ArrayBits = cfg.getSizeT("MultiLevelMapArrayBits", c_nMultiLevelSet_ArrayBits); + if ( c_nThreadCount == 0 ) c_nThreadCount = std::thread::hardware_concurrency(); diff --git a/tests/unit/set2/set_insdelfind.h b/tests/unit/set2/set_insdelfind.h index 97f54de8..74971e88 100644 --- a/tests/unit/set2/set_insdelfind.h +++ b/tests/unit/set2/set_insdelfind.h @@ -22,6 +22,9 @@ namespace set2 { size_t c_nCuckooProbesetSize = 16; // CuckooSet probeset size (only for list-based probeset) size_t c_nCuckooProbesetThreshold = 0; // CUckooSet probeset threshold (0 - use default) + size_t c_nMultiLevelSet_HeadBits = 10; + size_t c_nMultiLevelSet_ArrayBits = 4; + size_t c_nLoadFactor = 2; public: diff --git a/tests/unit/set2/set_type_multilevel_hashset.h b/tests/unit/set2/set_type_multilevel_hashset.h index 45b3bcc3..c022d5de 100644 --- a/tests/unit/set2/set_type_multilevel_hashset.h +++ b/tests/unit/set2/set_type_multilevel_hashset.h @@ -21,7 +21,7 @@ namespace set2 { template MultiLevelHashSet( Config const& cfg ) - : base_class( cfg.c_nSetSize, cfg.c_nLoadFactor ) + : base_class( cfg.c_nMultiLevelSet_HeadBits, cfg.c_nMultiLevelSet_ArrayBits ) {} template -- 2.34.1