From b68165e6375e3936f6f23466d827f24e48ebad96 Mon Sep 17 00:00:00 2001 From: khizmax Date: Tue, 18 Jul 2017 12:24:02 +0300 Subject: [PATCH] Tuning stress-tests for GCCFarm --- CMakeLists.txt | 2 + test/CMakeLists.txt | 9 +- test/stress/data/test-debug-gccfarm.conf | 257 +++++++++++++++++++++ test/stress/data/test-debug.conf | 18 +- test/stress/data/test-express-gccfarm.conf | 255 ++++++++++++++++++++ test/stress/data/test-gccfarm.conf | 256 ++++++++++++++++++++ 6 files changed, 785 insertions(+), 12 deletions(-) create mode 100644 test/stress/data/test-debug-gccfarm.conf create mode 100644 test/stress/data/test-express-gccfarm.conf create mode 100644 test/stress/data/test-gccfarm.conf diff --git a/CMakeLists.txt b/CMakeLists.txt index dc819721..9bfb74b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,6 +18,8 @@ option(WITH_TESTS_COVERAGE "Analyze test coverage using gcov (only for gcc)" OFF option(WITH_BOOST_ATOMIC "Use boost atomics (only for boost >= 1.54)" OFF) option(WITH_ASAN "Build ASan+UBSan instrumented code" OFF) option(WITH_TSAN "Build TSan instrumented code" OFF) +option(ENABLE_UNIT_TEST "Enable unit test" ON) +option(ENABLE_STRESS_TEST "Enable stress test" ON) set(CMAKE_TARGET_ARCHITECTURE "" CACHE string "Target build architecture") find_package(Threads) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 62f2419b..f39d88c0 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -81,9 +81,12 @@ if(CDSTEST_HAVE_BYTESWAP_H) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DCDSTEST_HAVE_BYTESWAP_H") endif() - -add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/unit) -add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/stress) +if(ENABLE_UNIT_TEST) + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/unit) +endif() +if(ENABLE_STRESS_TEST) + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/stress) +endif() file(GLOB SANITIZER_OPTION_FILES ${PROJECT_SOURCE_DIR}/tools/tsan-suppression) file(COPY ${SANITIZER_OPTION_FILES} DESTINATION ${EXECUTABLE_OUTPUT_PATH}) diff --git a/test/stress/data/test-debug-gccfarm.conf b/test/stress/data/test-debug-gccfarm.conf new file mode 100644 index 00000000..1291c6bc --- /dev/null +++ b/test/stress/data/test-debug-gccfarm.conf @@ -0,0 +1,257 @@ +[General] +# HZP scan strategy, possible values are "classic", "inplace". Default is "classic" +hp_scan_strategy=inplace +hazard_pointer_count=72 +#hp_max_thread_count=32 +#hp_retired_ptr_count=256 + +# cds::gc::DHP initialization parameters +dhp_init_guard_count=8 + +# cds::urcu::gc initialization parameters +rcu_buffer_size=256 + + +[Stack_Push] +ThreadCount=4 +StackSize=100000 +EliminationSize=4 + +[Stack_PushPop] +PushThreadCount=4 +PopThreadCount=4 +StackSize=800000 +EliminationSize=4 + +[IntrusiveStack_PushPop] +PushThreadCount=4 +PopThreadCount=4 +StackSize=800000 +EliminationSize=4 +# Flat combining stack parameters +# FCIterate=1 - the test will be run iteratively +# for combine pass count from 1 to FCCombinePassCount +# and compact factor from 1 to FCCompactFactor +# FCIterate=0 - the test runs only once for giving +# FCCombinePassCount and FCCompactFactor +FCIterate=0 +FCCombinePassCount=4 +FCCompactFactor=64 + +[queue_push] +ThreadCount=4 +QueueSize=100000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_pop] +ThreadCount=4 +QueueSize=100000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_push_pop] +ProducerCount=2 +ConsumerCount=2 +QueueSize=100000 +# HeavyValueSize - size of value for flat cobining containers, default 100 +# HeavyValueSize=100 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_random] +ThreadCount=4 +QueueSize=500000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[intrusive_queue_push_pop] +ReaderCount=2 +WriterCount=2 +QueueSize=100000 +# Flat combining queue parameters +FCCompactFactor=64 +FCPassCount=8 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[bounded_queue_fulness] +ThreadCount=4 +QueueSize=1024 +PassCount=100000 + +[spsc_queue] +QueueSize=1024 +PassCount=10000 + +[spsc_buffer] +BufferSize=100000 +PushCount=100000 + +[pqueue_pop] +ThreadCount=4 +QueueSize=30000 + +[pqueue_push] +ThreadCount=4 +QueueSize=30000 + +[pqueue_push_pop] +PushThreadCount=4 +PopThreadCount=4 +QueueSize=30000 + +[map_find_string] +ThreadCount=2 +MapSize=10000 +PercentExists=50 +PassCount=2 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_func] +InsertThreadCount=2 +DeleteThreadCount=2 +UpdateThreadCount=2 +ThreadPassCount=6 +MapSize=10000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_item_int] +InsertThreadCount=2 +DeleteThreadCount=2 +MapSize=5000 +GoalItem=2500 +AttemptCount=500 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_string] +InsertThreadCount=2 +DeleteThreadCount=2 +ThreadPassCount=4 +MapSize=10000 +MaxLoadFactor=4 +PrintGCStateFlag=1 + +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdelfind] +InitialMapSize=50000 +ThreadCount=4 +MaxLoadFactor=4 +InsertPercentage=20 +DeletePercentage=20 +Duration=3 + +# *** Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_delodd] +MapSize=10000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=20 + +#Cuckoo map properties +CuckooInitialSize=256 +CuckooProbesetSize=8 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_minmax] +MapSize=50000 +InsThreadCount=2 +ExtractThreadCount=2 +PassCount=500 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_iter_erase] +MapSize=5000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=400 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[free_list] +ThreadCount=4 +PassCount=100000 \ No newline at end of file diff --git a/test/stress/data/test-debug.conf b/test/stress/data/test-debug.conf index e21af85e..ddbd6730 100644 --- a/test/stress/data/test-debug.conf +++ b/test/stress/data/test-debug.conf @@ -18,14 +18,14 @@ StackSize=100000 EliminationSize=4 [Stack_PushPop] -PushThreadCount=8 -PopThreadCount=8 +PushThreadCount=4 +PopThreadCount=4 StackSize=800000 EliminationSize=4 [IntrusiveStack_PushPop] -PushThreadCount=8 -PopThreadCount=8 +PushThreadCount=4 +PopThreadCount=4 StackSize=800000 EliminationSize=4 # Flat combining stack parameters @@ -49,7 +49,7 @@ SegmentedQueue_Iterate=0 SegmentedQueue_SegmentSize=64 [queue_pop] -ThreadCount=8 +ThreadCount=4 QueueSize=100000 # SegmentedQueue parameters: # SegmentedQueue_Iterate: @@ -175,8 +175,8 @@ FeldmanMapHeadBits=8 FeldmanMapArrayBits=8 [map_insdel_string] -InsertThreadCount=4 -DeleteThreadCount=4 +InsertThreadCount=2 +DeleteThreadCount=2 ThreadPassCount=4 MapSize=10000 MaxLoadFactor=4 @@ -212,7 +212,7 @@ FeldmanMapArrayBits=8 [map_delodd] MapSize=10000 -InsThreadCount=3 +InsThreadCount=2 DelThreadCount=2 ExtractThreadCount=2 FindThreadCount=2 @@ -241,7 +241,7 @@ FeldmanMapArrayBits=8 [map_iter_erase] MapSize=5000 -InsThreadCount=3 +InsThreadCount=2 DelThreadCount=2 ExtractThreadCount=2 FindThreadCount=2 diff --git a/test/stress/data/test-express-gccfarm.conf b/test/stress/data/test-express-gccfarm.conf new file mode 100644 index 00000000..0e367af0 --- /dev/null +++ b/test/stress/data/test-express-gccfarm.conf @@ -0,0 +1,255 @@ +[General] +# HP scan strategy, possible values are "classic", "inplace". Default is "classic" +hp_scan_strategy=inplace +# Hazard pointer count per thread, for gc::HP +hazard_pointer_count=72 +#hp_max_thread_count=32 +#hp_retired_ptr_count=256 + +# cds::gc::DHP initialization parameters +dhp_init_guard_count=16 + +# cds::urcu::gc initialization parameters +rcu_buffer_size=256 + +[Stack_Push] +ThreadCount=4 +StackSize=500000 +EliminationSize=4 + +[Stack_PushPop] +PushThreadCount=2 +PopThreadCount=2 +StackSize=4000000 +EliminationSize=4 + +[IntrusiveStack_PushPop] +PushThreadCount=2 +PopThreadCount=2 +StackSize=4000000 +EliminationSize=4 +# Flat combining stack parameters +# FCIterate=1 - the test will be run iteratively +# for combine pass count from 1 to FCCombinePassCount +# and compact factor from 1 to FCCompactFactor +# FCIterate=0 - the test runs only once for giving +# FCCombinePassCount and FCCompactFactor +FCIterate=0 +FCCombinePassCount=4 +FCCompactFactor=64 + +[queue_push] +ThreadCount=4 +QueueSize=3000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_pop] +ThreadCount=4 +QueueSize=3000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_push_pop] +ConsumerCount=2 +ProducerCount=2 +QueueSize=3000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[queue_random] +ThreadCount=4 +QueueSize=3000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[intrusive_queue_push_pop] +ReaderCount=2 +WriterCount=2 +QueueSize=3000000 +# Flat combining queue parameters +FCCompactFactor=64 +FCPassCount=8 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=64 + +[bounded_queue_fulness] +ThreadCount=4 +QueueSize=1024 +PassCount=100000 + +[spsc_queue] +QueueSize=1024 +PassCount=10000 + +[spsc_buffer] +BufferSize=100000 +PushCount=300000 + +[pqueue_pop] +ThreadCount=4 +QueueSize=500000 + +[pqueue_push] +ThreadCount=4 +QueueSize=500000 + +[pqueue_push_pop] +PushThreadCount=2 +PopThreadCount=2 +QueueSize=500000 + +[map_find_string] +ThreadCount=4 +MapSize=10000 +PercentExists=50 +PassCount=2 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_func] +InsertThreadCount=2 +DeleteThreadCount=2 +UpdateThreadCount=2 +ThreadPassCount=4 +MapSize=50000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_item_int] +InsertThreadCount=2 +DeleteThreadCount=2 +MapSize=10000 +GoalItem=5000 +AttemptCount=1000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_string] +InsertThreadCount=2 +DeleteThreadCount=2 +ThreadPassCount=6 +MapSize=10000 +MaxLoadFactor=4 +PrintGCStateFlag=1 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdelfind] +InitialMapSize=50000 +ThreadCount=4 +MaxLoadFactor=4 +InsertPercentage=20 +DeletePercentage=20 +Duration=3 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_delodd] +MapSize=10000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=70 + +#Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_minmax] +MapSize=50000 +InsThreadCount=2 +ExtractThreadCount=2 +PassCount=1000 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_iter_erase] +MapSize=5000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=500 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[free_list] +ThreadCount=4 +PassCount=1000000 \ No newline at end of file diff --git a/test/stress/data/test-gccfarm.conf b/test/stress/data/test-gccfarm.conf new file mode 100644 index 00000000..a72fa0c9 --- /dev/null +++ b/test/stress/data/test-gccfarm.conf @@ -0,0 +1,256 @@ +[General] +# HZP scan strategy, possible values are "classic", "inplace". Default is "classic" +hp_scan_strategy=inplace +hazard_pointer_count=72 +#hp_max_thread_count=32 +#hp_retired_ptr_count=256 + +# cds::gc::DHP initialization parameters +dhp_init_guard_count=16 + +# cds::urcu::gc initialization parameters +rcu_buffer_size=256 + + +[Stack_Push] +ThreadCount=4 +StackSize=2000000 +EliminationSize=4 + +[Stack_PushPop] +PushThreadCount=3 +PopThreadCount=3 +StackSize=6000000 +EliminationSize=4 + +[IntrusiveStack_PushPop] +PushThreadCount=3 +PopThreadCount=3 +StackSize=6000000 +EliminationSize=4 +# Flat combining stack parameters +# FCIterate=1 - the test will be run iteratively +# for combine pass count from 1 to FCCombinePassCount +# and compact factor from 1 to FCCompactFactor +# FCIterate=0 - the test runs only once for giving +# FCCombinePassCount and FCCompactFactor +FCIterate=0 +FCCombinePassCount=8 +FCCompactFactor=64 + +[queue_push] +ThreadCount=4 +QueueSize=5000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=256 + +[queue_pop] +ThreadCount=4 +QueueSize=5000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=256 + +[queue_push_pop] +ConsumerCount=2 +ProducerCount=2 +QueueSize=5000000 +# HeavyValueSize - size of value for flat cobining containers, default 100 +# HeavyValueSize=100 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=256 + +[queue_random] +ThreadCount=4 +QueueSize=5000000 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=256 + +[intrusive_queue_push_pop] +ReaderCount=2 +WriterCount=2 +QueueSize=5000000 +# Flat combining queue parameters +FCCompactFactor=64 +FCPassCount=8 +# SegmentedQueue parameters: +# SegmentedQueue_Iterate: +# 1 - run test iteratively for segment size from 4 up to SegmentedQueue_SegmentSize +# 0 - run test for segment size equal to SegmentedQueue_SegmentSize +SegmentedQueue_Iterate=0 +SegmentedQueue_SegmentSize=256 + +[bounded_queue_fulness] +ThreadCount=6 +QueueSize=1024 +PassCount=1000000 + +[spsc_queue] +QueueSize=1024 +PassCount=100000 + +[spsc_buffer] +BufferSize=1000000 +PushCount=1000000 + +[pqueue_pop] +ThreadCount=4 +QueueSize=2000000 + +[pqueue_push] +ThreadCount=4 +QueueSize=2000000 + +[pqueue_push_pop] +PushThreadCount=2 +PopThreadCount=2 +QueueSize=2000000 + +[map_find_string] +ThreadCount=4 +MapSize=50000 +PercentExists=50 +PassCount=4 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_func] +InsertThreadCount=2 +DeleteThreadCount=2 +UpdateThreadCount=2 +ThreadPassCount=4 +MapSize=100000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_item_int] +InsertThreadCount=2 +DeleteThreadCount=2 +MapSize=10000 +GoalItem=5000 +AttemptCount=1000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdel_string] +InsertThreadCount=2 +DeleteThreadCount=2 +ThreadPassCount=8 +MapSize=10000 +MaxLoadFactor=4 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_insdelfind] +InitialMapSize=50000 +ThreadCount=4 +MaxLoadFactor=4 +InsertPercentage=20 +DeletePercentage=20 +Duration=5 + +# *** Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_delodd] +MapSize=10000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=100 + +#Cuckoo map properties +CuckooInitialSize=1024 +CuckooProbesetSize=16 +# 0 - use default +CuckooProbesetThreshold=0 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_minmax] +MapSize=50000 +InsThreadCount=2 +ExtractThreadCount=2 +PassCount=1000 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + +[map_iter_erase] +MapSize=5000 +InsThreadCount=2 +DelThreadCount=2 +ExtractThreadCount=2 +FindThreadCount=2 +MaxLoadFactor=4 +PassCount=1000 + +# *** FeldmanHashMap properties +FeldmanMapHeadBits=8 +FeldmanMapArrayBits=8 + + +[free_list] +ThreadCount=4 +PassCount=1000000 \ No newline at end of file -- 2.34.1