1# benchmark2.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): 1403 ms
11boost::variant (-DONLY_BV): 2972 ms
12  std::variant (-DONLY_SV): 1057 ms
13```
14
15#### Run time
16
17```
18N=100000000:
19        prefix:   7016 ms; S=416666583333336
20      variant2:  24723 ms; S=416666583333336
21boost::variant:  60438 ms; S=416666583333336
22  std::variant:  20707 ms; S=416666583333336
23```
24
25### /O2 /DNDEBUG
26
27#### Compile time
28
29```
30      variant2 (-DONLY_V2): 1778 ms
31boost::variant (-DONLY_BV): 3252 ms
32  std::variant (-DONLY_SV): 1372 ms
33```
34
35#### Run time
36
37```
38N=100000000:
39        prefix:    803 ms; S=416666583333336
40      variant2:   2124 ms; S=416666583333336
41boost::variant:   6191 ms; S=416666583333336
42  std::variant:   2193 ms; S=416666583333336
43```
44
45## g++ 7.4.0 -std=c++17 (Cygwin 64 bit)
46
47### -O0
48
49#### Compile time
50
51```
52      variant2 (-DONLY_V2): 1739 ms
53boost::variant (-DONLY_BV): 3113 ms
54  std::variant (-DONLY_SV): 1719 ms
55```
56
57#### Run time
58
59```
60N=100000000:
61        prefix:   5163 ms; S=416666583333336
62      variant2:  20628 ms; S=416666583333336
63boost::variant:  43308 ms; S=416666583333336
64  std::variant:  42375 ms; S=416666583333336
65```
66
67### -O1
68
69#### Compile time
70
71```
72      variant2 (-DONLY_V2): 1484 ms
73boost::variant (-DONLY_BV): 2947 ms
74  std::variant (-DONLY_SV): 1448 ms
75```
76
77#### Run time
78
79```
80N=100000000:
81        prefix:    781 ms; S=416666583333336
82      variant2:   1992 ms; S=416666583333336
83boost::variant:   2249 ms; S=416666583333336
84  std::variant:   4843 ms; S=416666583333336
85```
86
87### -O2 -DNDEBUG
88
89#### Compile time
90
91```
92      variant2 (-DONLY_V2): 1547 ms
93boost::variant (-DONLY_BV): 2999 ms
94  std::variant (-DONLY_SV): 1528 ms
95```
96
97#### Run time
98
99```
100N=100000000:
101        prefix:    793 ms; S=416666583333336
102      variant2:   1686 ms; S=416666583333336
103boost::variant:   1833 ms; S=416666583333336
104  std::variant:   4340 ms; S=416666583333336
105```
106
107### -O3 -DNDEBUG
108
109#### Compile time
110
111```
112      variant2 (-DONLY_V2): 1595 ms
113boost::variant (-DONLY_BV): 3084 ms
114  std::variant (-DONLY_SV): 1620 ms
115```
116
117#### Run time
118
119```
120N=100000000:
121        prefix:    853 ms; S=416666583333336
122      variant2:   1681 ms; S=416666583333336
123boost::variant:   1773 ms; S=416666583333336
124  std::variant:   3989 ms; S=416666583333336
125```
126
127## clang++ 5.0.1 -std=c++17 -stdlib=libc++ (Cygwin 64 bit)
128
129### -O0
130
131#### Compile time
132
133```
134      variant2 (-DONLY_V2): 1578 ms
135boost::variant (-DONLY_BV): 2623 ms
136  std::variant (-DONLY_SV): 1508 ms
137```
138
139#### Run time
140
141```
142N=100000000:
143        prefix:   4447 ms; S=416666583333336
144      variant2:  16016 ms; S=416666583333336
145boost::variant:  42365 ms; S=416666583333336
146  std::variant:  17817 ms; S=416666583333336
147```
148
149### -O1
150
151#### Compile time
152
153```
154      variant2 (-DONLY_V2): 1841 ms
155boost::variant (-DONLY_BV): 2919 ms
156  std::variant (-DONLY_SV): 1776 ms
157```
158
159#### Run time
160
161```
162N=100000000:
163        prefix:   1390 ms; S=416666583333336
164      variant2:   5397 ms; S=416666583333336
165boost::variant:  23234 ms; S=416666583333336
166  std::variant:   2807 ms; S=416666583333336
167```
168
169### -O2 -DNDEBUG
170
171#### Compile time
172
173```
174      variant2 (-DONLY_V2): 1766 ms
175boost::variant (-DONLY_BV): 2817 ms
176  std::variant (-DONLY_SV): 1718 ms
177```
178
179#### Run time
180
181```
182N=100000000:
183        prefix:    604 ms; S=416666583333336
184      variant2:   1625 ms; S=416666583333336
185boost::variant:   2735 ms; S=416666583333336
186  std::variant:   2664 ms; S=416666583333336
187```
188
189### -O3 -DNDEBUG
190
191#### Compile time
192
193```
194      variant2 (-DONLY_V2): 1720 ms
195boost::variant (-DONLY_BV): 2806 ms
196  std::variant (-DONLY_SV): 1737 ms
197```
198
199#### Run time
200
201```
202N=100000000:
203        prefix:    603 ms; S=416666583333336
204      variant2:   1608 ms; S=416666583333336
205boost::variant:   2696 ms; S=416666583333336
206  std::variant:   2668 ms; S=416666583333336
207```
208