Runs fewer test cases (only 2 threads)
[libcds.git] / test / stress / queue / push_pop.cpp
index 148fde4136b354c5e81f15bfe89cd3416eb1f16f..b449ccb81382abb3b21a830728c6cd914be6d18a 100644 (file)
@@ -40,6 +40,8 @@ namespace {
     static size_t s_nConsumerThreadCount = 4;
     static size_t s_nProducerThreadCount = 4;
     static size_t s_nQueueSize = 4000000;
+    static size_t s_nSegmentedQueueSize = 400000;
+    static size_t s_nVyukovQueueSize = 40000;
     static size_t s_nHeavyValueSize = 100;
 
     static std::atomic<size_t> s_nProducerDone( 0 );
@@ -325,6 +327,8 @@ 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_nVyukovQueueSize = cfg.get_size_t( "VyukovQueueSize", s_nVyukovQueueSize );
+            s_nSegmentedQueueSize = cfg.get_size_t( "SegmentedQueueSize", s_nSegmentedQueueSize );
             s_nHeavyValueSize = cfg.get_size_t( "HeavyValueSize", s_nHeavyValueSize );
 
             if ( s_nConsumerThreadCount == 0u )
@@ -349,22 +353,21 @@ namespace {
     CDSSTRESS_MoirQueue( simple_queue_push_pop )
     CDSSTRESS_BasketQueue( simple_queue_push_pop )
     CDSSTRESS_OptimsticQueue( simple_queue_push_pop )
-    CDSSTRESS_FCQueue( simple_queue_push_pop )
-    CDSSTRESS_FCDeque( simple_queue_push_pop )
-    CDSSTRESS_FCDeque_HeavyValue( fc_with_heavy_value )
     CDSSTRESS_RWQueue( simple_queue_push_pop )
-    CDSSTRESS_StdQueue( simple_queue_push_pop )
 
 #undef CDSSTRESS_Queue_F
 #define CDSSTRESS_Queue_F( test_fixture, type_name ) \
     TEST_F( test_fixture, type_name ) \
     { \
+        size_t old_queue_size = s_nQueueSize; \
+        s_nQueueSize = s_nVyukovQueueSize; \
         typedef queue::Types< value_type >::type_name queue_type; \
         queue_type queue( s_nQueueSize ); \
         test( queue ); \
+        s_nQueueSize = old_queue_size; \
     }
 
-    CDSSTRESS_VyukovQueue( simple_queue_push_pop )
+    //CDSSTRESS_VyukovQueue( simple_queue_push_pop )
 
 #undef CDSSTRESS_Queue_F
 
@@ -418,6 +421,7 @@ namespace {
     TEST_P( test_fixture, type_name ) \
     { \
         typedef typename queue::Types<value_type>::type_name queue_type; \
+        s_nQueueSize = s_nSegmentedQueueSize; \
         test< queue_type >(); \
     }