]>
Commit | Line | Data |
---|---|---|
92f5a8d4 TL |
1 | # benchmark1.cpp results |
2 | ||
3 | ## VS 2017 15.9.7 64 bit (cl.exe 19.16, /EHsc /std:c++17) | |
4 | ||
5 | ### /Od | |
6 | ||
7 | #### Compile time | |
8 | ||
9 | ``` | |
10 | variant2 (-DONLY_V2): 1837 ms | |
11 | boost::variant (-DONLY_BV): 2627 ms | |
12 | std::variant (-DONLY_SV): 1425 ms | |
13 | ``` | |
14 | ||
15 | #### Run time | |
16 | ||
17 | ``` | |
18 | N=100000000: | |
19 | double: 9041 ms; S=7.14286e+14 | |
20 | variant2: 48367 ms; S=7.14286e+14 | |
21 | boost::variant: 102776 ms; S=7.14286e+14 | |
22 | std::variant: 40590 ms; S=7.14286e+14 | |
23 | ||
24 | N=100000000: | |
25 | double: 9029 ms; S=7.14286e+14 | |
26 | variant2: 92962 ms; S=7.14286e+14 | |
27 | boost::variant: 110441 ms; S=7.14286e+14 | |
28 | std::variant: 92974 ms; S=7.14286e+14 | |
29 | ``` | |
30 | ||
31 | ### /O2 /DNDEBUG | |
32 | ||
33 | #### Compile time | |
34 | ||
35 | ``` | |
36 | variant2 (-DONLY_V2): 2571 ms | |
37 | boost::variant (-DONLY_BV): 3335 ms | |
38 | std::variant (-DONLY_SV): 1903 ms | |
39 | ``` | |
40 | ||
41 | #### Run time | |
42 | ||
43 | ``` | |
44 | N=100000000: | |
45 | double: 1949 ms; S=7.14286e+14 | |
46 | variant2: 4176 ms; S=7.14286e+14 | |
47 | boost::variant: 11312 ms; S=7.14286e+14 | |
48 | std::variant: 4617 ms; S=7.14286e+14 | |
49 | ||
50 | N=100000000: | |
51 | double: 1949 ms; S=7.14286e+14 | |
52 | variant2: 11807 ms; S=7.14286e+14 | |
53 | boost::variant: 15632 ms; S=7.14286e+14 | |
54 | std::variant: 10725 ms; S=7.14286e+14 | |
55 | ``` | |
56 | ||
57 | ## g++ 7.4.0 -std=c++17 (Cygwin 64 bit) | |
58 | ||
59 | ### -O0 | |
60 | ||
61 | #### Compile time | |
62 | ||
63 | ``` | |
64 | variant2 (-DONLY_V2): 2734 ms | |
65 | boost::variant (-DONLY_BV): 4308 ms | |
66 | std::variant (-DONLY_SV): 2298 ms | |
67 | ``` | |
68 | ||
69 | #### Run time | |
70 | ||
71 | ``` | |
72 | N=100000000: | |
73 | double: 3620 ms; S=7.14286e+14 | |
74 | variant2: 29214 ms; S=7.14286e+14 | |
75 | boost::variant: 88492 ms; S=7.14286e+14 | |
76 | std::variant: 39510 ms; S=7.14286e+14 | |
77 | ||
78 | N=100000000: | |
79 | double: 3642 ms; S=7.14286e+14 | |
80 | variant2: 75822 ms; S=7.14286e+14 | |
81 | boost::variant: 96680 ms; S=7.14286e+14 | |
82 | std::variant: 66411 ms; S=7.14286e+14 | |
83 | ``` | |
84 | ||
85 | ### -O1 | |
86 | ||
87 | #### Compile time | |
88 | ||
89 | ``` | |
90 | variant2 (-DONLY_V2): 2103 ms | |
91 | boost::variant (-DONLY_BV): 3398 ms | |
92 | std::variant (-DONLY_SV): 1841 ms | |
93 | ``` | |
94 | ||
95 | #### Run time | |
96 | ||
97 | ``` | |
98 | N=100000000: | |
99 | double: 1576 ms; S=7.14286e+14 | |
100 | variant2: 3424 ms; S=7.14286e+14 | |
101 | boost::variant: 4356 ms; S=7.14286e+14 | |
102 | std::variant: 3764 ms; S=7.14286e+14 | |
103 | ||
104 | N=100000000: | |
105 | double: 1582 ms; S=7.14286e+14 | |
106 | variant2: 9062 ms; S=7.14286e+14 | |
107 | boost::variant: 9603 ms; S=7.14286e+14 | |
108 | std::variant: 8825 ms; S=7.14286e+14 | |
109 | ``` | |
110 | ||
111 | ### -O2 -DNDEBUG | |
112 | ||
113 | #### Compile time | |
114 | ||
115 | ``` | |
116 | variant2 (-DONLY_V2): 2276 ms | |
117 | boost::variant (-DONLY_BV): 3647 ms | |
118 | std::variant (-DONLY_SV): 2111 ms | |
119 | ``` | |
120 | ||
121 | #### Run time | |
122 | ||
123 | ``` | |
124 | N=100000000: | |
125 | double: 1643 ms; S=7.14286e+14 | |
126 | variant2: 3070 ms; S=7.14286e+14 | |
127 | boost::variant: 3385 ms; S=7.14286e+14 | |
128 | std::variant: 3880 ms; S=7.14286e+14 | |
129 | ||
130 | N=100000000: | |
131 | double: 1622 ms; S=7.14286e+14 | |
132 | variant2: 8101 ms; S=7.14286e+14 | |
133 | boost::variant: 8611 ms; S=7.14286e+14 | |
134 | std::variant: 8694 ms; S=7.14286e+14 | |
135 | ``` | |
136 | ||
137 | ### -O3 -DNDEBUG | |
138 | ||
139 | #### Compile time | |
140 | ||
141 | ``` | |
142 | variant2 (-DONLY_V2): 2390 ms | |
143 | boost::variant (-DONLY_BV): 3768 ms | |
144 | std::variant (-DONLY_SV): 2094 ms | |
145 | ``` | |
146 | ||
147 | #### Run time | |
148 | ||
149 | ``` | |
150 | N=100000000: | |
151 | double: 1611 ms; S=7.14286e+14 | |
152 | variant2: 2975 ms; S=7.14286e+14 | |
153 | boost::variant: 3232 ms; S=7.14286e+14 | |
154 | std::variant: 3726 ms; S=7.14286e+14 | |
155 | ||
156 | N=100000000: | |
157 | double: 1603 ms; S=7.14286e+14 | |
158 | variant2: 8157 ms; S=7.14286e+14 | |
159 | boost::variant: 8419 ms; S=7.14286e+14 | |
160 | std::variant: 8659 ms; S=7.14286e+14 | |
161 | ``` | |
162 | ||
163 | ## clang++ 5.0.1 -std=c++17 -stdlib=libc++ (Cygwin 64 bit) | |
164 | ||
165 | ### -O0 | |
166 | ||
167 | #### Compile time | |
168 | ||
169 | ``` | |
170 | variant2 (-DONLY_V2): 2190 ms | |
171 | boost::variant (-DONLY_BV): 3537 ms | |
172 | std::variant (-DONLY_SV): 2151 ms | |
173 | ``` | |
174 | ||
175 | #### Run time | |
176 | ||
177 | ``` | |
178 | N=100000000: | |
179 | double: 6063 ms; S=7.14286e+14 | |
180 | variant2: 23616 ms; S=7.14286e+14 | |
181 | boost::variant: 92730 ms; S=7.14286e+14 | |
182 | std::variant: 23160 ms; S=7.14286e+14 | |
183 | ||
184 | N=100000000: | |
185 | double: 6054 ms; S=7.14286e+14 | |
186 | variant2: 52738 ms; S=7.14286e+14 | |
187 | boost::variant: 96896 ms; S=7.14286e+14 | |
188 | std::variant: 72595 ms; S=7.14286e+14 | |
189 | ``` | |
190 | ||
191 | ### -O1 | |
192 | ||
193 | #### Compile time | |
194 | ||
195 | ``` | |
196 | variant2 (-DONLY_V2): 2722 ms | |
197 | boost::variant (-DONLY_BV): 4337 ms | |
198 | std::variant (-DONLY_SV): 2697 ms | |
199 | ``` | |
200 | ||
201 | #### Run time | |
202 | ||
203 | ``` | |
204 | N=100000000: | |
205 | double: 2171 ms; S=7.14286e+14 | |
206 | variant2: 9280 ms; S=7.14286e+14 | |
207 | boost::variant: 51478 ms; S=7.14286e+14 | |
208 | std::variant: 5642 ms; S=7.14286e+14 | |
209 | ||
210 | N=100000000: | |
211 | double: 2171 ms; S=7.14286e+14 | |
212 | variant2: 22166 ms; S=7.14286e+14 | |
213 | boost::variant: 54084 ms; S=7.14286e+14 | |
214 | std::variant: 14330 ms; S=7.14286e+14 | |
215 | ``` | |
216 | ||
217 | ### -O2 -DNDEBUG | |
218 | ||
219 | #### Compile time | |
220 | ||
221 | ``` | |
222 | variant2 (-DONLY_V2): 2499 ms | |
223 | boost::variant (-DONLY_BV): 3826 ms | |
224 | std::variant (-DONLY_SV): 2645 ms | |
225 | ``` | |
226 | ||
227 | #### Run time | |
228 | ||
229 | ``` | |
230 | N=100000000: | |
231 | double: 1604 ms; S=7.14286e+14 | |
232 | variant2: 2726 ms; S=7.14286e+14 | |
233 | boost::variant: 6662 ms; S=7.14286e+14 | |
234 | std::variant: 3869 ms; S=7.14286e+14 | |
235 | ||
236 | N=100000000: | |
237 | double: 1598 ms; S=7.14286e+14 | |
238 | variant2: 8136 ms; S=7.14286e+14 | |
239 | boost::variant: 9236 ms; S=7.14286e+14 | |
240 | std::variant: 6279 ms; S=7.14286e+14 | |
241 | ``` | |
242 | ||
243 | ### -O3 -DNDEBUG | |
244 | ||
245 | #### Compile time | |
246 | ||
247 | ``` | |
248 | variant2 (-DONLY_V2): 2509 ms | |
249 | boost::variant (-DONLY_BV): 3845 ms | |
250 | std::variant (-DONLY_SV): 2638 ms | |
251 | ``` | |
252 | ||
253 | #### Run time | |
254 | ||
255 | ``` | |
256 | N=100000000: | |
257 | double: 1592 ms; S=7.14286e+14 | |
258 | variant2: 2697 ms; S=7.14286e+14 | |
259 | boost::variant: 6648 ms; S=7.14286e+14 | |
260 | std::variant: 3826 ms; S=7.14286e+14 | |
261 | ||
262 | N=100000000: | |
263 | double: 1614 ms; S=7.14286e+14 | |
264 | variant2: 8035 ms; S=7.14286e+14 | |
265 | boost::variant: 9221 ms; S=7.14286e+14 | |
266 | std::variant: 6319 ms; S=7.14286e+14 | |
267 | ``` |