Disables running some stat analysis for benchmarks & Adds some sequential data structures
[libcds.git] / test / stress / set / delodd / set_delodd.h
index 43d92f62b2f779891f41ae2d4ec9e7faa53fdb9e..4f77e07782ba245faf3309522a62c29af0f59565 100644 (file)
@@ -29,6 +29,8 @@
 */
 
 #include "set_type.h"
+#include "../../misc/common.h"
+#include <cds/os/topology.h>
 
 namespace set {
 
@@ -141,13 +143,13 @@ namespace set {
         template <typename Pred>
         static void prepare_array( std::vector<size_t>& arr, Pred pred )
         {
-            arr.reserve( m_arrData.size() );
+            arr.reserve( m_arrData.size());
             for ( auto el : m_arrData ) {
-                if ( pred( el ) )
+                if ( pred( el ))
                     arr.push_back( el );
             }
-            arr.resize( arr.size() );
-            shuffle( arr.begin(), arr.end() );
+            arr.resize( arr.size());
+            shuffle( arr.begin(), arr.end());
         }
 
     protected:
@@ -185,7 +187,7 @@ namespace set {
             {
                 prepare_array( m_arr, []( size_t ) -> bool { return true; } );
                 for ( size_t i = 0; i < m_arr.size(); ++i ) {
-                    if ( m_Set.insert( key_type( m_arr[i], id() ) ) )
+                    if ( m_Set.insert( key_type( m_arr[i], id())))
                         ++m_nInsertInitSuccess;
                     else
                         ++m_nInsertInitFailed;
@@ -230,7 +232,7 @@ namespace set {
                         // insert pass
                         for ( auto el : m_arr ) {
                             if ( el & 1 ) {
-                                if ( rSet.insert( key_type( el, id() ) ) )
+                                if ( rSet.insert( key_type( el, id())))
                                     ++m_nInsertSuccess;
                                 else
                                     ++m_nInsertFailed;
@@ -243,7 +245,7 @@ namespace set {
                             if ( el & 1 ) {
                                 bool success;
                                 bool inserted;
-                                std::tie( success, inserted ) = rSet.update( key_type( el, id() ), update_functor() );
+                                std::tie( success, inserted ) = rSet.update( key_type( el, id()), update_functor());
                                 if ( success && inserted )
                                     ++m_nInsertSuccess;
                                 else
@@ -394,7 +396,7 @@ namespace set {
                     if ( id() & 1 ) {
                         for ( auto el : m_arr ) {
                             for ( size_t k = 0; k < nInsThreadCount; ++k ) {
-                                if ( rSet.erase( key_type( el, k ) ) )
+                                if ( rSet.erase( key_type( el, k )))
                                     ++m_nDeleteSuccess;
                                 else
                                     ++m_nDeleteFailed;
@@ -404,7 +406,7 @@ namespace set {
                     else {
                         for ( size_t k = 0; k < nInsThreadCount; ++k ) {
                             for ( auto el : m_arr ) {
-                                if ( rSet.erase( key_type( el, k ) ) )
+                                if ( rSet.erase( key_type( el, k )))
                                     ++m_nDeleteSuccess;
                                 else
                                     ++m_nDeleteFailed;
@@ -467,7 +469,7 @@ namespace set {
                     if ( id() & 1 ) {
                         for ( auto el : m_arr ) {
                             for ( size_t k = 0; k < nInsThreadCount; ++k ) {
-                                gp = rSet.extract( key_type( el, k ) );
+                                gp = rSet.extract( key_type( el, k ));
                                 if ( gp )
                                     ++m_nExtractSuccess;
                                 else
@@ -479,7 +481,7 @@ namespace set {
                     else {
                         for ( size_t k = 0; k < nInsThreadCount; ++k ) {
                             for ( auto el : m_arr ) {
-                                gp = rSet.extract( key_type( el, k ) );
+                                gp = rSet.extract( key_type( el, k ));
                                 if ( gp )
                                     ++m_nExtractSuccess;
                                 else
@@ -544,14 +546,14 @@ namespace set {
                             for ( auto el : m_arr ) {
                                 if ( Set::c_bExtractLockExternal ) {
                                     typename Set::rcu_lock l;
-                                    xp = rSet.extract( key_type( el, k ) );
+                                    xp = rSet.extract( key_type( el, k ));
                                     if ( xp )
                                         ++m_nExtractSuccess;
                                     else
                                         ++m_nExtractFailed;
                                 }
                                 else {
-                                    xp = rSet.extract( key_type( el, k ) );
+                                    xp = rSet.extract( key_type( el, k ));
                                     if ( xp )
                                         ++m_nExtractSuccess;
                                     else
@@ -566,14 +568,14 @@ namespace set {
                             for ( size_t k = 0; k < nInsThreadCount; ++k ) {
                                 if ( Set::c_bExtractLockExternal ) {
                                     typename Set::rcu_lock l;
-                                    xp = rSet.extract( key_type( el, k ) );
+                                    xp = rSet.extract( key_type( el, k ));
                                     if ( xp )
                                         ++m_nExtractSuccess;
                                     else
                                         ++m_nExtractFailed;
                                 }
                                 else {
-                                    xp = rSet.extract( key_type( el, k ) );
+                                    xp = rSet.extract( key_type( el, k ));
                                     if ( xp )
                                         ++m_nExtractSuccess;
                                     else
@@ -629,7 +631,7 @@ namespace set {
                     for ( size_t key : arr ) {
                         if ( key & 1 ) {
                             for ( size_t k = 0; k < nInsThreadCount; ++k ) {
-                                if ( set.contains( key_thread( key, k ) ) )
+                                if ( set.contains( key_thread( key, k )))
                                     ++m_nFindOddSuccess;
                                 else
                                     ++m_nFindOddFailed;
@@ -638,7 +640,7 @@ namespace set {
                         else {
                             // even keys MUST be in the map
                             for ( size_t k = 0; k < nInsThreadCount; ++k ) {
-                                if ( set.contains( key_thread( key, k ) ) )
+                                if ( set.contains( key_thread( key, k )))
                                     ++m_nFindEvenSuccess;
                                 else
                                     ++m_nFindEvenFailed;
@@ -877,7 +879,7 @@ namespace set {
 
             Set  testSet( *this );
             do_test_with( testSet );
-            analyze( testSet );
+            DEBUG(analyze( testSet ));
         }
 
         template <class Set>
@@ -887,7 +889,7 @@ namespace set {
 
             Set  testSet( *this );
             do_test_extract_with( testSet );
-            analyze( testSet );
+            DEBUG(analyze( testSet ));
         }
 
         template <class Map>