From 90661f6f38e193824fa188ac427717844cb2171f Mon Sep 17 00:00:00 2001 From: Marsel Galimullin Date: Mon, 5 Dec 2016 22:45:00 +0300 Subject: [PATCH] Made stress-test for flat combining queue container. Created HavyValue. It is class with hard copy constructor. --- test/include/cds_test/fc_hevy_value.h | 28 ++++- test/stress/data/test-debug.conf | 2 + test/stress/data/test.conf | 2 + test/stress/queue/push_pop.cpp | 58 +++++++---- test/stress/queue/queue_type.h | 142 +++++++++++++------------- test/unit/queue/fcqueue.cpp | 10 +- 6 files changed, 143 insertions(+), 99 deletions(-) diff --git a/test/include/cds_test/fc_hevy_value.h b/test/include/cds_test/fc_hevy_value.h index 58107796..cf427004 100644 --- a/test/include/cds_test/fc_hevy_value.h +++ b/test/include/cds_test/fc_hevy_value.h @@ -11,7 +11,23 @@ #include #include -namespace{ +namespace fc_test { + + // SFINAE test + template + class has_set_array_size { + typedef char small; + class big{char dummy[2];}; + + template class SFINAE {}; + + template static small test( SFINAE * ) ; + template static big test(...); + + public: + static constexpr bool value = sizeof(test(0)) == sizeof(char) ; + }; + template struct HeavyValue { @@ -21,7 +37,7 @@ namespace{ size_t nWriterNo; static std::vector pop_buff; - static std::vector::size_type buffer_size; + static size_t buffer_size; explicit HeavyValue(int new_value = 0) : value(new_value), @@ -34,10 +50,14 @@ namespace{ nNo(other.nNo), nWriterNo(other.nWriterNo) { - for(decltype(buffer_size) i = 0; i < buffer_size; ++i) + for(size_t i = 0; i < buffer_size; ++i) pop_buff[i] = static_cast(std::sqrt(other.pop_buff[i]*rand())); } - static void setArraySize(decltype(buffer_size) new_size){ + void set_array(size_t new_size) { + set_array_size(new_size); + } + static void set_array_size(size_t new_size){ + if (buffer_size == new_size) return; buffer_size = new_size; pop_buff.resize(buffer_size, rand()); } diff --git a/test/stress/data/test-debug.conf b/test/stress/data/test-debug.conf index 961a6504..92a8f22e 100644 --- a/test/stress/data/test-debug.conf +++ b/test/stress/data/test-debug.conf @@ -62,6 +62,8 @@ SegmentedQueue_SegmentSize=64 ProducerCount=3 ConsumerCount=3 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 diff --git a/test/stress/data/test.conf b/test/stress/data/test.conf index 565e448b..e71ab0ff 100644 --- a/test/stress/data/test.conf +++ b/test/stress/data/test.conf @@ -62,6 +62,8 @@ SegmentedQueue_SegmentSize=256 ConsumerCount=4 ProducerCount=4 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 diff --git a/test/stress/queue/push_pop.cpp b/test/stress/queue/push_pop.cpp index 20a3d39c..2e5058ba 100644 --- a/test/stress/queue/push_pop.cpp +++ b/test/stress/queue/push_pop.cpp @@ -32,6 +32,7 @@ #include #include +#include // Multi-threaded queue push/pop test namespace { @@ -39,22 +40,23 @@ namespace { static size_t s_nConsumerThreadCount = 4; static size_t s_nProducerThreadCount = 4; static size_t s_nQueueSize = 4000000; + static size_t s_nHeavyValueSize = 100; static std::atomic s_nProducerDone( 0 ); struct old_value - { - size_t nNo; - size_t nWriterNo; - }; + { + size_t nNo; + size_t nWriterNo; + }; template class queue_push_pop: public cds_test::stress_fixture { protected: - using value_type = Value; + using value_type = Value; - enum { + enum { producer_thread, consumer_thread }; @@ -301,6 +303,20 @@ namespace { propout() << q.statistics(); } + private: + static void set_array_size( size_t size ) { + const bool tmp = fc_test::has_set_array_size::value; + set_array_size(size, std::integral_constant()); + } + + static void set_array_size(size_t size, std::true_type){ + value_type::set_array_size(size); + } + + static void set_array_size(size_t, std::false_type) + { + } + public: static void SetUpTestCase() { @@ -309,6 +325,7 @@ namespace { s_nConsumerThreadCount = cfg.get_size_t( "ConsumerCount", s_nConsumerThreadCount ); s_nProducerThreadCount = cfg.get_size_t( "ProducerCount", s_nProducerThreadCount ); s_nQueueSize = cfg.get_size_t( "QueueSize", s_nQueueSize ); + s_nHeavyValueSize = cfg.get_size_t( "HeavyValueSize", s_nHeavyValueSize ); if ( s_nConsumerThreadCount == 0u ) s_nConsumerThreadCount = 1; @@ -316,23 +333,27 @@ namespace { s_nProducerThreadCount = 1; if ( s_nQueueSize == 0u ) s_nQueueSize = 1000; + if ( s_nHeavyValueSize == 0 ) + s_nHeavyValueSize = 1; + + set_array_size( s_nHeavyValueSize ); } //static void TearDownTestCase(); }; - using value_for_fc_with_heavy_value = queue_push_pop< HeavyValue<36000> >; + using value_for_fc_with_heavy_value = queue_push_pop< fc_test::HeavyValue<36000> >; using old_queue_push_pop = queue_push_pop<>; -// CDSSTRESS_MSQueue( old_queue_push_pop ) -// CDSSTRESS_MoirQueue( old_queue_push_pop ) -// CDSSTRESS_BasketQueue( old_queue_push_pop ) -// CDSSTRESS_OptimsticQueue( old_queue_push_pop ) -// CDSSTRESS_FCQueue( old_queue_push_pop ) -// CDSSTRESS_FCDeque( old_queue_push_pop ) - CDSSTRESS_FCDeque_HeavyValue( value_for_fc_with_heavy_value ) -// CDSSTRESS_RWQueue( old_queue_push_pop ) -// CDSSTRESS_StdQueue( old_queue_push_pop ) + CDSSTRESS_MSQueue( old_queue_push_pop ) + CDSSTRESS_MoirQueue( old_queue_push_pop ) + CDSSTRESS_BasketQueue( old_queue_push_pop ) + CDSSTRESS_OptimsticQueue( old_queue_push_pop ) + CDSSTRESS_FCQueue( old_queue_push_pop ) + CDSSTRESS_FCDeque( old_queue_push_pop ) + CDSSTRESS_FCDeque_HeavyValue( value_for_fc_with_heavy_value ) + CDSSTRESS_RWQueue( old_queue_push_pop ) + CDSSTRESS_StdQueue( old_queue_push_pop ) #undef CDSSTRESS_Queue_F #define CDSSTRESS_Queue_F( test_fixture, type_name, level ) \ @@ -383,8 +404,7 @@ namespace { if ( bIterative && quasi_factor > 4 ) { for ( size_t qf = 4; qf <= quasi_factor; qf *= 2 ) args.push_back( qf ); - } - else { + } else { if ( quasi_factor > 2 ) args.push_back( quasi_factor ); else @@ -403,7 +423,7 @@ namespace { test< queue_type >(); \ } -// CDSSTRESS_SegmentedQueue( segmented_queue_push_pop ) + CDSSTRESS_SegmentedQueue( segmented_queue_push_pop ) INSTANTIATE_TEST_CASE_P( SQ, segmented_queue_push_pop, diff --git a/test/stress/queue/queue_type.h b/test/stress/queue/queue_type.h index cb3276c4..8691c35a 100644 --- a/test/stress/queue/queue_type.h +++ b/test/stress/queue/queue_type.h @@ -695,88 +695,88 @@ namespace cds_test { CDSSTRESS_Queue_F( test_fixture, FCQueue_deque, 0 ) \ CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_stat, 0 ) \ CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_ss, 1 ) \ - CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_ss_stat, 0 ) -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_sm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_sm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_mm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_mm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_elimination_stat,0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_ss, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_ss_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_sm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_sm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_mm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_mm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCQueue_list_elimination_stat, 0 ) + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_ss_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_sm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_sm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_mm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_wait_mm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_deque_elimination_stat,0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_ss, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_ss_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_sm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_sm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_mm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_wait_mm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCQueue_list_elimination_stat, 0 ) #define CDSSTRESS_FCDeque( test_fixture ) \ CDSSTRESS_Queue_F( test_fixture, FCDequeL_default, 0 ) \ CDSSTRESS_Queue_F( test_fixture, FCDequeL_mutex, 1 ) \ CDSSTRESS_Queue_F( test_fixture, FCDequeL_stat, 1 ) \ - CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_ss, 1 ) -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_ss_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_sm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_sm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_mm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_mm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_elimination_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_elimination_stat, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_default, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_mutex, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_ss, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_ss_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_sm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_sm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_mm, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_mm_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_elimination_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_stat, 0 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_elimination, 1 ) \ -// CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_elimination_stat, 1 ) + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_ss, 1 )\ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_ss_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_sm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_sm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_mm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_wait_mm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_elimination_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeL_boost_elimination_stat, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_default, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_mutex, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_ss, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_ss_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_sm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_sm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_mm, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_wait_mm_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_elimination_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_stat, 0 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_elimination, 1 ) \ + CDSSTRESS_Queue_F( test_fixture, FCDequeR_boost_elimination_stat, 1 ) #define CDSSTRESS_FCDeque_HeavyValue( test_fixture ) \ CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_default, 0 ) \ CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_mutex, 0 ) \ CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_stat, 0 ) \ - CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_ss, 1 ) -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_ss_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_sm, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_sm_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_mm, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_mm_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_elimination, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_elimination_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_elimination, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_elimination_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_default, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_mutex, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_ss, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_ss_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_sm, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_sm_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_mm, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_mm_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_elimination, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_elimination_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_stat, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_elimination, 1 ) \ -// CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_elimination_stat, 1 ) + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_ss, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_ss_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_sm, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_sm_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_mm, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_wait_mm_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_elimination, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_elimination_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_elimination, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeL_HeavyValue_boost_elimination_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_default, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_mutex, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_ss, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_ss_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_sm, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_sm_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_mm, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_wait_mm_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_elimination, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_elimination_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_stat, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_elimination, 1 ) \ + CDSSTRESS_FCQueue_F( test_fixture, FCDequeR_HeavyValue_boost_elimination_stat, 1 ) #define CDSSTRESS_RWQueue( test_fixture ) \ CDSSTRESS_Queue_F( test_fixture, RWQueue_Spin, 0 ) \ diff --git a/test/unit/queue/fcqueue.cpp b/test/unit/queue/fcqueue.cpp index bf5ca37d..142bd269 100644 --- a/test/unit/queue/fcqueue.cpp +++ b/test/unit/queue/fcqueue.cpp @@ -169,7 +169,7 @@ namespace { TEST_F( FCQueue, std_deque_heavy_value ) { - typedef HeavyValue<> ValueType; + typedef fc_test::HeavyValue<> ValueType; typedef cds::container::FCQueue queue_type; queue_type q; @@ -178,7 +178,7 @@ namespace { TEST_F( FCQueue, std_empty_wait_strategy_heavy_value ) { - typedef HeavyValue<> ValueType; + typedef fc_test::HeavyValue<> ValueType; typedef cds::container::FCQueue>, cds::container::fcqueue::make_traits< cds::opt::wait_strategy< cds::algo::flat_combining::wait_strategy::empty > @@ -191,7 +191,7 @@ namespace { TEST_F( FCQueue, std_single_mutex_single_condvar_heavy_value ) { - typedef HeavyValue<> ValueType; + typedef fc_test::HeavyValue<> ValueType; typedef cds::container::FCQueue>, cds::container::fcqueue::make_traits< cds::opt::wait_strategy< cds::algo::flat_combining::wait_strategy::single_mutex_single_condvar<> > @@ -204,7 +204,7 @@ namespace { TEST_F( FCQueue, std_single_mutex_multi_condvar_heavy_value ) { - typedef HeavyValue<> ValueType; + typedef fc_test::HeavyValue<> ValueType; typedef cds::container::FCQueue>, cds::container::fcqueue::make_traits< cds::opt::wait_strategy< cds::algo::flat_combining::wait_strategy::single_mutex_multi_condvar<> > @@ -217,7 +217,7 @@ namespace { TEST_F( FCQueue, std_multi_mutex_multi_condvar_heavy_value ) { - typedef HeavyValue<> ValueType; + typedef fc_test::HeavyValue<> ValueType; typedef cds::container::FCQueue>, cds::container::fcqueue::make_traits< cds::opt::wait_strategy< cds::algo::flat_combining::wait_strategy::multi_mutex_multi_condvar<> > -- 2.34.1