Better guard release only compiler flags#2395
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR refines how default compiler flags are applied so that optimization-only flags are not used in Debug builds. Changes:
Technical Notes: Intent appears to be reducing Clang/GCC analysis overhead in Debug where optimization is typically disabled. 🤖 Was this summary useful? React with 👍 or 👎 |
| # Optimization-only: emitted only when not building Debug. At -O0 these | ||
| # run analyses that never reach codegen, costing build time for no | ||
| # behavioral effect | ||
| $<$<NOT:$<CONFIG:Debug>>:-funroll-loops> |
There was a problem hiding this comment.
$<$<NOT:$<CONFIG:Debug>>:...> will also enable these flags when the build configuration is empty/unspecified (e.g., single-config generators if CMAKE_BUILD_TYPE isn’t set), which may defeat the intent of avoiding extra work at -O0. Consider explicitly handling the empty-config case or documenting that a build type must be set for this gating to behave as expected.
Severity: medium
Other Locations
cmake/common/compiler/options.cmake:65cmake/common/compiler/options.cmake:68cmake/common/compiler/options.cmake:69cmake/common/compiler/options.cmake:70cmake/common/compiler/options.cmake:71cmake/common/compiler/options.cmake:72cmake/common/compiler/options.cmake:98cmake/common/compiler/options.cmake:100
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| $<$<NOT:$<CONFIG:Debug>>:-ftree-vectorize> | ||
|
|
||
| # Fast-math relaxations: only meaningful with -O1+ vectorization | ||
| $<$<NOT:$<CONFIG:Debug>>:-fno-math-errno> |
There was a problem hiding this comment.
Flags like -fno-math-errno, -fno-trapping-math, -fno-signed-zeros, and -fassociative-math can change observable floating-point/errno behavior, so gating them to non-Debug introduces config-dependent semantics beyond just optimization levels. It may be worth confirming CI/tests run at least one non-Debug config so any behavioral differences are caught before Release users see them.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: c3d0491 | Previous: 39431ca | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2926427622812433 ns/iter |
2.302055045343241 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.0375240162147343 ns/iter |
1.9080530742242099 ns/iter |
1.07 |
Regex_Period_Asterisk |
1.9620705986803768 ns/iter |
1.8955991945555324 ns/iter |
1.04 |
Regex_Group_Period_Asterisk_Group |
2.0608753378256455 ns/iter |
1.8977026189067088 ns/iter |
1.09 |
Regex_Period_Plus |
1.9796762776701389 ns/iter |
1.9182073039283285 ns/iter |
1.03 |
Regex_Period |
2.0372072400763783 ns/iter |
1.8996045808993403 ns/iter |
1.07 |
Regex_Caret_Period_Plus_Dollar |
2.0235583426627843 ns/iter |
1.8958743165020802 ns/iter |
1.07 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.013843830785262 ns/iter |
1.8884215083926357 ns/iter |
1.07 |
Regex_Caret_Period_Asterisk_Dollar |
2.021571450139827 ns/iter |
1.8868881810987148 ns/iter |
1.07 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.000642012415241 ns/iter |
1.8891988247312403 ns/iter |
1.06 |
Regex_Caret_X_Hyphen |
6.131637029992998 ns/iter |
5.669656756066148 ns/iter |
1.08 |
Regex_Period_Md_Dollar |
16.193681515793887 ns/iter |
15.180494741977057 ns/iter |
1.07 |
Regex_Caret_Slash_Period_Asterisk |
8.038147735584225 ns/iter |
7.841027503985353 ns/iter |
1.03 |
Regex_Caret_Period_Range_Dollar |
1.672865981522218 ns/iter |
1.5970793327905994 ns/iter |
1.05 |
Regex_Nested_Backtrack |
24.35337372375728 ns/iter |
22.95024638875533 ns/iter |
1.06 |
JSON_Array_Of_Objects_Unique |
417.04863564964654 ns/iter |
407.5382855955551 ns/iter |
1.02 |
JSON_Parse_1 |
3952.0579029311625 ns/iter |
3644.966224146313 ns/iter |
1.08 |
JSON_Parse_Real |
6343.444934481669 ns/iter |
5924.1938625156 ns/iter |
1.07 |
JSON_Parse_Decimal |
7798.595201363462 ns/iter |
7408.725365271032 ns/iter |
1.05 |
JSON_Parse_Schema_ISO_Language |
2944293.50220217 ns/iter |
2697805.183205993 ns/iter |
1.09 |
JSON_Fast_Hash_Helm_Chart_Lock |
57.41518637985337 ns/iter |
54.55843730605611 ns/iter |
1.05 |
JSON_Equality_Helm_Chart_Lock |
136.25071503114802 ns/iter |
124.45153391137697 ns/iter |
1.09 |
JSON_Divisible_By_Decimal |
173.96188489315128 ns/iter |
161.1865713840832 ns/iter |
1.08 |
JSON_String_Equal/10 |
6.752385684733307 ns/iter |
6.295718949241249 ns/iter |
1.07 |
JSON_String_Equal/100 |
6.4559057996962 ns/iter |
6.258145008235911 ns/iter |
1.03 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7327991007665154 ns/iter |
0.7013732900866806 ns/iter |
1.04 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.3074281340624356 ns/iter |
3.0637504808046256 ns/iter |
1.08 |
JSON_String_Fast_Hash/10 |
2.2981667682156997 ns/iter |
2.276623305587624 ns/iter |
1.01 |
JSON_String_Fast_Hash/100 |
2.038685584469973 ns/iter |
1.890269228958525 ns/iter |
1.08 |
JSON_String_Key_Hash/10 |
1.3570037937680162 ns/iter |
1.2674371780667866 ns/iter |
1.07 |
JSON_String_Key_Hash/100 |
2.12359841291676 ns/iter |
2.040707246074457 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Same_Length |
2.359452014663311 ns/iter |
2.2496307875032096 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Small |
2.3300745897065105 ns/iter |
2.2282463843397977 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Large |
2.3715659627423613 ns/iter |
2.2062397527229405 ns/iter |
1.07 |
Pointer_Object_Traverse |
13.926436544257722 ns/iter |
13.094044565926263 ns/iter |
1.06 |
Pointer_Object_Try_Traverse |
19.2279382879292 ns/iter |
18.212339402817676 ns/iter |
1.06 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
151.7086208000603 ns/iter |
146.76021403179726 ns/iter |
1.03 |
Pointer_Walker_Schema_ISO_Language |
4296008.331250789 ns/iter |
3657973.307291229 ns/iter |
1.17 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
927353.0680556203 ns/iter |
916084.8442952983 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1429187.5375219418 ns/iter |
1186254.3445229519 ns/iter |
1.20 |
Pointer_Position_Tracker_Get_Deeply_Nested |
372.45196057346794 ns/iter |
322.8793367998301 ns/iter |
1.15 |
URITemplateRouter_Create |
22758.39767138034 ns/iter |
21226.627629437233 ns/iter |
1.07 |
URITemplateRouter_Match |
163.2399470345852 ns/iter |
152.47791947574018 ns/iter |
1.07 |
URITemplateRouter_Match_BasePath |
208.57815630345266 ns/iter |
179.71130354021608 ns/iter |
1.16 |
URITemplateRouterView_Restore |
9558.460851152862 ns/iter |
8678.008157502798 ns/iter |
1.10 |
URITemplateRouterView_Match |
138.51359722710095 ns/iter |
121.61740039977118 ns/iter |
1.14 |
URITemplateRouterView_Match_BasePath |
149.46857863336285 ns/iter |
138.28826586965417 ns/iter |
1.08 |
URITemplateRouterView_Arguments |
412.11803139646764 ns/iter |
407.6451623131614 ns/iter |
1.01 |
JSONL_Parse_Large |
12655145.089285368 ns/iter |
11279213.983050918 ns/iter |
1.12 |
JSONL_Parse_Large_GZIP |
12977369.592590548 ns/iter |
12159437.140352119 ns/iter |
1.07 |
HTML_Build_Table_100000 |
64999983.40000274 ns/iter |
62612833.36363539 ns/iter |
1.04 |
HTML_Render_Table_100000 |
4551458.860760249 ns/iter |
2468165.7037035623 ns/iter |
1.84 |
GZIP_Compress_ISO_Language_Set_3_Locations |
27161338.541664764 ns/iter |
25921399.70370142 ns/iter |
1.05 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5123909.999999796 ns/iter |
4738101.549668987 ns/iter |
1.08 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1532333.4257642655 ns/iter |
1406615.6941649108 ns/iter |
1.09 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
272040.92191138875 ns/iter |
264203.0839894783 ns/iter |
1.03 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: c3d0491 | Previous: 39431ca | Ratio |
|---|---|---|---|
GZIP_Compress_ISO_Language_Set_3_Locations |
41712230.176472075 ns/iter |
31645454.4999994 ns/iter |
1.32 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4485925.6089743655 ns/iter |
3043628.60434772 ns/iter |
1.47 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2357483.3389261584 ns/iter |
1797243.9203083264 ns/iter |
1.31 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
328984.23242468765 ns/iter |
213019.88355021662 ns/iter |
1.54 |
HTML_Build_Table_100000 |
66900474.19999701 ns/iter |
53309098.46154205 ns/iter |
1.25 |
HTML_Render_Table_100000 |
2050582.8680350538 ns/iter |
1937346.49614403 ns/iter |
1.06 |
JSONL_Parse_Large |
12586570.62499984 ns/iter |
9719847.819444755 ns/iter |
1.29 |
JSONL_Parse_Large_GZIP |
13704449.058822071 ns/iter |
10604821.151515132 ns/iter |
1.29 |
URITemplateRouter_Create |
29595.707533235913 ns/iter |
22698.113568325396 ns/iter |
1.30 |
URITemplateRouter_Match |
177.48621848084667 ns/iter |
124.60451423704633 ns/iter |
1.42 |
URITemplateRouter_Match_BasePath |
208.735721805225 ns/iter |
141.59017156602349 ns/iter |
1.47 |
URITemplateRouterView_Restore |
8591.539787430951 ns/iter |
6716.548527446268 ns/iter |
1.28 |
URITemplateRouterView_Match |
136.6362207150249 ns/iter |
100.7921661958836 ns/iter |
1.36 |
URITemplateRouterView_Match_BasePath |
159.22708576705193 ns/iter |
117.61528661431865 ns/iter |
1.35 |
URITemplateRouterView_Arguments |
458.5700640676439 ns/iter |
358.73941112619923 ns/iter |
1.28 |
Pointer_Object_Traverse |
26.477944533047165 ns/iter |
20.60809918178272 ns/iter |
1.28 |
Pointer_Object_Try_Traverse |
21.913646515195502 ns/iter |
16.996531724834966 ns/iter |
1.29 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
164.99319345989355 ns/iter |
116.20399616327902 ns/iter |
1.42 |
Pointer_Walker_Schema_ISO_Language |
3458420.8118812423 ns/iter |
2483282.0219780807 ns/iter |
1.39 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1540585.427937963 ns/iter |
1200980.4820513052 ns/iter |
1.28 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1714283.9240195781 ns/iter |
1328530.760000008 ns/iter |
1.29 |
Pointer_Position_Tracker_Get_Deeply_Nested |
628.1074359997273 ns/iter |
366.01017651473325 ns/iter |
1.72 |
JSON_Array_Of_Objects_Unique |
423.883464409985 ns/iter |
346.044791659037 ns/iter |
1.22 |
JSON_Parse_1 |
7781.316410940731 ns/iter |
6195.993881095243 ns/iter |
1.26 |
JSON_Parse_Real |
12103.041081804484 ns/iter |
9280.499441354967 ns/iter |
1.30 |
JSON_Parse_Decimal |
16280.374790502325 ns/iter |
13061.412793201209 ns/iter |
1.25 |
JSON_Parse_Schema_ISO_Language |
4638658.751677389 ns/iter |
3663683.984375036 ns/iter |
1.27 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.35865362305765 ns/iter |
52.21344400000589 ns/iter |
1.18 |
JSON_Equality_Helm_Chart_Lock |
174.59891008465496 ns/iter |
133.02389553619247 ns/iter |
1.31 |
JSON_Divisible_By_Decimal |
227.71525195036668 ns/iter |
176.48609344742985 ns/iter |
1.29 |
JSON_String_Equal/10 |
6.070656790655601 ns/iter |
4.7099803199935515 ns/iter |
1.29 |
JSON_String_Equal/100 |
6.832221299524268 ns/iter |
5.650287479306423 ns/iter |
1.21 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7268707754847706 ns/iter |
0.5518529651282013 ns/iter |
1.32 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
22.064000350198388 ns/iter |
17.089076886696688 ns/iter |
1.29 |
JSON_String_Fast_Hash/10 |
1.063536579512912 ns/iter |
0.822725555972128 ns/iter |
1.29 |
JSON_String_Fast_Hash/100 |
1.0577658537535193 ns/iter |
0.8188005510492895 ns/iter |
1.29 |
JSON_String_Key_Hash/10 |
1.7603167721154587 ns/iter |
1.3648500994699089 ns/iter |
1.29 |
JSON_String_Key_Hash/100 |
14.7710269830449 ns/iter |
11.67954016221623 ns/iter |
1.26 |
JSON_Object_Defines_Miss_Same_Length |
3.8730686758183963 ns/iter |
3.0027773502950366 ns/iter |
1.29 |
JSON_Object_Defines_Miss_Too_Small |
4.227593754172065 ns/iter |
3.2745459550102396 ns/iter |
1.29 |
JSON_Object_Defines_Miss_Too_Large |
3.529605631721042 ns/iter |
2.728573026859333 ns/iter |
1.29 |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.0561662181151952 ns/iter |
0.8188595775210362 ns/iter |
1.29 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.0557511247792197 ns/iter |
0.8180272182533145 ns/iter |
1.29 |
Regex_Period_Asterisk |
0.7053808796991619 ns/iter |
0.5455086096262912 ns/iter |
1.29 |
Regex_Group_Period_Asterisk_Group |
0.7040049052359232 ns/iter |
0.5463970203209984 ns/iter |
1.29 |
Regex_Period_Plus |
1.1347585605653387 ns/iter |
0.8179611650684585 ns/iter |
1.39 |
Regex_Period |
1.0847182087159437 ns/iter |
0.8181898237872706 ns/iter |
1.33 |
Regex_Caret_Period_Plus_Dollar |
0.7048289986224647 ns/iter |
0.545914760853015 ns/iter |
1.29 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.704251001334093 ns/iter |
0.5458605236851984 ns/iter |
1.29 |
Regex_Caret_Period_Asterisk_Dollar |
1.0570193116864963 ns/iter |
0.8187237561547237 ns/iter |
1.29 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.0552315624924358 ns/iter |
0.8190882545230909 ns/iter |
1.29 |
Regex_Caret_X_Hyphen |
4.574066504147237 ns/iter |
3.2731549212656783 ns/iter |
1.40 |
Regex_Period_Md_Dollar |
34.23132231811154 ns/iter |
28.512128945815416 ns/iter |
1.20 |
Regex_Caret_Slash_Period_Asterisk |
3.874433354850769 ns/iter |
2.727764932609776 ns/iter |
1.42 |
Regex_Caret_Period_Range_Dollar |
1.055712521252537 ns/iter |
0.8187250132863849 ns/iter |
1.29 |
Regex_Nested_Backtrack |
38.0609331580364 ns/iter |
33.46222442864931 ns/iter |
1.14 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: c3d0491 | Previous: 39431ca | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.195882677776025 ns/iter |
2.4660408012839348 ns/iter |
0.89 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.2106648121537873 ns/iter |
2.463995944945357 ns/iter |
0.90 |
Regex_Period_Asterisk |
2.1900184355936223 ns/iter |
2.46534170256471 ns/iter |
0.89 |
Regex_Group_Period_Asterisk_Group |
2.2005655002886466 ns/iter |
2.4623954496522193 ns/iter |
0.89 |
Regex_Period_Plus |
2.8106376410287153 ns/iter |
3.8682404037039304 ns/iter |
0.73 |
Regex_Period |
3.1145887460194297 ns/iter |
4.218860874181633 ns/iter |
0.74 |
Regex_Caret_Period_Plus_Dollar |
2.8012789626598162 ns/iter |
3.87021254547123 ns/iter |
0.72 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.1130222328923978 ns/iter |
4.216649427921897 ns/iter |
0.74 |
Regex_Caret_Period_Asterisk_Dollar |
3.1187071391816916 ns/iter |
2.4606693219141254 ns/iter |
1.27 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.422690590765394 ns/iter |
2.8155550518108017 ns/iter |
1.22 |
Regex_Caret_X_Hyphen |
6.542947231011224 ns/iter |
7.032812047818567 ns/iter |
0.93 |
Regex_Period_Md_Dollar |
27.758850770596222 ns/iter |
26.622303335897634 ns/iter |
1.04 |
Regex_Caret_Slash_Period_Asterisk |
5.603861918092948 ns/iter |
7.368631510073414 ns/iter |
0.76 |
Regex_Caret_Period_Range_Dollar |
2.800736208670448 ns/iter |
2.463761790421221 ns/iter |
1.14 |
Regex_Nested_Backtrack |
37.05304874448413 ns/iter |
36.763226894875636 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
406.3105105736628 ns/iter |
440.31001921175044 ns/iter |
0.92 |
JSON_Parse_1 |
5869.550964577903 ns/iter |
5860.361392307404 ns/iter |
1.00 |
JSON_Parse_Real |
10758.975476421316 ns/iter |
10399.55966369214 ns/iter |
1.03 |
JSON_Parse_Decimal |
11289.630172958505 ns/iter |
11612.458508932606 ns/iter |
0.97 |
JSON_Parse_Schema_ISO_Language |
3560934.8571428577 ns/iter |
3758326.2956987806 ns/iter |
0.95 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.027367536640924 ns/iter |
73.47938464758258 ns/iter |
0.83 |
JSON_Equality_Helm_Chart_Lock |
157.8150746073325 ns/iter |
161.20876604913954 ns/iter |
0.98 |
JSON_Divisible_By_Decimal |
239.7940613331961 ns/iter |
239.65813945830396 ns/iter |
1.00 |
JSON_String_Equal/10 |
6.232597910178329 ns/iter |
6.331795279367821 ns/iter |
0.98 |
JSON_String_Equal/100 |
6.85628301848871 ns/iter |
7.038941698665199 ns/iter |
0.97 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.936123114985654 ns/iter |
1.0546241710565007 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.273080236753422 ns/iter |
12.47756452333512 ns/iter |
0.82 |
JSON_String_Fast_Hash/10 |
2.8011985344156973 ns/iter |
2.8152939298512125 ns/iter |
0.99 |
JSON_String_Fast_Hash/100 |
2.8017109711528696 ns/iter |
2.818106948039136 ns/iter |
0.99 |
JSON_String_Key_Hash/10 |
2.1812106589229616 ns/iter |
2.461388768111574 ns/iter |
0.89 |
JSON_String_Key_Hash/100 |
6.53573628924839 ns/iter |
8.084461204501201 ns/iter |
0.81 |
JSON_Object_Defines_Miss_Same_Length |
3.740238167571903 ns/iter |
4.2218176661474125 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.742938762217144 ns/iter |
4.229099742018546 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Large |
3.7396779122597565 ns/iter |
4.220842893103267 ns/iter |
0.89 |
Pointer_Object_Traverse |
24.154118215016897 ns/iter |
27.324502947423014 ns/iter |
0.88 |
Pointer_Object_Try_Traverse |
26.22565575784359 ns/iter |
30.206886605057218 ns/iter |
0.87 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
152.2042945543237 ns/iter |
190.09368235292308 ns/iter |
0.80 |
Pointer_Walker_Schema_ISO_Language |
2990682.578723515 ns/iter |
3088562.500000024 ns/iter |
0.97 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1393782.246988034 ns/iter |
1409522.2351737788 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1783707.2930591167 ns/iter |
1722168.2266010582 ns/iter |
1.04 |
Pointer_Position_Tracker_Get_Deeply_Nested |
579.7860652106492 ns/iter |
650.5874328910945 ns/iter |
0.89 |
URITemplateRouter_Create |
30999.221528450467 ns/iter |
30350.605392260633 ns/iter |
1.02 |
URITemplateRouter_Match |
168.86015454679782 ns/iter |
182.10819686325326 ns/iter |
0.93 |
URITemplateRouter_Match_BasePath |
196.92280715760722 ns/iter |
223.54648703662755 ns/iter |
0.88 |
URITemplateRouterView_Restore |
7805.611375292307 ns/iter |
8598.887419633022 ns/iter |
0.91 |
URITemplateRouterView_Match |
141.8149224542968 ns/iter |
147.42242667666528 ns/iter |
0.96 |
URITemplateRouterView_Match_BasePath |
160.31106841783028 ns/iter |
169.74799878748146 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
478.48425689678743 ns/iter |
470.3557217429083 ns/iter |
1.02 |
JSONL_Parse_Large |
10732836.846154196 ns/iter |
10121653.042857101 ns/iter |
1.06 |
JSONL_Parse_Large_GZIP |
11935705.288135717 ns/iter |
11392978.770491809 ns/iter |
1.05 |
HTML_Build_Table_100000 |
66239006.63636174 ns/iter |
83421942.87499893 ns/iter |
0.79 |
HTML_Render_Table_100000 |
5404881.612403293 ns/iter |
5049850.288732156 ns/iter |
1.07 |
GZIP_Compress_ISO_Language_Set_3_Locations |
34293674.15000115 ns/iter |
36381361.36842269 ns/iter |
0.94 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4683632.671052943 ns/iter |
4675728.026845474 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1903272.4864129962 ns/iter |
2151822.9631902245 ns/iter |
0.88 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
373453.45405987406 ns/iter |
296422.5513146701 ns/iter |
1.26 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: c3d0491 | Previous: 99fe545 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
8.88428165676661 ns/iter |
8.819669157055579 ns/iter |
1.01 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
8.835612014130861 ns/iter |
8.827964285710468 ns/iter |
1.00 |
Regex_Period_Asterisk |
8.830702008931928 ns/iter |
8.825773437501587 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
8.900078124999109 ns/iter |
8.821351562500825 ns/iter |
1.01 |
Regex_Period_Plus |
11.285464062495976 ns/iter |
11.297090625006945 ns/iter |
1.00 |
Regex_Period |
11.283889285713096 ns/iter |
11.2827031250049 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
11.282417187501892 ns/iter |
11.282284374999563 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
11.282098437504828 ns/iter |
11.28819999999564 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
8.822207103467173 ns/iter |
8.825457589287971 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
8.824657366070758 ns/iter |
8.822438616066718 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
13.748894135037887 ns/iter |
13.521689285718303 ns/iter |
1.02 |
Regex_Period_Md_Dollar |
41.10978676588976 ns/iter |
40.43477107721573 ns/iter |
1.02 |
Regex_Caret_Slash_Period_Asterisk |
13.064261325608756 ns/iter |
13.048321428576465 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
11.282329687489323 ns/iter |
11.280021874995327 ns/iter |
1.00 |
Regex_Nested_Backtrack |
50.267468413364575 ns/iter |
49.82385000002978 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
492.8995999998733 ns/iter |
493.42320000050677 ns/iter |
1.00 |
JSON_Parse_1 |
7541.584000000511 ns/iter |
8439.448660715649 ns/iter |
0.89 |
JSON_Parse_Real |
13653.791071419619 ns/iter |
14040.514285706455 ns/iter |
0.97 |
JSON_Parse_Decimal |
14534.459821423492 ns/iter |
14113.590341114439 ns/iter |
1.03 |
JSON_Parse_Schema_ISO_Language |
6678021.428578111 ns/iter |
6035983.928573581 ns/iter |
1.11 |
JSON_Fast_Hash_Helm_Chart_Lock |
57.762562499955756 ns/iter |
56.93657142858553 ns/iter |
1.01 |
JSON_Equality_Helm_Chart_Lock |
273.9986395538425 ns/iter |
270.1617468678469 ns/iter |
1.01 |
JSON_Divisible_By_Decimal |
253.4471428569824 ns/iter |
253.35453571447684 ns/iter |
1.00 |
JSON_String_Equal/10 |
11.433879687501758 ns/iter |
11.815035937502216 ns/iter |
0.97 |
JSON_String_Equal/100 |
13.144005744887266 ns/iter |
12.919925000005605 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.7817887500001461 ns/iter |
1.7684222078472083 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
11.341650000005643 ns/iter |
11.355592187499042 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
3.6412260044674634 ns/iter |
3.5289988776279655 ns/iter |
1.03 |
JSON_String_Fast_Hash/100 |
3.841048766318128 ns/iter |
3.5292308873398555 ns/iter |
1.09 |
JSON_String_Key_Hash/10 |
4.246380000000727 ns/iter |
4.2442318507805386 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
16.926966850931148 ns/iter |
16.929242966989683 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.9010949982546856 ns/iter |
3.9792539062487107 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Too_Small |
3.9748560267887405 ns/iter |
3.93990736607159 ns/iter |
1.01 |
JSON_Object_Defines_Miss_Too_Large |
5.038432000001194 ns/iter |
4.972357999995438 ns/iter |
1.01 |
Pointer_Object_Traverse |
42.040361021377144 ns/iter |
42.07021771705068 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
53.4370499999568 ns/iter |
53.442401785689846 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
153.66991055056988 ns/iter |
149.8249330357534 ns/iter |
1.03 |
Pointer_Walker_Schema_ISO_Language |
13607016.000005389 ns/iter |
12028767.857145796 ns/iter |
1.13 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2031682.196971043 ns/iter |
2001446.428572048 ns/iter |
1.02 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3048901.6949143093 ns/iter |
2960364.406778924 ns/iter |
1.03 |
Pointer_Position_Tracker_Get_Deeply_Nested |
639.1280133927677 ns/iter |
623.7459821422574 ns/iter |
1.02 |
URITemplateRouter_Create |
37105.63712908334 ns/iter |
37584.9734826395 ns/iter |
0.99 |
URITemplateRouter_Match |
224.46203125014108 ns/iter |
211.74671875002105 ns/iter |
1.06 |
URITemplateRouter_Match_BasePath |
253.9454800865472 ns/iter |
249.6257500001775 ns/iter |
1.02 |
URITemplateRouterView_Restore |
23278.173234674887 ns/iter |
23476.41209359377 ns/iter |
0.99 |
URITemplateRouterView_Match |
154.4188169644047 ns/iter |
158.51756696422723 ns/iter |
0.97 |
URITemplateRouterView_Match_BasePath |
183.42315030564794 ns/iter |
181.12753402938242 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
443.46956424944835 ns/iter |
443.1125625001187 ns/iter |
1.00 |
JSONL_Parse_Large |
26895495.999997362 ns/iter |
29009604.16665536 ns/iter |
0.93 |
JSONL_Parse_Large_GZIP |
26687235.714299668 ns/iter |
28639424.999975443 ns/iter |
0.93 |
HTML_Build_Table_100000 |
92179533.33336481 ns/iter |
90987200.00006974 ns/iter |
1.01 |
HTML_Render_Table_100000 |
8264331.99999883 ns/iter |
7949014.444440965 ns/iter |
1.04 |
GZIP_Compress_ISO_Language_Set_3_Locations |
43896312.50001003 ns/iter |
43641431.24996644 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
11726789.062507236 ns/iter |
11588262.499998337 ns/iter |
1.01 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2530099.2857117825 ns/iter |
2541644.2857151977 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
706875.8928576407 ns/iter |
696216.1830362641 ns/iter |
1.02 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com