3 #include "set/hdr_skiplist_set.h"
4 #include <cds/container/skip_list_set_hp.h>
5 #include "unit/michael_alloc.h"
6 #include "map/print_skiplist_stat.h"
10 void SkipListSetHdrTest::SkipList_HP_less()
12 struct set_traits : public cc::skip_list::traits
14 typedef SkipListSetHdrTest::less<item > less;
15 typedef simple_item_counter item_counter;
17 typedef cc::SkipListSet< cds::gc::HP, item, set_traits > set;
18 test< set, misc::print_skiplist_stat<set::stat> >();
21 void SkipListSetHdrTest::SkipList_HP_cmp()
23 typedef cc::SkipListSet< cds::gc::HP, item,
24 cc::skip_list::make_traits<
25 co::compare< cmp<item > >
26 ,co::item_counter< simple_item_counter >
29 test< set, misc::print_skiplist_stat<set::stat> >();
32 void SkipListSetHdrTest::SkipList_HP_cmpless()
34 typedef cc::SkipListSet< cds::gc::HP, item,
35 cc::skip_list::make_traits<
36 co::less< less<item > >
37 ,co::compare< cmp<item > >
38 ,co::item_counter< simple_item_counter >
41 test< set, misc::print_skiplist_stat<set::stat> >();
44 void SkipListSetHdrTest::SkipList_HP_less_stat()
46 typedef cc::SkipListSet< cds::gc::HP, item,
47 cc::skip_list::make_traits<
48 co::less< less<item > >
49 ,co::item_counter< simple_item_counter >
50 ,co::stat< cc::skip_list::stat<> >
53 test< set, misc::print_skiplist_stat<set::stat> >();
56 void SkipListSetHdrTest::SkipList_HP_cmp_stat()
58 typedef cc::SkipListSet< cds::gc::HP, item,
59 cc::skip_list::make_traits<
60 co::compare< cmp<item > >
61 ,co::item_counter< simple_item_counter >
62 ,co::stat< cc::skip_list::stat<> >
65 test< set, misc::print_skiplist_stat<set::stat> >();
68 void SkipListSetHdrTest::SkipList_HP_cmpless_stat()
70 typedef cc::SkipListSet< cds::gc::HP, item,
71 cc::skip_list::make_traits<
72 co::less< less<item > >
73 ,co::compare< cmp<item > >
74 ,co::item_counter< simple_item_counter >
75 ,co::stat< cc::skip_list::stat<> >
78 test< set, misc::print_skiplist_stat<set::stat> >();
81 void SkipListSetHdrTest::SkipList_HP_xorshift_less()
83 typedef cc::SkipListSet< cds::gc::HP, item,
84 cc::skip_list::make_traits<
85 co::less< less<item > >
86 ,co::item_counter< simple_item_counter >
87 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
90 test< set, misc::print_skiplist_stat<set::stat> >();
93 void SkipListSetHdrTest::SkipList_HP_xorshift_cmp()
95 typedef cc::SkipListSet< cds::gc::HP, item,
96 cc::skip_list::make_traits<
97 co::compare< cmp<item > >
98 ,co::item_counter< simple_item_counter >
99 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
102 test< set, misc::print_skiplist_stat<set::stat> >();
105 void SkipListSetHdrTest::SkipList_HP_xorshift_cmpless()
107 typedef cc::SkipListSet< cds::gc::HP, item,
108 cc::skip_list::make_traits<
109 co::less< less<item > >
110 ,co::compare< cmp<item > >
111 ,co::item_counter< simple_item_counter >
112 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
115 test< set, misc::print_skiplist_stat<set::stat> >();
118 void SkipListSetHdrTest::SkipList_HP_xorshift_less_stat()
120 typedef cc::SkipListSet< cds::gc::HP, item,
121 cc::skip_list::make_traits<
122 co::less< less<item > >
123 ,co::item_counter< simple_item_counter >
124 ,co::stat< cc::skip_list::stat<> >
125 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
128 test< set, misc::print_skiplist_stat<set::stat> >();
131 void SkipListSetHdrTest::SkipList_HP_xorshift_cmp_stat()
133 typedef cc::SkipListSet< cds::gc::HP, item,
134 cc::skip_list::make_traits<
135 co::compare< cmp<item > >
136 ,co::item_counter< simple_item_counter >
137 ,co::stat< cc::skip_list::stat<> >
138 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
141 test< set, misc::print_skiplist_stat<set::stat> >();
144 void SkipListSetHdrTest::SkipList_HP_xorshift_cmpless_stat()
146 typedef cc::SkipListSet< cds::gc::HP, item,
147 cc::skip_list::make_traits<
148 co::less< less<item > >
149 ,co::compare< cmp<item > >
150 ,co::item_counter< simple_item_counter >
151 ,co::stat< cc::skip_list::stat<> >
152 ,cc::skip_list::random_level_generator< cc::skip_list::xorshift >
155 test< set, misc::print_skiplist_stat<set::stat> >();
158 void SkipListSetHdrTest::SkipList_HP_turbopas_less()
160 typedef cc::SkipListSet< cds::gc::HP, item,
161 cc::skip_list::make_traits<
162 co::less< less<item > >
163 ,co::item_counter< simple_item_counter >
164 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
167 test< set, misc::print_skiplist_stat<set::stat> >();
170 void SkipListSetHdrTest::SkipList_HP_turbopas_cmp()
172 typedef cc::SkipListSet< cds::gc::HP, item,
173 cc::skip_list::make_traits<
174 co::compare< cmp<item > >
175 ,co::item_counter< simple_item_counter >
176 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
179 test< set, misc::print_skiplist_stat<set::stat> >();
182 void SkipListSetHdrTest::SkipList_HP_turbopas_cmpless()
184 typedef cc::SkipListSet< cds::gc::HP, item,
185 cc::skip_list::make_traits<
186 co::less< less<item > >
187 ,co::compare< cmp<item > >
188 ,co::item_counter< simple_item_counter >
189 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
192 test< set, misc::print_skiplist_stat<set::stat> >();
195 void SkipListSetHdrTest::SkipList_HP_turbopas_less_stat()
197 typedef cc::SkipListSet< cds::gc::HP, item,
198 cc::skip_list::make_traits<
199 co::less< less<item > >
200 ,co::item_counter< simple_item_counter >
201 ,co::stat< cc::skip_list::stat<> >
202 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
205 test< set, misc::print_skiplist_stat<set::stat> >();
208 void SkipListSetHdrTest::SkipList_HP_turbopas_cmp_stat()
210 typedef cc::SkipListSet< cds::gc::HP, item,
211 cc::skip_list::make_traits<
212 co::compare< cmp<item > >
213 ,co::item_counter< simple_item_counter >
214 ,co::stat< cc::skip_list::stat<> >
215 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
218 test< set, misc::print_skiplist_stat<set::stat> >();
221 void SkipListSetHdrTest::SkipList_HP_turbopas_cmpless_stat()
223 typedef cc::SkipListSet< cds::gc::HP, item,
224 cc::skip_list::make_traits<
225 co::less< less<item > >
226 ,co::compare< cmp<item > >
227 ,co::item_counter< simple_item_counter >
228 ,co::stat< cc::skip_list::stat<> >
229 ,cc::skip_list::random_level_generator< cc::skip_list::turbo_pascal >
232 test< set, misc::print_skiplist_stat<set::stat> >();
235 void SkipListSetHdrTest::SkipList_HP_michaelalloc_less()
237 typedef cc::SkipListSet< cds::gc::HP, item,
238 cc::skip_list::make_traits<
239 co::less< less<item > >
240 ,co::item_counter< simple_item_counter >
241 ,co::allocator< memory::MichaelAllocator<int> >
244 test< set, misc::print_skiplist_stat<set::stat> >();
247 void SkipListSetHdrTest::SkipList_HP_michaelalloc_cmp()
249 typedef cc::SkipListSet< cds::gc::HP, item,
250 cc::skip_list::make_traits<
251 co::compare< cmp<item > >
252 ,co::item_counter< simple_item_counter >
253 ,co::allocator< memory::MichaelAllocator<int> >
256 test< set, misc::print_skiplist_stat<set::stat> >();
259 void SkipListSetHdrTest::SkipList_HP_michaelalloc_cmpless()
261 typedef cc::SkipListSet< cds::gc::HP, item,
262 cc::skip_list::make_traits<
263 co::less< less<item > >
264 ,co::compare< cmp<item > >
265 ,co::item_counter< simple_item_counter >
266 ,co::allocator< memory::MichaelAllocator<int> >
269 test< set, misc::print_skiplist_stat<set::stat> >();
272 void SkipListSetHdrTest::SkipList_HP_michaelalloc_less_stat()
274 typedef cc::SkipListSet< cds::gc::HP, item,
275 cc::skip_list::make_traits<
276 co::less< less<item > >
277 ,co::item_counter< simple_item_counter >
278 ,co::stat< cc::skip_list::stat<> >
279 ,co::allocator< memory::MichaelAllocator<int> >
282 test< set, misc::print_skiplist_stat<set::stat> >();
285 void SkipListSetHdrTest::SkipList_HP_michaelalloc_cmp_stat()
287 typedef cc::SkipListSet< cds::gc::HP, item,
288 cc::skip_list::make_traits<
289 co::compare< cmp<item > >
290 ,co::item_counter< simple_item_counter >
291 ,co::stat< cc::skip_list::stat<> >
292 ,co::allocator< memory::MichaelAllocator<int> >
295 test< set, misc::print_skiplist_stat<set::stat> >();
298 void SkipListSetHdrTest::SkipList_HP_michaelalloc_cmpless_stat()
300 typedef cc::SkipListSet< cds::gc::HP, item,
301 cc::skip_list::make_traits<
302 co::less< less<item > >
303 ,co::compare< cmp<item > >
304 ,co::item_counter< simple_item_counter >
305 ,co::stat< cc::skip_list::stat<> >
306 ,co::allocator< memory::MichaelAllocator<int> >
309 test< set, misc::print_skiplist_stat<set::stat> >();
313 CPPUNIT_TEST_SUITE_REGISTRATION(set::SkipListSetHdrTest);