issue #76: added cds::atomicity::cache_friendly_item_counter to avoid false sharing
[libcds.git] / test / stress / set / set_type_split_list.h
index b0bddaccbb8e114bbaa15c32aab58df964510269..ed9317c3802765bcbeb18376611d6085c5a3947a 100644 (file)
@@ -100,6 +100,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,co::hash< hash >
+                ,co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
                         co::compare< compare >
@@ -133,6 +134,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::stat< cc::split_list::stat<> >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
@@ -155,6 +157,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,co::hash< hash >
+                ,co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::memory_model< co::v::sequential_consistent >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
@@ -178,6 +181,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                ,co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
                         co::compare< compare >
@@ -199,6 +203,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
                         co::less< less >
@@ -220,6 +225,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
                         co::less< less >
@@ -241,6 +247,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::michael_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::stat< cc::split_list::stat<>>
                 ,cc::split_list::ordered_list_traits<
                     typename cc::michael_list::make_traits<
@@ -266,6 +273,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::lazy_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::lazy_list::make_traits<
                         co::compare< compare >
@@ -303,6 +311,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::lazy_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::memory_model< co::v::sequential_consistent >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::lazy_list::make_traits<
@@ -326,6 +335,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::lazy_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::lazy_list::make_traits<
                         co::compare< compare >
@@ -346,6 +356,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::lazy_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::lazy_list::make_traits<
                         co::less< less >
@@ -367,6 +378,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::lazy_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::lazy_list::make_traits<
                         co::less< less >
@@ -407,6 +419,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
                         co::compare< compare >
@@ -421,6 +434,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::stat< cc::split_list::stat<> >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
@@ -437,6 +451,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::memory_model< co::v::sequential_consistent >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
@@ -454,6 +469,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
                         co::compare< compare >
@@ -469,6 +485,7 @@ namespace set {
             public cc::split_list::make_traits<
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
                         co::less< less >
@@ -484,6 +501,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<
                         co::less< less >
@@ -499,6 +517,7 @@ namespace set {
                 cc::split_list::ordered_list<cc::iterable_list_tag>
                 ,cc::split_list::dynamic_bucket_table< false >
                 ,co::hash< hash >
+                , co::item_counter<cds::atomicity::cache_friendly_item_counter >
                 ,co::stat< cc::split_list::stat<>>
                 ,cc::split_list::ordered_list_traits<
                     typename cc::iterable_list::make_traits<