-
Notifications
You must be signed in to change notification settings - Fork 0
/
adt_fast_uset.txt
152 lines (152 loc) · 13.4 KB
/
adt_fast_uset.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
2023-06-11T21:33:55+08:00
Running ./bin/adt_fast_uset
Run on (8 X 2904 MHz CPU s)
CPU Caches:
L1 Data 32 KiB (x8)
L1 Instruction 32 KiB (x8)
L2 Unified 256 KiB (x8)
L3 Unified 16384 KiB (x1)
Load Average: 4.25, 4.63, 3.22
--------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------------------------------
BenchInsert<fast_vector<uint64_t>>/1 46.2 ns 46.0 ns 15487903
BenchInsert<fast_vector<uint64_t>>/8 149 ns 148 ns 4446938
BenchInsert<fast_vector<uint64_t>>/64 951 ns 946 ns 719418
BenchInsert<fast_vector<uint64_t>>/512 7590 ns 7547 ns 97430
BenchInsert<fast_vector<uint64_t>>/1024 14823 ns 14735 ns 51874
BenchInsert<phmap::flat_hash_set<uint64_t>>/1 27.2 ns 27.1 ns 25895714
BenchInsert<phmap::flat_hash_set<uint64_t>>/8 92.6 ns 92.1 ns 7953138
BenchInsert<phmap::flat_hash_set<uint64_t>>/64 513 ns 510 ns 1392244
BenchInsert<phmap::flat_hash_set<uint64_t>>/512 4052 ns 4027 ns 181059
BenchInsert<phmap::flat_hash_set<uint64_t>>/1024 7385 ns 7338 ns 99967
BenchInsert<std::unordered_set<uint64_t>>/1 61.9 ns 61.5 ns 9678926
BenchInsert<std::unordered_set<uint64_t>>/8 363 ns 360 ns 1892909
BenchInsert<std::unordered_set<uint64_t>>/64 3113 ns 3131 ns 216487
BenchInsert<std::unordered_set<uint64_t>>/512 31767 ns 32398 ns 22373
BenchInsert<std::unordered_set<uint64_t>>/1024 63250 ns 64347 ns 11430
BenchInsert<ska::flat_hash_set<uint64_t>>/1 55.3 ns 56.1 ns 9907103
BenchInsert<ska::flat_hash_set<uint64_t>>/8 197 ns 199 ns 3740563
BenchInsert<ska::flat_hash_set<uint64_t>>/64 1214 ns 1226 ns 566675
BenchInsert<ska::flat_hash_set<uint64_t>>/512 9193 ns 9261 ns 78290
BenchInsert<ska::flat_hash_set<uint64_t>>/1024 18131 ns 18233 ns 40243
BenchInsert<ska::bytell_hash_set<uint64_t>>/1 50.0 ns 50.3 ns 12899883
BenchInsert<ska::bytell_hash_set<uint64_t>>/8 190 ns 190 ns 3628216
BenchInsert<ska::bytell_hash_set<uint64_t>>/64 1444 ns 1447 ns 513859
BenchInsert<ska::bytell_hash_set<uint64_t>>/512 10991 ns 11005 ns 65059
BenchInsert<ska::bytell_hash_set<uint64_t>>/1024 22577 ns 22584 ns 31320
BenchInsert<tsl::robin_set<uint64_t>>/1 60.5 ns 60.4 ns 12813133
BenchInsert<tsl::robin_set<uint64_t>>/8 187 ns 186 ns 3754490
BenchInsert<tsl::robin_set<uint64_t>>/64 1219 ns 1217 ns 548376
BenchInsert<tsl::robin_set<uint64_t>>/512 9646 ns 9622 ns 78299
BenchInsert<tsl::robin_set<uint64_t>>/1024 19139 ns 19079 ns 38807
BenchInsertVecSet<llvm::SetVector<uint64_t>>/1 38.3 ns 38.1 ns 19507545
BenchInsertVecSet<llvm::SetVector<uint64_t>>/8 118 ns 117 ns 6224590
BenchInsertVecSet<llvm::SetVector<uint64_t>>/64 1162 ns 1157 ns 585029
BenchInsertVecSet<llvm::SetVector<uint64_t>>/512 12541 ns 12485 ns 55105
BenchInsertVecSet<llvm::SetVector<uint64_t>>/1024 28083 ns 27948 ns 25749
BenchFind<fast_vector<uint64_t>>/1 3.38 ns 3.36 ns 185057035
BenchFind<fast_vector<uint64_t>>/8 3.88 ns 3.86 ns 178171198
BenchFind<fast_vector<uint64_t>>/64 5.01 ns 4.98 ns 176493832
BenchFind<fast_vector<uint64_t>>/512 4.15 ns 4.12 ns 173071610
BenchFind<fast_vector<uint64_t>>/1024 4.04 ns 4.02 ns 130907657
BenchFind<phmap::flat_hash_set<uint64_t>>/1 3.09 ns 3.07 ns 226487855
BenchFind<phmap::flat_hash_set<uint64_t>>/8 3.75 ns 3.73 ns 201120881
BenchFind<phmap::flat_hash_set<uint64_t>>/64 4.15 ns 4.13 ns 148998406
BenchFind<phmap::flat_hash_set<uint64_t>>/512 4.15 ns 4.12 ns 161844849
BenchFind<phmap::flat_hash_set<uint64_t>>/1024 4.57 ns 4.54 ns 127913768
BenchFind<std::unordered_set<uint64_t>>/1 10.2 ns 10.1 ns 66229100
BenchFind<std::unordered_set<uint64_t>>/8 12.3 ns 12.2 ns 44348048
BenchFind<std::unordered_set<uint64_t>>/64 17.3 ns 17.7 ns 39952763
BenchFind<std::unordered_set<uint64_t>>/512 17.9 ns 18.2 ns 38571823
BenchFind<std::unordered_set<uint64_t>>/1024 17.3 ns 17.6 ns 39952509
BenchFind<ska::flat_hash_set<uint64_t>>/1 6.70 ns 6.79 ns 107833038
BenchFind<ska::flat_hash_set<uint64_t>>/8 6.69 ns 6.77 ns 85648797
BenchFind<ska::flat_hash_set<uint64_t>>/64 8.19 ns 8.27 ns 75425052
BenchFind<ska::flat_hash_set<uint64_t>>/512 8.97 ns 9.04 ns 79150738
BenchFind<ska::flat_hash_set<uint64_t>>/1024 8.29 ns 8.34 ns 88315969
BenchFind<ska::bytell_hash_set<uint64_t>>/1 6.77 ns 6.80 ns 108321660
BenchFind<ska::bytell_hash_set<uint64_t>>/8 7.14 ns 7.17 ns 93398423
BenchFind<ska::bytell_hash_set<uint64_t>>/64 7.24 ns 7.26 ns 99540488
BenchFind<ska::bytell_hash_set<uint64_t>>/512 7.34 ns 7.35 ns 99975919
BenchFind<ska::bytell_hash_set<uint64_t>>/1024 7.21 ns 7.22 ns 97145094
BenchFind<tsl::robin_set<uint64_t>>/1 6.31 ns 6.31 ns 110159201
BenchFind<tsl::robin_set<uint64_t>>/8 6.85 ns 6.84 ns 94341761
BenchFind<tsl::robin_set<uint64_t>>/64 8.27 ns 8.25 ns 82066181
BenchFind<tsl::robin_set<uint64_t>>/512 8.29 ns 8.27 ns 90880611
BenchFind<tsl::robin_set<uint64_t>>/1024 7.88 ns 7.86 ns 88131065
BenchFindVecSet<llvm::SetVector<uint64_t>>/1 6.99 ns 6.97 ns 102366874
BenchFindVecSet<llvm::SetVector<uint64_t>>/8 7.38 ns 7.36 ns 89171972
BenchFindVecSet<llvm::SetVector<uint64_t>>/64 7.20 ns 7.17 ns 100809024
BenchFindVecSet<llvm::SetVector<uint64_t>>/512 7.53 ns 7.50 ns 96053566
BenchFindVecSet<llvm::SetVector<uint64_t>>/1024 6.97 ns 6.94 ns 103925294
BenchRange<fast_vector<uint64_t>>/1 0.728 ns 0.725 ns 979282756
BenchRange<fast_vector<uint64_t>>/8 2.31 ns 2.30 ns 308383966
BenchRange<fast_vector<uint64_t>>/64 5.14 ns 5.11 ns 133602401
BenchRange<fast_vector<uint64_t>>/512 33.3 ns 33.1 ns 22038422
BenchRange<fast_vector<uint64_t>>/1024 69.6 ns 69.2 ns 9724158
BenchRange<phmap::flat_hash_set<uint64_t>>/1 1.07 ns 1.06 ns 624707598
BenchRange<phmap::flat_hash_set<uint64_t>>/8 12.7 ns 12.6 ns 71795713
BenchRange<phmap::flat_hash_set<uint64_t>>/64 122 ns 121 ns 6701686
BenchRange<phmap::flat_hash_set<uint64_t>>/512 1189 ns 1182 ns 532741
BenchRange<phmap::flat_hash_set<uint64_t>>/1024 3408 ns 3387 ns 202711
BenchRange<std::unordered_set<uint64_t>>/1 0.444 ns 0.442 ns 1000000000
BenchRange<std::unordered_set<uint64_t>>/8 2.84 ns 2.83 ns 252367279
BenchRange<std::unordered_set<uint64_t>>/64 59.6 ns 59.2 ns 12016909
BenchRange<std::unordered_set<uint64_t>>/512 503 ns 500 ns 1381492
BenchRange<std::unordered_set<uint64_t>>/1024 1295 ns 1287 ns 563434
BenchRange<ska::flat_hash_set<uint64_t>>/1 1.83 ns 1.82 ns 376749051
BenchRange<ska::flat_hash_set<uint64_t>>/8 9.63 ns 9.84 ns 78988557
BenchRange<ska::flat_hash_set<uint64_t>>/64 62.9 ns 64.1 ns 9835105
BenchRange<ska::flat_hash_set<uint64_t>>/512 1308 ns 1330 ns 528073
BenchRange<ska::flat_hash_set<uint64_t>>/1024 3097 ns 3138 ns 233107
BenchRange<ska::bytell_hash_set<uint64_t>>/1 1.74 ns 1.76 ns 316913311
BenchRange<ska::bytell_hash_set<uint64_t>>/8 14.9 ns 15.1 ns 40094938
BenchRange<ska::bytell_hash_set<uint64_t>>/64 103 ns 104 ns 7388966
BenchRange<ska::bytell_hash_set<uint64_t>>/512 798 ns 803 ns 884673
BenchRange<ska::bytell_hash_set<uint64_t>>/1024 3941 ns 3958 ns 182992
BenchRange<tsl::robin_set<uint64_t>>/1 1.73 ns 1.74 ns 399152451
BenchRange<tsl::robin_set<uint64_t>>/8 10.1 ns 10.1 ns 73420131
BenchRange<tsl::robin_set<uint64_t>>/64 79.2 ns 79.2 ns 9288375
BenchRange<tsl::robin_set<uint64_t>>/512 2509 ns 2509 ns 284445
BenchRange<tsl::robin_set<uint64_t>>/1024 5674 ns 5670 ns 115304
BenchRangeVecSet<llvm::SetVector<uint64_t>>/1 0.713 ns 0.712 ns 1000000000
BenchRangeVecSet<llvm::SetVector<uint64_t>>/8 2.22 ns 2.21 ns 327491697
BenchRangeVecSet<llvm::SetVector<uint64_t>>/64 5.29 ns 5.28 ns 130994071
BenchRangeVecSet<llvm::SetVector<uint64_t>>/512 33.1 ns 33.0 ns 22646858
BenchRangeVecSet<llvm::SetVector<uint64_t>>/1024 65.5 ns 65.3 ns 11164029
BenchErase<fast_vector<uint64_t>>/1 4.85 ns 4.83 ns 142442316
BenchErase<fast_vector<uint64_t>>/8 5.17 ns 5.15 ns 138464177
BenchErase<fast_vector<uint64_t>>/64 5.40 ns 5.37 ns 136796737
BenchErase<fast_vector<uint64_t>>/512 5.62 ns 5.59 ns 121996160
BenchErase<fast_vector<uint64_t>>/1024 6.61 ns 6.57 ns 111307578
BenchErase<phmap::flat_hash_set<uint64_t>>/1 3.15 ns 3.14 ns 213187909
BenchErase<phmap::flat_hash_set<uint64_t>>/8 3.77 ns 3.75 ns 199400058
BenchErase<phmap::flat_hash_set<uint64_t>>/64 3.77 ns 3.75 ns 189551920
BenchErase<phmap::flat_hash_set<uint64_t>>/512 3.93 ns 3.91 ns 185281439
BenchErase<phmap::flat_hash_set<uint64_t>>/1024 4.25 ns 4.22 ns 165975664
BenchErase<std::unordered_set<uint64_t>>/1 12.3 ns 12.2 ns 55015890
BenchErase<std::unordered_set<uint64_t>>/8 16.8 ns 16.7 ns 40154567
BenchErase<std::unordered_set<uint64_t>>/64 18.2 ns 18.1 ns 42541416
BenchErase<std::unordered_set<uint64_t>>/512 20.2 ns 20.0 ns 37430769
BenchErase<std::unordered_set<uint64_t>>/1024 20.3 ns 20.2 ns 32412303
BenchErase<ska::flat_hash_set<uint64_t>>/1 7.24 ns 7.20 ns 104529067
BenchErase<ska::flat_hash_set<uint64_t>>/8 6.94 ns 6.89 ns 87707291
BenchErase<ska::flat_hash_set<uint64_t>>/64 8.00 ns 8.06 ns 82268142
BenchErase<ska::flat_hash_set<uint64_t>>/512 8.32 ns 8.50 ns 83242695
BenchErase<ska::flat_hash_set<uint64_t>>/1024 8.47 ns 8.63 ns 79139800
BenchErase<ska::bytell_hash_set<uint64_t>>/1 6.53 ns 6.63 ns 102286537
BenchErase<ska::bytell_hash_set<uint64_t>>/8 5.84 ns 5.92 ns 107498924
BenchErase<ska::bytell_hash_set<uint64_t>>/64 6.43 ns 6.51 ns 109329855
BenchErase<ska::bytell_hash_set<uint64_t>>/512 6.68 ns 6.75 ns 108212775
BenchErase<ska::bytell_hash_set<uint64_t>>/1024 7.23 ns 7.29 ns 91474869
BenchErase<tsl::robin_set<uint64_t>>/1 6.72 ns 6.77 ns 97625027
BenchErase<tsl::robin_set<uint64_t>>/8 7.98 ns 8.03 ns 75545067
BenchErase<tsl::robin_set<uint64_t>>/64 8.37 ns 8.41 ns 85696431
BenchErase<tsl::robin_set<uint64_t>>/512 9.13 ns 9.15 ns 74298962
BenchErase<tsl::robin_set<uint64_t>>/1024 9.22 ns 9.24 ns 81617169
BenchEraseVecSet<llvm::SetVector<uint64_t>>/1 3.00 ns 3.00 ns 211906369
BenchEraseVecSet<llvm::SetVector<uint64_t>>/8 4.42 ns 4.42 ns 165247378
BenchEraseVecSet<llvm::SetVector<uint64_t>>/64 12.1 ns 12.1 ns 59260405
BenchEraseVecSet<llvm::SetVector<uint64_t>>/512 11.9 ns 11.8 ns 57597322
BenchEraseVecSet<llvm::SetVector<uint64_t>>/1024 11.4 ns 11.3 ns 61614680