Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf(html/minifier): Reduce allocations (#6623)
- Loading branch information
1 parent
b976551
commit 7d3aa66
Showing
4 changed files
with
409 additions
and
281 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
7d3aa66
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark
es/full/bugs-1
296240
ns/iter (± 4169
)330303
ns/iter (± 18557
)0.90
es/full/minify/libraries/antd
1708971473
ns/iter (± 37912254
)1688739716
ns/iter (± 17225981
)1.01
es/full/minify/libraries/d3
334243171
ns/iter (± 5304715
)336480993
ns/iter (± 3594266
)0.99
es/full/minify/libraries/echarts
1408883038
ns/iter (± 15063499
)1464418921
ns/iter (± 20748222
)0.96
es/full/minify/libraries/jquery
92319463
ns/iter (± 488221
)94331913
ns/iter (± 1962290
)0.98
es/full/minify/libraries/lodash
109526947
ns/iter (± 1147281
)112404792
ns/iter (± 1613268
)0.97
es/full/minify/libraries/moment
53542589
ns/iter (± 840920
)56608473
ns/iter (± 803137
)0.95
es/full/minify/libraries/react
19769492
ns/iter (± 247040
)20391482
ns/iter (± 960193
)0.97
es/full/minify/libraries/terser
263932393
ns/iter (± 3625609
)270505274
ns/iter (± 7885216
)0.98
es/full/minify/libraries/three
472138070
ns/iter (± 3980623
)512254287
ns/iter (± 8954271
)0.92
es/full/minify/libraries/typescript
3116676316
ns/iter (± 26891764
)3214725023
ns/iter (± 29378135
)0.97
es/full/minify/libraries/victory
697873291
ns/iter (± 12599957
)722442669
ns/iter (± 12886091
)0.97
es/full/minify/libraries/vue
136391552
ns/iter (± 2000239
)141329959
ns/iter (± 1381169
)0.97
es/full/codegen/es3
27538
ns/iter (± 52
)27591
ns/iter (± 50
)1.00
es/full/codegen/es5
27596
ns/iter (± 59
)27552
ns/iter (± 43
)1.00
es/full/codegen/es2015
27564
ns/iter (± 43
)27586
ns/iter (± 39
)1.00
es/full/codegen/es2016
27513
ns/iter (± 51
)27534
ns/iter (± 44
)1.00
es/full/codegen/es2017
27570
ns/iter (± 165
)27549
ns/iter (± 69
)1.00
es/full/codegen/es2018
27566
ns/iter (± 54
)27626
ns/iter (± 52
)1.00
es/full/codegen/es2019
27550
ns/iter (± 74
)27592
ns/iter (± 41
)1.00
es/full/codegen/es2020
27547
ns/iter (± 54
)27548
ns/iter (± 62
)1.00
es/full/all/es3
168153520
ns/iter (± 2405982
)167737479
ns/iter (± 3306274
)1.00
es/full/all/es5
157598936
ns/iter (± 3933024
)159446941
ns/iter (± 2952767
)0.99
es/full/all/es2015
119457384
ns/iter (± 1045576
)120610858
ns/iter (± 1368082
)0.99
es/full/all/es2016
118662205
ns/iter (± 674187
)120811641
ns/iter (± 868745
)0.98
es/full/all/es2017
118322412
ns/iter (± 441339
)118703189
ns/iter (± 1527689
)1.00
es/full/all/es2018
115743309
ns/iter (± 1025517
)117600975
ns/iter (± 1216624
)0.98
es/full/all/es2019
116092595
ns/iter (± 568389
)116784509
ns/iter (± 851508
)0.99
es/full/all/es2020
110855695
ns/iter (± 1431759
)112025139
ns/iter (± 678228
)0.99
es/full/parser
519482
ns/iter (± 8450
)522159
ns/iter (± 7810
)0.99
es/full/base/fixer
21976
ns/iter (± 20
)22082
ns/iter (± 32
)1.00
es/full/base/resolver_and_hygiene
77585
ns/iter (± 60
)78127
ns/iter (± 51
)0.99
serialization of ast node
143
ns/iter (± 0
)142
ns/iter (± 0
)1.01
serialization of serde
123
ns/iter (± 0
)123
ns/iter (± 0
)1
css/minify/libraries/bootstrap
27159859
ns/iter (± 200617
)27635088
ns/iter (± 259747
)0.98
css/visitor/compare/clone
2092214
ns/iter (± 24399
)2112571
ns/iter (± 23488
)0.99
css/visitor/compare/visit_mut_span
2273751
ns/iter (± 5658
)2262310
ns/iter (± 8868
)1.01
css/visitor/compare/visit_mut_span_panic
2324823
ns/iter (± 7024
)2331532
ns/iter (± 9598
)1.00
css/visitor/compare/fold_span
2996556
ns/iter (± 15293
)2998380
ns/iter (± 15725
)1.00
css/visitor/compare/fold_span_panic
3125882
ns/iter (± 13344
)3145049
ns/iter (± 23893
)0.99
css/lexer/bootstrap_5_1_3
5253333
ns/iter (± 1026
)5253852
ns/iter (± 1413
)1.00
css/lexer/foundation_6_7_4
4423867
ns/iter (± 868
)4424431
ns/iter (± 1272
)1.00
css/lexer/tailwind_3_1_1
831142
ns/iter (± 118
)829445
ns/iter (± 449
)1.00
css/parser/bootstrap_5_1_3
20767690
ns/iter (± 53018
)20910952
ns/iter (± 115836
)0.99
css/parser/foundation_6_7_4
16591852
ns/iter (± 43996
)16663869
ns/iter (± 44805
)1.00
css/parser/tailwind_3_1_1
3197318
ns/iter (± 3889
)3180684
ns/iter (± 9968
)1.01
es/codegen/colors
330969
ns/iter (± 184396
)329828
ns/iter (± 184787
)1.00
es/codegen/large
1159607
ns/iter (± 592255
)1183807
ns/iter (± 622834
)0.98
es/codegen/with-parser/colors
45770
ns/iter (± 266
)46115
ns/iter (± 273
)0.99
es/codegen/with-parser/large
508346
ns/iter (± 1334
)508663
ns/iter (± 1902
)1.00
es/minify/libraries/antd
1436526696
ns/iter (± 7699762
)1488363991
ns/iter (± 18115745
)0.97
es/minify/libraries/d3
289709588
ns/iter (± 3033499
)303164503
ns/iter (± 3925332
)0.96
es/minify/libraries/echarts
1221331014
ns/iter (± 10697913
)1250497109
ns/iter (± 10652780
)0.98
es/minify/libraries/jquery
78612092
ns/iter (± 473374
)81105181
ns/iter (± 1542626
)0.97
es/minify/libraries/lodash
97028115
ns/iter (± 719459
)99567588
ns/iter (± 699171
)0.97
es/minify/libraries/moment
45896858
ns/iter (± 198207
)47287524
ns/iter (± 327664
)0.97
es/minify/libraries/react
17368806
ns/iter (± 180996
)17759823
ns/iter (± 154997
)0.98
es/minify/libraries/terser
220926689
ns/iter (± 4160934
)244207441
ns/iter (± 3296875
)0.90
es/minify/libraries/three
390470135
ns/iter (± 5924180
)437683501
ns/iter (± 4193550
)0.89
es/minify/libraries/typescript
2642394548
ns/iter (± 13354391
)2785461122
ns/iter (± 31278965
)0.95
es/minify/libraries/victory
586694601
ns/iter (± 17494950
)630686796
ns/iter (± 13245280
)0.93
es/minify/libraries/vue
118450157
ns/iter (± 998775
)123862559
ns/iter (± 1977853
)0.96
es/visitor/compare/clone
2396252
ns/iter (± 2277
)2429307
ns/iter (± 18738
)0.99
es/visitor/compare/visit_mut_span
2819987
ns/iter (± 29123
)2801878
ns/iter (± 7738
)1.01
es/visitor/compare/visit_mut_span_panic
2825663
ns/iter (± 6944
)2873168
ns/iter (± 14975
)0.98
es/visitor/compare/fold_span
3927435
ns/iter (± 15787
)3986789
ns/iter (± 29623
)0.99
es/visitor/compare/fold_span_panic
4108868
ns/iter (± 19747
)4143327
ns/iter (± 63342
)0.99
es/lexer/colors
17358
ns/iter (± 7
)17351
ns/iter (± 7
)1.00
es/lexer/angular
8212141
ns/iter (± 1581
)8218106
ns/iter (± 1537
)1.00
es/lexer/backbone
1070602
ns/iter (± 457
)1073832
ns/iter (± 378
)1.00
es/lexer/jquery
5938750
ns/iter (± 5813
)5950484
ns/iter (± 858
)1.00
es/lexer/jquery mobile
9164244
ns/iter (± 3737
)9190406
ns/iter (± 8811
)1.00
es/lexer/mootools
4662948
ns/iter (± 2545
)4670765
ns/iter (± 1496
)1.00
es/lexer/underscore
891943
ns/iter (± 270
)897401
ns/iter (± 309
)0.99
es/lexer/three
27824490
ns/iter (± 12843
)27910322
ns/iter (± 13260
)1.00
es/lexer/yui
5051736
ns/iter (± 2811
)5058493
ns/iter (± 1442
)1.00
es/parser/colors
30978
ns/iter (± 77
)31399
ns/iter (± 42
)0.99
es/parser/angular
16286585
ns/iter (± 264233
)17140231
ns/iter (± 208654
)0.95
es/parser/backbone
2327371
ns/iter (± 12441
)2354875
ns/iter (± 18525
)0.99
es/parser/jquery
12984503
ns/iter (± 138209
)13344365
ns/iter (± 118766
)0.97
es/parser/jquery mobile
20584049
ns/iter (± 305801
)21441841
ns/iter (± 257865
)0.96
es/parser/mootools
9743025
ns/iter (± 31292
)9758303
ns/iter (± 65535
)1.00
es/parser/underscore
1967772
ns/iter (± 12134
)1988394
ns/iter (± 11772
)0.99
es/parser/three
59111663
ns/iter (± 619282
)60869891
ns/iter (± 122564
)0.97
es/parser/yui
9835420
ns/iter (± 98141
)9827161
ns/iter (± 75919
)1.00
es/preset-env/usage/builtin_type
140874
ns/iter (± 31739
)141765
ns/iter (± 31725
)0.99
es/preset-env/usage/property
21139
ns/iter (± 145
)21283
ns/iter (± 92
)0.99
es/resolver/typescript
112676069
ns/iter (± 1815755
)113177493
ns/iter (± 5513596
)1.00
es/fixer/typescript
85390945
ns/iter (± 274080
)87192043
ns/iter (± 484208
)0.98
es/hygiene/typescript
166048815
ns/iter (± 1189842
)174628153
ns/iter (± 1924542
)0.95
es/resolver_with_hygiene/typescript
291405887
ns/iter (± 1547636
)318020879
ns/iter (± 3653649
)0.92
es/visitor/base-perf/module_clone
75384
ns/iter (± 1041
)75374
ns/iter (± 1584
)1.00
es/visitor/base-perf/fold_empty
85961
ns/iter (± 979
)85622
ns/iter (± 1474
)1.00
es/visitor/base-perf/fold_noop_impl_all
86406
ns/iter (± 1269
)85798
ns/iter (± 1168
)1.01
es/visitor/base-perf/fold_noop_impl_vec
86249
ns/iter (± 1283
)85528
ns/iter (± 1313
)1.01
es/visitor/base-perf/boxing_boxed_clone
54
ns/iter (± 0
)54
ns/iter (± 0
)1
es/visitor/base-perf/boxing_unboxed_clone
58
ns/iter (± 0
)58
ns/iter (± 0
)1
es/visitor/base-perf/boxing_boxed
100
ns/iter (± 0
)104
ns/iter (± 0
)0.96
es/visitor/base-perf/boxing_unboxed
104
ns/iter (± 0
)105
ns/iter (± 0
)0.99
es/visitor/base-perf/visit_contains_this
3443
ns/iter (± 32
)3431
ns/iter (± 103
)1.00
es/base/parallel/resolver/typescript
5140440652
ns/iter (± 259515754
)5208824919
ns/iter (± 394089048
)0.99
es/base/parallel/hygiene/typescript
1994134939
ns/iter (± 21119984
)2032065439
ns/iter (± 35986240
)0.98
misc/visitors/time-complexity/time 5
103
ns/iter (± 0
)94
ns/iter (± 0
)1.10
misc/visitors/time-complexity/time 10
316
ns/iter (± 0
)312
ns/iter (± 7
)1.01
misc/visitors/time-complexity/time 15
653
ns/iter (± 0
)649
ns/iter (± 11
)1.01
misc/visitors/time-complexity/time 20
1221
ns/iter (± 0
)1204
ns/iter (± 4
)1.01
misc/visitors/time-complexity/time 40
6626
ns/iter (± 27
)6111
ns/iter (± 2
)1.08
misc/visitors/time-complexity/time 60
17132
ns/iter (± 51
)15513
ns/iter (± 12
)1.10
es/full-target/es2016
186085
ns/iter (± 546
)186288
ns/iter (± 666
)1.00
es/full-target/es2017
179340
ns/iter (± 1411
)179524
ns/iter (± 387
)1.00
es/full-target/es2018
165683
ns/iter (± 147
)169884
ns/iter (± 447
)0.98
es2020_nullish_coalescing
64605
ns/iter (± 120
)64936
ns/iter (± 154
)0.99
es2020_optional_chaining
91420
ns/iter (± 3421
)93711
ns/iter (± 7186
)0.98
es2022_class_properties
89443
ns/iter (± 127
)91653
ns/iter (± 147
)0.98
es2018_object_rest_spread
69038
ns/iter (± 40
)69461
ns/iter (± 86
)0.99
es2019_optional_catch_binding
58846
ns/iter (± 83
)59060
ns/iter (± 88
)1.00
es2017_async_to_generator
59246
ns/iter (± 95
)59538
ns/iter (± 96
)1.00
es2016_exponentiation
62329
ns/iter (± 92
)62705
ns/iter (± 162
)0.99
es2015_arrow
66727
ns/iter (± 96
)68410
ns/iter (± 308
)0.98
es2015_block_scoped_fn
63459
ns/iter (± 101
)63965
ns/iter (± 146
)0.99
es2015_block_scoping
150971
ns/iter (± 9921
)152339
ns/iter (± 7235
)0.99
es2015_classes
111490
ns/iter (± 322
)114631
ns/iter (± 488
)0.97
es2015_computed_props
58670
ns/iter (± 58
)57828
ns/iter (± 92
)1.01
es2015_destructuring
110845
ns/iter (± 115
)110787
ns/iter (± 270
)1.00
es2015_duplicate_keys
61437
ns/iter (± 77
)60672
ns/iter (± 73
)1.01
es2015_parameters
76604
ns/iter (± 86
)75602
ns/iter (± 124
)1.01
es2015_fn_name
63837
ns/iter (± 503
)63383
ns/iter (± 532
)1.01
es2015_for_of
61651
ns/iter (± 61
)60744
ns/iter (± 63
)1.01
es2015_instanceof
60480
ns/iter (± 71
)59754
ns/iter (± 62
)1.01
es2015_shorthand_property
58731
ns/iter (± 97
)57828
ns/iter (± 113
)1.02
es2015_spread
58741
ns/iter (± 71
)57774
ns/iter (± 96
)1.02
es2015_sticky_regex
59739
ns/iter (± 78
)59069
ns/iter (± 78
)1.01
es2015_typeof_symbol
59832
ns/iter (± 120
)59215
ns/iter (± 47
)1.01
es/transform/baseline/base
49804
ns/iter (± 61
)48863
ns/iter (± 78
)1.02
es/transform/baseline/common_reserved_word
60569
ns/iter (± 75
)59259
ns/iter (± 85
)1.02
es/transform/baseline/common_typescript
138060
ns/iter (± 594
)139337
ns/iter (± 4559
)0.99
es/target/es3
165237
ns/iter (± 267
)163986
ns/iter (± 222
)1.01
es/target/es2015
602731
ns/iter (± 690
)599882
ns/iter (± 524
)1.00
es/target/es2016
62481
ns/iter (± 58
)61436
ns/iter (± 78
)1.02
es/target/es2017
59392
ns/iter (± 91
)58367
ns/iter (± 94
)1.02
es/target/es2018
78616
ns/iter (± 108
)77620
ns/iter (± 73
)1.01
es/target/es2020
127669
ns/iter (± 185
)126833
ns/iter (± 186
)1.01
babelify-only
663369
ns/iter (± 1671
)663960
ns/iter (± 1639
)1.00
parse_and_babelify_angular
40991398
ns/iter (± 486754
)43211370
ns/iter (± 709107
)0.95
parse_and_babelify_backbone
5429763
ns/iter (± 38502
)5555275
ns/iter (± 80656
)0.98
parse_and_babelify_jquery
31818745
ns/iter (± 322193
)33055483
ns/iter (± 259462
)0.96
parse_and_babelify_jquery_mobile
55431409
ns/iter (± 613191
)56943155
ns/iter (± 1006733
)0.97
parse_and_babelify_mootools
33140549
ns/iter (± 474894
)34042984
ns/iter (± 341167
)0.97
parse_and_babelify_underscore
4322729
ns/iter (± 16225
)4316397
ns/iter (± 20867
)1.00
parse_and_babelify_yui
33234735
ns/iter (± 515687
)33012750
ns/iter (± 377085
)1.01
html/minify/document/css_spec
42099509
ns/iter (± 299414
)44794219
ns/iter (± 379249
)0.94
html/minify/document/github
17483244
ns/iter (± 51645
)18661268
ns/iter (± 86448
)0.94
html/minify/document/stackoverflow
15613362
ns/iter (± 41464
)16444444
ns/iter (± 58139
)0.95
html/minify/document_fragment/css_spec
40834780
ns/iter (± 487280
)42809241
ns/iter (± 258693
)0.95
html/minify/document_fragment/github
16717574
ns/iter (± 36873
)17926297
ns/iter (± 53200
)0.93
html/minify/document_fragment/stackoverflow
15197345
ns/iter (± 75509
)15924603
ns/iter (± 115531
)0.95
html/document/visitor/compare/clone
339419
ns/iter (± 1715
)343656
ns/iter (± 1633
)0.99
html/document/visitor/compare/visit_mut_span
368551
ns/iter (± 1716
)366902
ns/iter (± 1603
)1.00
html/document/visitor/compare/visit_mut_span_panic
378208
ns/iter (± 1367
)375524
ns/iter (± 1431
)1.01
html/document/visitor/compare/fold_span
406060
ns/iter (± 2403
)406108
ns/iter (± 2063
)1.00
html/document/visitor/compare/fold_span_panic
463548
ns/iter (± 2118
)468194
ns/iter (± 1975
)0.99
html/document_fragment/visitor/compare/clone
339229
ns/iter (± 2177
)338832
ns/iter (± 1697
)1.00
html/document_fragment/visitor/compare/visit_mut_span
364262
ns/iter (± 2855
)368472
ns/iter (± 2270
)0.99
html/document_fragment/visitor/compare/visit_mut_span_panic
373519
ns/iter (± 1878
)371359
ns/iter (± 1903
)1.01
html/document_fragment/visitor/compare/fold_span
405741
ns/iter (± 2331
)403077
ns/iter (± 1626
)1.01
html/document_fragment/visitor/compare/fold_span_panic
459552
ns/iter (± 2159
)465387
ns/iter (± 2025
)0.99
html/lexer/css_2021_spec
15521553
ns/iter (± 8037
)15545983
ns/iter (± 23184
)1.00
html/lexer/github_com_17_05_2022
6031116
ns/iter (± 2440
)6022327
ns/iter (± 1724
)1.00
html/lexer/stackoverflow_com_17_05_2022
5632227
ns/iter (± 1426
)5652816
ns/iter (± 5973
)1.00
html/parser/parser_document/css_2021_spec
25932792
ns/iter (± 220543
)26908398
ns/iter (± 212897
)0.96
html/parser/parser_document/github_com_17_05_2022
8759071
ns/iter (± 4244
)8804809
ns/iter (± 9929
)0.99
html/parser/parser_document/stackoverflow_com_17_05_2022
7710358
ns/iter (± 2331
)7780165
ns/iter (± 6849
)0.99
html/parser/parser_document_fragment/css_2021_spec
25789667
ns/iter (± 153504
)26549607
ns/iter (± 194111
)0.97
html/parser/parser_document_fragment/github_com_17_05_2022
8764547
ns/iter (± 75832
)8815316
ns/iter (± 21201
)0.99
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022
7713648
ns/iter (± 10824
)7735018
ns/iter (± 9047
)1.00
This comment was automatically generated by workflow using github-action-benchmark.