3 #include "map/hdr_skiplist_map_rcu.h"
5 #include <cds/urcu/general_instant.h>
6 #include <cds/container/skip_list_map_rcu.h>
8 #include "unit/michael_alloc.h"
9 #include "map/print_skiplist_stat.h"
13 typedef cds::urcu::gc< cds::urcu::general_instant<> > rcu_type;
16 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_less()
18 typedef cc::SkipListMap< rcu_type, key_type, value_type,
19 cc::skip_list::make_traits<
21 ,co::item_counter< simple_item_counter >
24 test< set, misc::print_skiplist_stat<set::stat> >();
27 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_cmp()
29 typedef cc::SkipListMap< rcu_type, key_type, value_type,
30 cc::skip_list::make_traits<
32 ,co::item_counter< simple_item_counter >
35 test< set, misc::print_skiplist_stat<set::stat> >();
38 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_cmpless()
40 typedef cc::SkipListMap< rcu_type, key_type, value_type,
41 cc::skip_list::make_traits<
44 ,co::item_counter< simple_item_counter >
47 test< set, misc::print_skiplist_stat<set::stat> >();
50 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_less_stat()
52 typedef cc::SkipListMap< rcu_type, key_type, value_type,
53 cc::skip_list::make_traits<
55 ,co::item_counter< simple_item_counter >
56 ,co::stat< cc::skip_list::stat<> >
59 test< set, misc::print_skiplist_stat<set::stat> >();
62 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_cmp_stat()
64 typedef cc::SkipListMap< rcu_type, key_type, value_type,
65 cc::skip_list::make_traits<
67 ,co::item_counter< simple_item_counter >
68 ,co::stat< cc::skip_list::stat<> >
71 test< set, misc::print_skiplist_stat<set::stat> >();
74 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_cmpless_stat()
76 typedef cc::SkipListMap< rcu_type, key_type, value_type,
77 cc::skip_list::make_traits<
80 ,co::item_counter< simple_item_counter >
81 ,co::stat< cc::skip_list::stat<> >
84 test< set, misc::print_skiplist_stat<set::stat> >();
87 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_less()
89 typedef cc::SkipListMap< rcu_type, key_type, value_type,
90 cc::skip_list::make_traits<
92 ,co::item_counter< simple_item_counter >
93 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
96 test< set, misc::print_skiplist_stat<set::stat> >();
99 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_cmp()
101 typedef cc::SkipListMap< rcu_type, key_type, value_type,
102 cc::skip_list::make_traits<
104 ,co::item_counter< simple_item_counter >
105 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
108 test< set, misc::print_skiplist_stat<set::stat> >();
111 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_cmpless()
113 typedef cc::SkipListMap< rcu_type, key_type, value_type,
114 cc::skip_list::make_traits<
117 ,co::item_counter< simple_item_counter >
118 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
121 test< set, misc::print_skiplist_stat<set::stat> >();
124 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_less_stat()
126 typedef cc::SkipListMap< rcu_type, key_type, value_type,
127 cc::skip_list::make_traits<
129 ,co::item_counter< simple_item_counter >
130 ,co::stat< cc::skip_list::stat<> >
131 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
134 test< set, misc::print_skiplist_stat<set::stat> >();
137 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_cmp_stat()
139 typedef cc::SkipListMap< rcu_type, key_type, value_type,
140 cc::skip_list::make_traits<
142 ,co::item_counter< simple_item_counter >
143 ,co::stat< cc::skip_list::stat<> >
144 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
147 test< set, misc::print_skiplist_stat<set::stat> >();
150 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_xorshift_cmpless_stat()
152 typedef cc::SkipListMap< rcu_type, key_type, value_type,
153 cc::skip_list::make_traits<
156 ,co::item_counter< simple_item_counter >
157 ,co::stat< cc::skip_list::stat<> >
158 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
161 test< set, misc::print_skiplist_stat<set::stat> >();
164 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_less()
166 typedef cc::SkipListMap< rcu_type, key_type, value_type,
167 cc::skip_list::make_traits<
169 ,co::item_counter< simple_item_counter >
170 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
173 test< set, misc::print_skiplist_stat<set::stat> >();
176 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_cmp()
178 typedef cc::SkipListMap< rcu_type, key_type, value_type,
179 cc::skip_list::make_traits<
181 ,co::item_counter< simple_item_counter >
182 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
185 test< set, misc::print_skiplist_stat<set::stat> >();
188 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_cmpless()
190 typedef cc::SkipListMap< rcu_type, key_type, value_type,
191 cc::skip_list::make_traits<
194 ,co::item_counter< simple_item_counter >
195 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
198 test< set, misc::print_skiplist_stat<set::stat> >();
201 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_less_stat()
203 typedef cc::SkipListMap< rcu_type, key_type, value_type,
204 cc::skip_list::make_traits<
206 ,co::item_counter< simple_item_counter >
207 ,co::stat< cc::skip_list::stat<> >
208 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
211 test< set, misc::print_skiplist_stat<set::stat> >();
214 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_cmp_stat()
216 typedef cc::SkipListMap< rcu_type, key_type, value_type,
217 cc::skip_list::make_traits<
219 ,co::item_counter< simple_item_counter >
220 ,co::stat< cc::skip_list::stat<> >
221 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
224 test< set, misc::print_skiplist_stat<set::stat> >();
227 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_turbopas_cmpless_stat()
229 typedef cc::SkipListMap< rcu_type, key_type, value_type,
230 cc::skip_list::make_traits<
233 ,co::item_counter< simple_item_counter >
234 ,co::stat< cc::skip_list::stat<> >
235 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
238 test< set, misc::print_skiplist_stat<set::stat> >();
241 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_less()
243 typedef cc::SkipListMap< rcu_type, key_type, value_type,
244 cc::skip_list::make_traits<
246 ,co::item_counter< simple_item_counter >
247 ,co::allocator< memory::MichaelAllocator<int> >
250 test< set, misc::print_skiplist_stat<set::stat> >();
253 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_cmp()
255 typedef cc::SkipListMap< rcu_type, key_type, value_type,
256 cc::skip_list::make_traits<
258 ,co::item_counter< simple_item_counter >
259 ,co::allocator< memory::MichaelAllocator<int> >
262 test< set, misc::print_skiplist_stat<set::stat> >();
265 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_cmpless()
267 typedef cc::SkipListMap< rcu_type, key_type, value_type,
268 cc::skip_list::make_traits<
271 ,co::item_counter< simple_item_counter >
272 ,co::allocator< memory::MichaelAllocator<int> >
275 test< set, misc::print_skiplist_stat<set::stat> >();
278 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_less_stat()
280 typedef cc::SkipListMap< rcu_type, key_type, value_type,
281 cc::skip_list::make_traits<
283 ,co::item_counter< simple_item_counter >
284 ,co::stat< cc::skip_list::stat<> >
285 ,co::allocator< memory::MichaelAllocator<int> >
288 test< set, misc::print_skiplist_stat<set::stat> >();
291 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_cmp_stat()
293 typedef cc::SkipListMap< rcu_type, key_type, value_type,
294 cc::skip_list::make_traits<
296 ,co::item_counter< simple_item_counter >
297 ,co::stat< cc::skip_list::stat<> >
298 ,co::allocator< memory::MichaelAllocator<int> >
301 test< set, misc::print_skiplist_stat<set::stat> >();
304 void SkipListMapRCUHdrTest::SkipList_RCU_GPI_michaelalloc_cmpless_stat()
306 typedef cc::SkipListMap< rcu_type, key_type, value_type,
307 cc::skip_list::make_traits<
310 ,co::item_counter< simple_item_counter >
311 ,co::stat< cc::skip_list::stat<> >
312 ,co::allocator< memory::MichaelAllocator<int> >
315 test< set, misc::print_skiplist_stat<set::stat> >();
319 CPPUNIT_TEST_SUITE_REGISTRATION(map::SkipListMapRCUHdrTest);