Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf(es/parser): Use
SmartString
as the buffer (#7033)
- Loading branch information
Showing
9 changed files
with
119 additions
and
101 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
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
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
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
f378a14
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
303843
ns/iter (± 18416
)324144
ns/iter (± 9776
)0.94
es/full/minify/libraries/antd
1764232091
ns/iter (± 27390497
)1753448191
ns/iter (± 30423835
)1.01
es/full/minify/libraries/d3
314775965
ns/iter (± 4002921
)306878317
ns/iter (± 5887905
)1.03
es/full/minify/libraries/echarts
1332696653
ns/iter (± 17218868
)1318345287
ns/iter (± 15353570
)1.01
es/full/minify/libraries/jquery
92621327
ns/iter (± 763636
)93074467
ns/iter (± 880867
)1.00
es/full/minify/libraries/lodash
108197810
ns/iter (± 804687
)109816169
ns/iter (± 1558113
)0.99
es/full/minify/libraries/moment
53473242
ns/iter (± 647416
)53725351
ns/iter (± 426390
)1.00
es/full/minify/libraries/react
19256598
ns/iter (± 145216
)19471608
ns/iter (± 138484
)0.99
es/full/minify/libraries/terser
257318732
ns/iter (± 2685766
)251703564
ns/iter (± 2750308
)1.02
es/full/minify/libraries/three
471914083
ns/iter (± 6081703
)468764380
ns/iter (± 5504377
)1.01
es/full/minify/libraries/typescript
3246599885
ns/iter (± 17936991
)3221464497
ns/iter (± 15854911
)1.01
es/full/minify/libraries/victory
718077721
ns/iter (± 11759157
)683993525
ns/iter (± 7711954
)1.05
es/full/minify/libraries/vue
132997588
ns/iter (± 863261
)131892208
ns/iter (± 1507800
)1.01
es/full/codegen/es3
26044
ns/iter (± 52
)26307
ns/iter (± 67
)0.99
es/full/codegen/es5
26070
ns/iter (± 73
)26368
ns/iter (± 50
)0.99
es/full/codegen/es2015
26068
ns/iter (± 215
)26377
ns/iter (± 49
)0.99
es/full/codegen/es2016
26075
ns/iter (± 56
)26343
ns/iter (± 99
)0.99
es/full/codegen/es2017
26063
ns/iter (± 33
)26385
ns/iter (± 65
)0.99
es/full/codegen/es2018
26123
ns/iter (± 54
)26370
ns/iter (± 72
)0.99
es/full/codegen/es2019
26071
ns/iter (± 46
)26390
ns/iter (± 40
)0.99
es/full/codegen/es2020
26039
ns/iter (± 37
)26374
ns/iter (± 62
)0.99
es/full/all/es3
173482625
ns/iter (± 1308274
)175678784
ns/iter (± 3607808
)0.99
es/full/all/es5
161247389
ns/iter (± 3181240
)167973708
ns/iter (± 1730662
)0.96
es/full/all/es2015
128388767
ns/iter (± 990713
)129289995
ns/iter (± 1510251
)0.99
es/full/all/es2016
127705015
ns/iter (± 1445900
)127023921
ns/iter (± 1634811
)1.01
es/full/all/es2017
124992758
ns/iter (± 1893947
)126953744
ns/iter (± 2496108
)0.98
es/full/all/es2018
122495845
ns/iter (± 896330
)122954645
ns/iter (± 1613757
)1.00
es/full/all/es2019
121109126
ns/iter (± 697714
)122579760
ns/iter (± 1828538
)0.99
es/full/all/es2020
116246565
ns/iter (± 1108922
)116968248
ns/iter (± 678976
)0.99
es/full/parser
552172
ns/iter (± 8254
)545242
ns/iter (± 7456
)1.01
es/full/base/fixer
22456
ns/iter (± 62
)22222
ns/iter (± 46
)1.01
es/full/base/resolver_and_hygiene
82623
ns/iter (± 219
)82421
ns/iter (± 191
)1.00
serialization of ast node
128
ns/iter (± 0
)128
ns/iter (± 0
)1
serialization of serde
129
ns/iter (± 0
)129
ns/iter (± 0
)1
css/minify/libraries/bootstrap
28403068
ns/iter (± 121213
)28257066
ns/iter (± 126139
)1.01
css/visitor/compare/clone
2102127
ns/iter (± 13338
)2093087
ns/iter (± 13686
)1.00
css/visitor/compare/visit_mut_span
2267737
ns/iter (± 8470
)2311020
ns/iter (± 9525
)0.98
css/visitor/compare/visit_mut_span_panic
2335583
ns/iter (± 2590
)2353003
ns/iter (± 6704
)0.99
css/visitor/compare/fold_span
3052747
ns/iter (± 19339
)3028088
ns/iter (± 15312
)1.01
css/visitor/compare/fold_span_panic
3233579
ns/iter (± 23709
)3214301
ns/iter (± 19956
)1.01
css/lexer/bootstrap_5_1_3
5267256
ns/iter (± 3589
)5218500
ns/iter (± 6813
)1.01
css/lexer/foundation_6_7_4
4441558
ns/iter (± 3975
)4400990
ns/iter (± 3863
)1.01
css/lexer/tailwind_3_1_1
840041
ns/iter (± 2137
)834249
ns/iter (± 575
)1.01
css/parser/bootstrap_5_1_3
22298967
ns/iter (± 82459
)22001407
ns/iter (± 128182
)1.01
css/parser/foundation_6_7_4
17641741
ns/iter (± 34604
)17600844
ns/iter (± 46197
)1.00
css/parser/tailwind_3_1_1
3344435
ns/iter (± 3020
)3363037
ns/iter (± 2625
)0.99
es/codegen/colors
331636
ns/iter (± 185041
)327687
ns/iter (± 184060
)1.01
es/codegen/large
1148054
ns/iter (± 590846
)1050718
ns/iter (± 531454
)1.09
es/codegen/with-parser/colors
47872
ns/iter (± 75
)47507
ns/iter (± 303
)1.01
es/codegen/with-parser/large
527061
ns/iter (± 1018
)523947
ns/iter (± 1201
)1.01
es/minify/libraries/antd
1504235458
ns/iter (± 28306951
)1509197178
ns/iter (± 10023291
)1.00
es/minify/libraries/d3
269008521
ns/iter (± 4493605
)264864212
ns/iter (± 4086983
)1.02
es/minify/libraries/echarts
1155781734
ns/iter (± 10087104
)1135002751
ns/iter (± 10766689
)1.02
es/minify/libraries/jquery
80462313
ns/iter (± 489886
)80801185
ns/iter (± 437291
)1.00
es/minify/libraries/lodash
97066822
ns/iter (± 734581
)98637023
ns/iter (± 2340144
)0.98
es/minify/libraries/moment
46694398
ns/iter (± 205075
)46903723
ns/iter (± 535471
)1.00
es/minify/libraries/react
17297853
ns/iter (± 113295
)17192973
ns/iter (± 130812
)1.01
es/minify/libraries/terser
218543004
ns/iter (± 3413532
)215839226
ns/iter (± 3892838
)1.01
es/minify/libraries/three
389013717
ns/iter (± 4714394
)382949420
ns/iter (± 5567075
)1.02
es/minify/libraries/typescript
2769676247
ns/iter (± 9295039
)2752025582
ns/iter (± 14625064
)1.01
es/minify/libraries/victory
596245182
ns/iter (± 8200622
)611596803
ns/iter (± 16149657
)0.97
es/minify/libraries/vue
118361906
ns/iter (± 625474
)117904656
ns/iter (± 1967403
)1.00
es/visitor/compare/clone
2391176
ns/iter (± 13756
)2388182
ns/iter (± 8500
)1.00
es/visitor/compare/visit_mut_span
2809922
ns/iter (± 9337
)2773762
ns/iter (± 8336
)1.01
es/visitor/compare/visit_mut_span_panic
2855325
ns/iter (± 15306
)2864878
ns/iter (± 5340
)1.00
es/visitor/compare/fold_span
3950561
ns/iter (± 8852
)3952850
ns/iter (± 5501
)1.00
es/visitor/compare/fold_span_panic
4110768
ns/iter (± 5900
)4108457
ns/iter (± 10694
)1.00
es/lexer/colors
16274
ns/iter (± 15
)16349
ns/iter (± 16
)1.00
es/lexer/angular
7970572
ns/iter (± 8113
)7818819
ns/iter (± 5930
)1.02
es/lexer/backbone
1027814
ns/iter (± 667
)1006727
ns/iter (± 645
)1.02
es/lexer/jquery
5735199
ns/iter (± 4033
)5607288
ns/iter (± 10018
)1.02
es/lexer/jquery mobile
8794149
ns/iter (± 8456
)8614090
ns/iter (± 35484
)1.02
es/lexer/mootools
4494532
ns/iter (± 1832
)4403924
ns/iter (± 4080
)1.02
es/lexer/underscore
858453
ns/iter (± 963
)839519
ns/iter (± 504
)1.02
es/lexer/three
26583048
ns/iter (± 12105
)26165982
ns/iter (± 29737
)1.02
es/lexer/yui
4879256
ns/iter (± 4219
)4816810
ns/iter (± 48439
)1.01
es/parser/colors
30915
ns/iter (± 312
)30348
ns/iter (± 92
)1.02
es/parser/angular
15930202
ns/iter (± 186840
)15736225
ns/iter (± 194016
)1.01
es/parser/backbone
2302046
ns/iter (± 12491
)2281501
ns/iter (± 14334
)1.01
es/parser/jquery
12478536
ns/iter (± 62506
)12325253
ns/iter (± 104894
)1.01
es/parser/jquery mobile
19560018
ns/iter (± 695002
)19321977
ns/iter (± 267972
)1.01
es/parser/mootools
9551131
ns/iter (± 39294
)9421031
ns/iter (± 25467
)1.01
es/parser/underscore
1965886
ns/iter (± 13565
)1938495
ns/iter (± 12718
)1.01
es/parser/three
58608821
ns/iter (± 590864
)58153826
ns/iter (± 509292
)1.01
es/parser/yui
9622035
ns/iter (± 63979
)9500459
ns/iter (± 55477
)1.01
es/preset-env/usage/builtin_type
141449
ns/iter (± 31700
)139900
ns/iter (± 31295
)1.01
es/preset-env/usage/property
21379
ns/iter (± 65
)21175
ns/iter (± 62
)1.01
es/resolver/typescript
121863020
ns/iter (± 2519755
)121659942
ns/iter (± 1997145
)1.00
es/fixer/typescript
97590098
ns/iter (± 6690478
)92907556
ns/iter (± 947452
)1.05
es/hygiene/typescript
204367205
ns/iter (± 2403393
)202887521
ns/iter (± 1348521
)1.01
es/resolver_with_hygiene/typescript
346294090
ns/iter (± 2178514
)340130942
ns/iter (± 2967592
)1.02
es/visitor/base-perf/module_clone
76108
ns/iter (± 1266
)76054
ns/iter (± 1764
)1.00
es/visitor/base-perf/fold_empty
85523
ns/iter (± 1844
)87240
ns/iter (± 1766
)0.98
es/visitor/base-perf/fold_noop_impl_all
85304
ns/iter (± 1811
)85938
ns/iter (± 1967
)0.99
es/visitor/base-perf/fold_noop_impl_vec
85527
ns/iter (± 1576
)86490
ns/iter (± 1928
)0.99
es/visitor/base-perf/boxing_boxed_clone
56
ns/iter (± 0
)56
ns/iter (± 0
)1
es/visitor/base-perf/boxing_unboxed_clone
59
ns/iter (± 0
)59
ns/iter (± 0
)1
es/visitor/base-perf/boxing_boxed
105
ns/iter (± 0
)103
ns/iter (± 0
)1.02
es/visitor/base-perf/boxing_unboxed
103
ns/iter (± 0
)104
ns/iter (± 0
)0.99
es/visitor/base-perf/visit_contains_this
3487
ns/iter (± 90
)3522
ns/iter (± 41
)0.99
es/base/parallel/resolver/typescript
5169668406
ns/iter (± 420994542
)5731797003
ns/iter (± 457929472
)0.90
es/base/parallel/hygiene/typescript
2502856827
ns/iter (± 42251302
)2382571896
ns/iter (± 37157057
)1.05
misc/visitors/time-complexity/time 5
99
ns/iter (± 0
)99
ns/iter (± 0
)1
misc/visitors/time-complexity/time 10
317
ns/iter (± 2
)315
ns/iter (± 0
)1.01
misc/visitors/time-complexity/time 15
667
ns/iter (± 17
)652
ns/iter (± 0
)1.02
misc/visitors/time-complexity/time 20
1212
ns/iter (± 2
)1212
ns/iter (± 2
)1
misc/visitors/time-complexity/time 40
6184
ns/iter (± 2
)6220
ns/iter (± 36
)0.99
misc/visitors/time-complexity/time 60
15557
ns/iter (± 8
)15549
ns/iter (± 14
)1.00
es/full-target/es2016
188747
ns/iter (± 503
)188970
ns/iter (± 448
)1.00
es/full-target/es2017
183569
ns/iter (± 634
)183734
ns/iter (± 288
)1.00
es/full-target/es2018
173074
ns/iter (± 367
)172445
ns/iter (± 457
)1.00
es2020_nullish_coalescing
67197
ns/iter (± 492
)67545
ns/iter (± 118
)0.99
es2020_optional_chaining
95728
ns/iter (± 394
)96760
ns/iter (± 6569
)0.99
es2022_class_properties
94760
ns/iter (± 163
)94659
ns/iter (± 241
)1.00
es2018_object_rest_spread
71855
ns/iter (± 180
)71448
ns/iter (± 116
)1.01
es2019_optional_catch_binding
61854
ns/iter (± 179
)61613
ns/iter (± 77
)1.00
es2017_async_to_generator
62234
ns/iter (± 96
)61966
ns/iter (± 167
)1.00
es2016_exponentiation
65492
ns/iter (± 142
)65393
ns/iter (± 125
)1.00
es2015_arrow
70330
ns/iter (± 330
)70211
ns/iter (± 264
)1.00
es2015_block_scoped_fn
66708
ns/iter (± 105
)66685
ns/iter (± 96
)1.00
es2015_block_scoping
157053
ns/iter (± 7633
)139140
ns/iter (± 4441
)1.13
es2015_classes
117904
ns/iter (± 2807
)117709
ns/iter (± 429
)1.00
es2015_computed_props
61695
ns/iter (± 95
)61399
ns/iter (± 98
)1.00
es2015_destructuring
116360
ns/iter (± 345
)116977
ns/iter (± 606
)0.99
es2015_duplicate_keys
64195
ns/iter (± 106
)63901
ns/iter (± 88
)1.00
es2015_parameters
80828
ns/iter (± 226
)80452
ns/iter (± 160
)1.00
es2015_fn_name
67702
ns/iter (± 661
)66840
ns/iter (± 462
)1.01
es2015_for_of
64719
ns/iter (± 110
)64549
ns/iter (± 143
)1.00
es2015_instanceof
63451
ns/iter (± 155
)63775
ns/iter (± 120
)0.99
es2015_shorthand_property
61719
ns/iter (± 101
)61563
ns/iter (± 84
)1.00
es2015_spread
61695
ns/iter (± 66
)61221
ns/iter (± 142
)1.01
es2015_sticky_regex
62623
ns/iter (± 120
)62428
ns/iter (± 106
)1.00
es2015_typeof_symbol
63054
ns/iter (± 108
)62515
ns/iter (± 92
)1.01
es/transform/baseline/base
52301
ns/iter (± 115
)52054
ns/iter (± 82
)1.00
es/transform/baseline/common_reserved_word
63238
ns/iter (± 94
)63361
ns/iter (± 89
)1.00
es/transform/baseline/common_typescript
168565
ns/iter (± 3649
)142539
ns/iter (± 4868
)1.18
es/target/es3
170158
ns/iter (± 293
)170551
ns/iter (± 272
)1.00
es/target/es2015
631613
ns/iter (± 1696
)631196
ns/iter (± 1126
)1.00
es/target/es2016
65433
ns/iter (± 133
)65441
ns/iter (± 143
)1.00
es/target/es2017
62305
ns/iter (± 79
)62057
ns/iter (± 147
)1.00
es/target/es2018
81939
ns/iter (± 120
)81711
ns/iter (± 87
)1.00
es/target/es2020
133546
ns/iter (± 306
)133539
ns/iter (± 221
)1.00
babelify-only
674026
ns/iter (± 1433
)667265
ns/iter (± 5825
)1.01
parse_and_babelify_angular
48099416
ns/iter (± 861646
)42884910
ns/iter (± 816123
)1.12
parse_and_babelify_backbone
5997224
ns/iter (± 133873
)5593338
ns/iter (± 138569
)1.07
parse_and_babelify_jquery
36892988
ns/iter (± 381096
)33353626
ns/iter (± 549169
)1.11
parse_and_babelify_jquery_mobile
61696476
ns/iter (± 522033
)58137118
ns/iter (± 1043542
)1.06
parse_and_babelify_mootools
37796228
ns/iter (± 301383
)34934273
ns/iter (± 779360
)1.08
parse_and_babelify_underscore
4543917
ns/iter (± 43710
)4456017
ns/iter (± 43554
)1.02
parse_and_babelify_yui
38673307
ns/iter (± 1455956
)34882913
ns/iter (± 539103
)1.11
html/minify/document/css_spec
46268880
ns/iter (± 347432
)44156336
ns/iter (± 744901
)1.05
html/minify/document/github
18545486
ns/iter (± 118246
)17699617
ns/iter (± 75332
)1.05
html/minify/document/stackoverflow
16580010
ns/iter (± 47325
)15719937
ns/iter (± 60100
)1.05
html/minify/document_fragment/css_spec
45027008
ns/iter (± 274597
)41997261
ns/iter (± 638889
)1.07
html/minify/document_fragment/github
17756845
ns/iter (± 75087
)16949185
ns/iter (± 38357
)1.05
html/minify/document_fragment/stackoverflow
15907574
ns/iter (± 213475
)15319330
ns/iter (± 34803
)1.04
html/document/visitor/compare/clone
344233
ns/iter (± 1963
)345432
ns/iter (± 1945
)1.00
html/document/visitor/compare/visit_mut_span
371657
ns/iter (± 2115
)370117
ns/iter (± 1738
)1.00
html/document/visitor/compare/visit_mut_span_panic
382633
ns/iter (± 2526
)378673
ns/iter (± 1776
)1.01
html/document/visitor/compare/fold_span
412676
ns/iter (± 2161
)412865
ns/iter (± 1907
)1.00
html/document/visitor/compare/fold_span_panic
466534
ns/iter (± 2730
)464770
ns/iter (± 2369
)1.00
html/document_fragment/visitor/compare/clone
343548
ns/iter (± 1139
)343476
ns/iter (± 2312
)1.00
html/document_fragment/visitor/compare/visit_mut_span
372635
ns/iter (± 2496
)371832
ns/iter (± 1815
)1.00
html/document_fragment/visitor/compare/visit_mut_span_panic
384614
ns/iter (± 1261
)384446
ns/iter (± 2536
)1.00
html/document_fragment/visitor/compare/fold_span
414305
ns/iter (± 2880
)411022
ns/iter (± 2104
)1.01
html/document_fragment/visitor/compare/fold_span_panic
470060
ns/iter (± 2272
)463658
ns/iter (± 2570
)1.01
html/lexer/css_2021_spec
15732945
ns/iter (± 12636
)15777042
ns/iter (± 24706
)1.00
html/lexer/github_com_17_05_2022
6071326
ns/iter (± 5267
)6094261
ns/iter (± 5457
)1.00
html/lexer/stackoverflow_com_17_05_2022
5679414
ns/iter (± 3370
)5695254
ns/iter (± 3731
)1.00
html/parser/parser_document/css_2021_spec
27976530
ns/iter (± 303349
)26542797
ns/iter (± 335242
)1.05
html/parser/parser_document/github_com_17_05_2022
9034996
ns/iter (± 40557
)8978964
ns/iter (± 25154
)1.01
html/parser/parser_document/stackoverflow_com_17_05_2022
7993371
ns/iter (± 15126
)7809557
ns/iter (± 7899
)1.02
html/parser/parser_document_fragment/css_2021_spec
27131661
ns/iter (± 478849
)27411165
ns/iter (± 523361
)0.99
html/parser/parser_document_fragment/github_com_17_05_2022
8921439
ns/iter (± 18561
)8944515
ns/iter (± 5653
)1.00
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022
7797566
ns/iter (± 18616
)7809208
ns/iter (± 8445
)1.00
This comment was automatically generated by workflow using github-action-benchmark.