-
Notifications
You must be signed in to change notification settings - Fork 0
/
boost_multi_index_set_string.txt
214 lines (210 loc) · 18.2 KB
/
boost_multi_index_set_string.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
user cpu : 1s 161824us
sys cpu : 0s 78463us
max rss : 139288 KB / 136.023 MB
page reclaims : 35970
page faults : 0
voluntary switches : 0
involuntary switches : 0
user cpu : 0s 394044us
sys cpu : 0s 17201us
max rss : 109280 KB / 106.719 MB
page reclaims : 23221
page faults : 0
voluntary switches : 0
involuntary switches : 0
user cpu : 0s 121403us
sys cpu : 0s 6692us
max rss : 83476 KB / 81.5195 MB
page reclaims : 17295
page faults : 0
voluntary switches : 0
involuntary switches : 0
user cpu : 0s 203107us
sys cpu : 0s 21228us
max rss : 74184 KB / 72.4453 MB
page reclaims : 18530
page faults : 0
voluntary switches : 0
involuntary switches : 0
2023-06-16T17:37:38+08:00
Running ./bin/boost_multi_index_set_string
Run on (16 X 3417.59 MHz CPU s)
CPU Caches:
L1 Data 48 KiB (x16)
L1 Instruction 32 KiB (x16)
L2 Unified 2048 KiB (x16)
L3 Unified 30720 KiB (x1)
Load Average: 4.00, 3.33, 2.04
----------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
----------------------------------------------------------------------------------------------------
BenchInsert<std::set<std::string>>/1 21.6 ns 21.6 ns 32442146
BenchInsert<std::set<std::string>>/8 264 ns 264 ns 2660155
BenchInsert<std::set<std::string>>/64 3132 ns 3132 ns 220912
BenchInsert<std::set<std::string>>/512 56735 ns 56733 ns 12591
BenchInsert<std::set<std::string>>/1024 136482 ns 136480 ns 5252
BenchInsert<std::unordered_set<std::string>>/1 41.3 ns 41.3 ns 16864275
BenchInsert<std::unordered_set<std::string>>/8 271 ns 271 ns 2618877
BenchInsert<std::unordered_set<std::string>>/64 2287 ns 2287 ns 305607
BenchInsert<std::unordered_set<std::string>>/512 31437 ns 31436 ns 22340
BenchInsert<std::unordered_set<std::string>>/1024 66962 ns 66962 ns 10528
BenchInsert<tsl::ordered_set<std::string>>/1 46.0 ns 46.0 ns 15438058
BenchInsert<tsl::ordered_set<std::string>>/8 254 ns 254 ns 2792386
BenchInsert<tsl::ordered_set<std::string>>/64 1605 ns 1605 ns 450179
BenchInsert<tsl::ordered_set<std::string>>/512 16086 ns 16086 ns 42700
BenchInsert<tsl::ordered_set<std::string>>/1024 34802 ns 34803 ns 19942
BenchInsert<tsl::sparse_set<std::string>>/1 53.0 ns 53.0 ns 12891424
BenchInsert<tsl::sparse_set<std::string>>/8 407 ns 407 ns 1731160
BenchInsert<tsl::sparse_set<std::string>>/64 3598 ns 3598 ns 196683
BenchInsert<tsl::sparse_set<std::string>>/512 44514 ns 44514 ns 15357
BenchInsert<tsl::sparse_set<std::string>>/1024 101995 ns 101995 ns 6978
BenchInsert<boost::container::flat_set<std::string>>/1 21.8 ns 21.8 ns 31884864
BenchInsert<boost::container::flat_set<std::string>>/8 246 ns 246 ns 2851501
BenchInsert<boost::container::flat_set<std::string>>/64 3801 ns 3801 ns 184176
BenchInsert<boost::container::flat_set<std::string>>/512 92557 ns 92556 ns 7597
BenchInsert<boost::container::flat_set<std::string>>/1024 295781 ns 295779 ns 2382
BenchInsertMulti<MultiContainer<std::string>>/1 45.6 ns 45.6 ns 15492756
BenchInsertMulti<MultiContainer<std::string>>/8 295 ns 295 ns 2369888
BenchInsertMulti<MultiContainer<std::string>>/64 3546 ns 3546 ns 201333
BenchInsertMulti<MultiContainer<std::string>>/512 76837 ns 76837 ns 9159
BenchInsertMulti<MultiContainer<std::string>>/1024 178855 ns 178851 ns 3815
BenchInsertMulti<MultiHashContainer<std::string>>/1 67.9 ns 67.9 ns 10415349
BenchInsertMulti<MultiHashContainer<std::string>>/8 461 ns 461 ns 1528066
BenchInsertMulti<MultiHashContainer<std::string>>/64 5711 ns 5711 ns 120855
BenchInsertMulti<MultiHashContainer<std::string>>/512 78293 ns 78291 ns 8871
BenchInsertMulti<MultiHashContainer<std::string>>/1024 168342 ns 168341 ns 4147
BenchInsert<eastl::vector_set<std::string>>/1 21.3 ns 21.3 ns 33005403
BenchInsert<eastl::vector_set<std::string>>/8 214 ns 214 ns 3292615
BenchInsert<eastl::vector_set<std::string>>/64 2861 ns 2861 ns 246445
BenchInsert<eastl::vector_set<std::string>>/512 80132 ns 80131 ns 8874
BenchInsert<eastl::vector_set<std::string>>/1024 313244 ns 313233 ns 2266
BenchFind<std::set<std::string>>/1 8.31 ns 8.31 ns 77485567
BenchFind<std::set<std::string>>/8 25.3 ns 25.3 ns 28893093
BenchFind<std::set<std::string>>/64 67.8 ns 67.8 ns 12880009
BenchFind<std::set<std::string>>/512 147 ns 147 ns 4526156
BenchFind<std::set<std::string>>/1024 181 ns 181 ns 3349430
BenchFind<std::unordered_set<std::string>>/1 2.24 ns 2.24 ns 290456136
BenchFind<std::unordered_set<std::string>>/8 17.6 ns 17.6 ns 38451601
BenchFind<std::unordered_set<std::string>>/64 25.3 ns 25.3 ns 27674452
BenchFind<std::unordered_set<std::string>>/512 31.4 ns 31.4 ns 22513758
BenchFind<std::unordered_set<std::string>>/1024 33.6 ns 33.6 ns 20915224
BenchFind<tsl::ordered_set<std::string>>/1 22.7 ns 22.7 ns 30009942
BenchFind<tsl::ordered_set<std::string>>/8 31.2 ns 31.2 ns 21854538
BenchFind<tsl::ordered_set<std::string>>/64 29.7 ns 29.7 ns 23658328
BenchFind<tsl::ordered_set<std::string>>/512 30.2 ns 30.2 ns 23262579
BenchFind<tsl::ordered_set<std::string>>/1024 32.0 ns 32.0 ns 22019890
BenchFind<tsl::sparse_set<std::string>>/1 25.3 ns 25.3 ns 27407835
BenchFind<tsl::sparse_set<std::string>>/8 30.9 ns 30.9 ns 21939978
BenchFind<tsl::sparse_set<std::string>>/64 33.6 ns 33.6 ns 20288252
BenchFind<tsl::sparse_set<std::string>>/512 36.0 ns 36.0 ns 19710816
BenchFind<tsl::sparse_set<std::string>>/1024 37.2 ns 37.2 ns 18665566
BenchFind<boost::container::flat_set<std::string>>/1 11.6 ns 11.6 ns 68254020
BenchFind<boost::container::flat_set<std::string>>/8 41.0 ns 41.0 ns 17206793
BenchFind<boost::container::flat_set<std::string>>/64 65.0 ns 65.0 ns 8379624
BenchFind<boost::container::flat_set<std::string>>/512 114 ns 114 ns 6580833
BenchFind<boost::container::flat_set<std::string>>/1024 131 ns 131 ns 5174978
BenchFindMulti<MultiContainer<std::string>, 0>/1 8.32 ns 8.32 ns 87064676
BenchFindMulti<MultiContainer<std::string>, 0>/8 35.3 ns 35.3 ns 20076591
BenchFindMulti<MultiContainer<std::string>, 0>/64 71.6 ns 71.6 ns 11658429
BenchFindMulti<MultiContainer<std::string>, 0>/512 186 ns 186 ns 6136989
BenchFindMulti<MultiContainer<std::string>, 0>/1024 156 ns 156 ns 5570422
BenchFindMultiHash<MultiHashContainer<std::string>>/1 70.6 ns 70.6 ns 10916799
BenchFindMultiHash<MultiHashContainer<std::string>>/8 70.8 ns 70.8 ns 10464018
BenchFindMultiHash<MultiHashContainer<std::string>>/64 72.1 ns 72.1 ns 9841523
BenchFindMultiHash<MultiHashContainer<std::string>>/512 73.5 ns 73.5 ns 9472939
BenchFindMultiHash<MultiHashContainer<std::string>>/1024 77.8 ns 77.8 ns 7926758
BenchFind<eastl::vector_set<std::string>>/1 12.7 ns 12.7 ns 67737606
BenchFind<eastl::vector_set<std::string>>/8 55.8 ns 55.8 ns 10000000
BenchFind<eastl::vector_set<std::string>>/64 80.4 ns 80.3 ns 7490808
BenchFind<eastl::vector_set<std::string>>/512 107 ns 107 ns 6635645
BenchFind<eastl::vector_set<std::string>>/1024 168 ns 168 ns 4131819
BenchRange<std::set<std::string>>/1 2.79 ns 2.79 ns 261921070
BenchRange<std::set<std::string>>/8 35.9 ns 35.9 ns 20152097
BenchRange<std::set<std::string>>/64 287 ns 287 ns 2430550
BenchRange<std::set<std::string>>/512 2363 ns 2363 ns 291940
BenchRange<std::set<std::string>>/1024 5094 ns 5094 ns 136306
BenchRange<std::unordered_set<std::string>>/1 2.12 ns 2.12 ns 332165219
BenchRange<std::unordered_set<std::string>>/8 27.6 ns 27.6 ns 25918595
BenchRange<std::unordered_set<std::string>>/64 134 ns 134 ns 5187532
BenchRange<std::unordered_set<std::string>>/512 1541 ns 1541 ns 489200
BenchRange<std::unordered_set<std::string>>/1024 3124 ns 3124 ns 220850
BenchRange<tsl::ordered_set<std::string>>/1 2.30 ns 2.30 ns 304706060
BenchRange<tsl::ordered_set<std::string>>/8 25.8 ns 25.8 ns 28198486
BenchRange<tsl::ordered_set<std::string>>/64 169 ns 169 ns 4177724
BenchRange<tsl::ordered_set<std::string>>/512 1346 ns 1346 ns 519480
BenchRange<tsl::ordered_set<std::string>>/1024 2696 ns 2696 ns 258760
BenchRange<tsl::sparse_set<std::string>>/1 2.68 ns 2.68 ns 261323984
BenchRange<tsl::sparse_set<std::string>>/8 28.2 ns 28.2 ns 25207684
BenchRange<tsl::sparse_set<std::string>>/64 155 ns 155 ns 4542937
BenchRange<tsl::sparse_set<std::string>>/512 1243 ns 1243 ns 562849
BenchRange<tsl::sparse_set<std::string>>/1024 2531 ns 2531 ns 277921
BenchRange<boost::container::flat_set<std::string>>/1 3.06 ns 3.06 ns 227492860
BenchRange<boost::container::flat_set<std::string>>/8 24.2 ns 24.2 ns 29637926
BenchRange<boost::container::flat_set<std::string>>/64 134 ns 134 ns 5251730
BenchRange<boost::container::flat_set<std::string>>/512 998 ns 998 ns 703132
BenchRange<boost::container::flat_set<std::string>>/1024 2145 ns 2145 ns 330897
BenchRangeMulti<MultiContainer<std::string>, 0>/1 4.76 ns 4.76 ns 146414389
BenchRangeMulti<MultiContainer<std::string>, 0>/8 27.7 ns 27.7 ns 25214362
BenchRangeMulti<MultiContainer<std::string>, 0>/64 223 ns 223 ns 3179039
BenchRangeMulti<MultiContainer<std::string>, 0>/512 2521 ns 2521 ns 282937
BenchRangeMulti<MultiContainer<std::string>, 0>/1024 5282 ns 5281 ns 135049
BenchRangeMulti<MultiContainer<std::string>, 1>/1 3.34 ns 3.34 ns 210683523
BenchRangeMulti<MultiContainer<std::string>, 1>/8 25.9 ns 25.9 ns 25258736
BenchRangeMulti<MultiContainer<std::string>, 1>/64 148 ns 148 ns 4733720
BenchRangeMulti<MultiContainer<std::string>, 1>/512 1992 ns 1992 ns 348197
BenchRangeMulti<MultiContainer<std::string>, 1>/1024 4027 ns 4027 ns 173734
BenchRangeMulti<MultiContainer<std::string>, 2>/1 2.54 ns 2.54 ns 285106916
BenchRangeMulti<MultiContainer<std::string>, 2>/8 25.7 ns 25.7 ns 26709413
BenchRangeMulti<MultiContainer<std::string>, 2>/64 180 ns 180 ns 3876788
BenchRangeMulti<MultiContainer<std::string>, 2>/512 2225 ns 2225 ns 311887
BenchRangeMulti<MultiContainer<std::string>, 2>/1024 3961 ns 3961 ns 162555
BenchRangeMulti<MultiHashContainer<std::string>, 0>/1 5.51 ns 5.51 ns 126850394
BenchRangeMulti<MultiHashContainer<std::string>, 0>/8 31.7 ns 31.7 ns 21918197
BenchRangeMulti<MultiHashContainer<std::string>, 0>/64 204 ns 204 ns 3352980
BenchRangeMulti<MultiHashContainer<std::string>, 0>/512 2619 ns 2619 ns 265128
BenchRangeMulti<MultiHashContainer<std::string>, 0>/1024 5803 ns 5803 ns 120981
BenchRangeSet<eastl::vector_set<std::string>>/1 25.8 ns 25.8 ns 40004757
BenchRangeSet<eastl::vector_set<std::string>>/8 205 ns 205 ns 5745882
BenchRangeSet<eastl::vector_set<std::string>>/64 1862 ns 1862 ns 635289
BenchRangeSet<eastl::vector_set<std::string>>/512 16644 ns 16643 ns 69786
BenchRangeSet<eastl::vector_set<std::string>>/1024 34501 ns 34500 ns 33705
BenchErase<std::set<std::string>>/1 10.0 ns 10.0 ns 69827034
BenchErase<std::set<std::string>>/8 38.0 ns 38.0 ns 18796775
BenchErase<std::set<std::string>>/64 70.7 ns 70.7 ns 10024618
BenchErase<std::set<std::string>>/512 106 ns 106 ns 6491036
BenchErase<std::set<std::string>>/1024 123 ns 123 ns 5526357
BenchErase<std::unordered_set<std::string>>/1 2.38 ns 2.38 ns 312065748
BenchErase<std::unordered_set<std::string>>/8 17.9 ns 17.9 ns 39502431
BenchErase<std::unordered_set<std::string>>/64 25.2 ns 25.2 ns 27086404
BenchErase<std::unordered_set<std::string>>/512 31.3 ns 31.3 ns 22576246
BenchErase<std::unordered_set<std::string>>/1024 32.0 ns 32.0 ns 21950279
BenchErase<tsl::ordered_set<std::string>>/1 25.6 ns 25.6 ns 23833782
BenchErase<tsl::ordered_set<std::string>>/8 29.0 ns 29.0 ns 23840854
BenchErase<tsl::ordered_set<std::string>>/64 28.8 ns 28.8 ns 24146828
BenchErase<tsl::ordered_set<std::string>>/512 39.3 ns 39.3 ns 17660807
BenchErase<tsl::ordered_set<std::string>>/1024 72.9 ns 72.9 ns 9785290
BenchErase<tsl::sparse_set<std::string>>/1 24.8 ns 24.8 ns 28198887
BenchErase<tsl::sparse_set<std::string>>/8 30.2 ns 30.2 ns 23581863
BenchErase<tsl::sparse_set<std::string>>/64 33.4 ns 33.4 ns 21083385
BenchErase<tsl::sparse_set<std::string>>/512 36.6 ns 36.6 ns 18668215
BenchErase<tsl::sparse_set<std::string>>/1024 38.6 ns 38.6 ns 17857522
BenchErase<boost::container::flat_set<std::string>>/1 9.29 ns 9.29 ns 75777401
BenchErase<boost::container::flat_set<std::string>>/8 37.1 ns 37.1 ns 18270441
BenchErase<boost::container::flat_set<std::string>>/64 71.6 ns 71.6 ns 9887265
BenchErase<boost::container::flat_set<std::string>>/512 114 ns 114 ns 6472357
BenchErase<boost::container::flat_set<std::string>>/1024 139 ns 139 ns 5104723
BenchErase<eastl::vector_set<std::string>>/1 8.71 ns 8.71 ns 82509256
BenchErase<eastl::vector_set<std::string>>/8 36.1 ns 36.1 ns 19608824
BenchErase<eastl::vector_set<std::string>>/64 59.5 ns 59.5 ns 11717142
BenchErase<eastl::vector_set<std::string>>/512 97.8 ns 97.8 ns 6822224
BenchErase<eastl::vector_set<std::string>>/1024 125 ns 125 ns 5542972
BenchEraseMulti<MultiContainer<std::string>>/1 7.99 ns 7.99 ns 89394859
BenchEraseMulti<MultiContainer<std::string>>/8 35.7 ns 35.7 ns 19684149
BenchEraseMulti<MultiContainer<std::string>>/64 69.9 ns 69.9 ns 10261804
BenchEraseMulti<MultiContainer<std::string>>/512 110 ns 110 ns 6426141
BenchEraseMulti<MultiContainer<std::string>>/1024 142 ns 142 ns 4866365
BenchEraseMulti<eastl::vector_set<std::string>>/1 8.57 ns 8.57 ns 74722094
BenchEraseMulti<eastl::vector_set<std::string>>/8 36.0 ns 36.0 ns 19370788
BenchEraseMulti<eastl::vector_set<std::string>>/64 60.3 ns 60.3 ns 11252929
BenchEraseMulti<eastl::vector_set<std::string>>/512 98.3 ns 98.3 ns 7175179
BenchEraseMulti<eastl::vector_set<std::string>>/1024 126 ns 126 ns 5602182