-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf(es/minifier): Make pure function check
O(1)
(#6840)
- Loading branch information
Showing
2 changed files
with
124 additions
and
9 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
58208ef
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
304042
ns/iter (± 7616
)321557
ns/iter (± 10914
)0.95
es/full/minify/libraries/antd
1697341209
ns/iter (± 33496931
)1668519163
ns/iter (± 35434516
)1.02
es/full/minify/libraries/d3
310677891
ns/iter (± 11787282
)315110087
ns/iter (± 6007832
)0.99
es/full/minify/libraries/echarts
1291326383
ns/iter (± 26789554
)1285025451
ns/iter (± 16462052
)1.00
es/full/minify/libraries/jquery
89475103
ns/iter (± 1481618
)92723438
ns/iter (± 975462
)0.96
es/full/minify/libraries/lodash
106076192
ns/iter (± 2230072
)112218570
ns/iter (± 2315637
)0.95
es/full/minify/libraries/moment
53662734
ns/iter (± 764142
)54297318
ns/iter (± 1216346
)0.99
es/full/minify/libraries/react
19470713
ns/iter (± 457939
)19791513
ns/iter (± 446583
)0.98
es/full/minify/libraries/terser
254593056
ns/iter (± 2800410
)259401722
ns/iter (± 6092179
)0.98
es/full/minify/libraries/three
458670387
ns/iter (± 11587398
)473053816
ns/iter (± 5503219
)0.97
es/full/minify/libraries/typescript
3311654190
ns/iter (± 27382124
)3116595241
ns/iter (± 16451125
)1.06
es/full/minify/libraries/victory
736094593
ns/iter (± 24128954
)709407776
ns/iter (± 14721500
)1.04
es/full/minify/libraries/vue
133354184
ns/iter (± 4396160
)135670650
ns/iter (± 1822740
)0.98
es/full/codegen/es3
25980
ns/iter (± 56
)26030
ns/iter (± 64
)1.00
es/full/codegen/es5
25987
ns/iter (± 80
)26136
ns/iter (± 98
)0.99
es/full/codegen/es2015
26036
ns/iter (± 47
)26099
ns/iter (± 87
)1.00
es/full/codegen/es2016
26027
ns/iter (± 69
)26088
ns/iter (± 64
)1.00
es/full/codegen/es2017
26061
ns/iter (± 81
)26092
ns/iter (± 80
)1.00
es/full/codegen/es2018
26043
ns/iter (± 82
)26084
ns/iter (± 60
)1.00
es/full/codegen/es2019
26031
ns/iter (± 65
)26105
ns/iter (± 63
)1.00
es/full/codegen/es2020
26007
ns/iter (± 61
)26122
ns/iter (± 53
)1.00
es/full/all/es3
173935215
ns/iter (± 1912952
)174573122
ns/iter (± 2853339
)1.00
es/full/all/es5
164247729
ns/iter (± 1816402
)169288610
ns/iter (± 2773386
)0.97
es/full/all/es2015
129516962
ns/iter (± 2479380
)128396844
ns/iter (± 5775762
)1.01
es/full/all/es2016
124315461
ns/iter (± 1871006
)125181268
ns/iter (± 951978
)0.99
es/full/all/es2017
124771175
ns/iter (± 2085349
)124278251
ns/iter (± 2328736
)1.00
es/full/all/es2018
120135938
ns/iter (± 1279695
)123849794
ns/iter (± 4153098
)0.97
es/full/all/es2019
120886051
ns/iter (± 1643074
)121851401
ns/iter (± 1372274
)0.99
es/full/all/es2020
116367373
ns/iter (± 1376361
)117408135
ns/iter (± 2544623
)0.99
es/full/parser
541588
ns/iter (± 7687
)529082
ns/iter (± 8607
)1.02
es/full/base/fixer
22266
ns/iter (± 40
)22013
ns/iter (± 24
)1.01
es/full/base/resolver_and_hygiene
79799
ns/iter (± 178
)80033
ns/iter (± 55
)1.00
serialization of ast node
145
ns/iter (± 0
)144
ns/iter (± 0
)1.01
serialization of serde
129
ns/iter (± 0
)129
ns/iter (± 0
)1
css/minify/libraries/bootstrap
27784144
ns/iter (± 70407
)28729582
ns/iter (± 227224
)0.97
css/visitor/compare/clone
2044344
ns/iter (± 21104
)2083437
ns/iter (± 19105
)0.98
css/visitor/compare/visit_mut_span
2255976
ns/iter (± 9404
)2264100
ns/iter (± 7524
)1.00
css/visitor/compare/visit_mut_span_panic
2291174
ns/iter (± 4535
)2317593
ns/iter (± 12102
)0.99
css/visitor/compare/fold_span
3042259
ns/iter (± 22444
)3032203
ns/iter (± 19886
)1.00
css/visitor/compare/fold_span_panic
3169527
ns/iter (± 16426
)3177365
ns/iter (± 22859
)1.00
css/lexer/bootstrap_5_1_3
5175356
ns/iter (± 7874
)5198031
ns/iter (± 3704
)1.00
css/lexer/foundation_6_7_4
4346645
ns/iter (± 1062
)4382799
ns/iter (± 9143
)0.99
css/lexer/tailwind_3_1_1
827865
ns/iter (± 698
)830751
ns/iter (± 149
)1.00
css/parser/bootstrap_5_1_3
21541748
ns/iter (± 37949
)22386179
ns/iter (± 266207
)0.96
css/parser/foundation_6_7_4
17234952
ns/iter (± 19564
)17645858
ns/iter (± 129201
)0.98
css/parser/tailwind_3_1_1
3320197
ns/iter (± 3392
)3336717
ns/iter (± 3241
)1.00
es/codegen/colors
333957
ns/iter (± 185971
)324360
ns/iter (± 180685
)1.03
es/codegen/large
1195267
ns/iter (± 603067
)1039910
ns/iter (± 522806
)1.15
es/codegen/with-parser/colors
48816
ns/iter (± 611
)48751
ns/iter (± 358
)1.00
es/codegen/with-parser/large
536975
ns/iter (± 901
)536171
ns/iter (± 1622
)1.00
es/minify/libraries/antd
1484395715
ns/iter (± 35712197
)1537155157
ns/iter (± 21729625
)0.97
es/minify/libraries/d3
249546710
ns/iter (± 7816901
)297967328
ns/iter (± 5505681
)0.84
es/minify/libraries/echarts
1107616059
ns/iter (± 19150725
)1170429301
ns/iter (± 13381439
)0.95
es/minify/libraries/jquery
77964967
ns/iter (± 970778
)86907875
ns/iter (± 1965917
)0.90
es/minify/libraries/lodash
94835303
ns/iter (± 1346567
)104035439
ns/iter (± 2066640
)0.91
es/minify/libraries/moment
45699776
ns/iter (± 724477
)50237720
ns/iter (± 973120
)0.91
es/minify/libraries/react
17065892
ns/iter (± 207745
)18450758
ns/iter (± 442441
)0.92
es/minify/libraries/terser
218694150
ns/iter (± 5395643
)251125011
ns/iter (± 4498516
)0.87
es/minify/libraries/three
414150589
ns/iter (± 28586603
)434331597
ns/iter (± 5931041
)0.95
es/minify/libraries/typescript
2798500630
ns/iter (± 31168072
)2771728614
ns/iter (± 28615599
)1.01
es/minify/libraries/victory
605112117
ns/iter (± 17534551
)674886263
ns/iter (± 15284072
)0.90
es/minify/libraries/vue
119519259
ns/iter (± 2295847
)129296400
ns/iter (± 4188119
)0.92
es/visitor/compare/clone
2392669
ns/iter (± 28008
)2457597
ns/iter (± 12641
)0.97
es/visitor/compare/visit_mut_span
2768821
ns/iter (± 4272
)2906251
ns/iter (± 49186
)0.95
es/visitor/compare/visit_mut_span_panic
2824949
ns/iter (± 6127
)2924779
ns/iter (± 64171
)0.97
es/visitor/compare/fold_span
3953867
ns/iter (± 20775
)3968741
ns/iter (± 9924
)1.00
es/visitor/compare/fold_span_panic
4104881
ns/iter (± 15902
)4144360
ns/iter (± 15445
)0.99
es/lexer/colors
17211
ns/iter (± 4
)17237
ns/iter (± 23
)1.00
es/lexer/angular
8248286
ns/iter (± 5745
)8249071
ns/iter (± 51443
)1.00
es/lexer/backbone
1078069
ns/iter (± 364
)1078941
ns/iter (± 729
)1.00
es/lexer/jquery
5964112
ns/iter (± 1937
)5978628
ns/iter (± 1575
)1.00
es/lexer/jquery mobile
9210186
ns/iter (± 8822
)9198977
ns/iter (± 3107
)1.00
es/lexer/mootools
4670837
ns/iter (± 5924
)4673872
ns/iter (± 765
)1.00
es/lexer/underscore
898599
ns/iter (± 305
)898943
ns/iter (± 257
)1.00
es/lexer/three
27969090
ns/iter (± 21304
)27949661
ns/iter (± 107321
)1.00
es/lexer/yui
5046272
ns/iter (± 1202
)5067751
ns/iter (± 3057
)1.00
es/parser/colors
31042
ns/iter (± 142
)31023
ns/iter (± 151
)1.00
es/parser/angular
15791870
ns/iter (± 222657
)16035739
ns/iter (± 192956
)0.98
es/parser/backbone
2348126
ns/iter (± 9130
)2353938
ns/iter (± 12834
)1.00
es/parser/jquery
12681005
ns/iter (± 93289
)12926756
ns/iter (± 195716
)0.98
es/parser/jquery mobile
19954730
ns/iter (± 591955
)20950597
ns/iter (± 276039
)0.95
es/parser/mootools
9688800
ns/iter (± 22569
)9837816
ns/iter (± 53637
)0.98
es/parser/underscore
1982540
ns/iter (± 12973
)1997449
ns/iter (± 11492
)0.99
es/parser/three
59920268
ns/iter (± 1382470
)60341528
ns/iter (± 178036
)0.99
es/parser/yui
9640992
ns/iter (± 87145
)9772495
ns/iter (± 68152
)0.99
es/preset-env/usage/builtin_type
140481
ns/iter (± 31474
)140354
ns/iter (± 31416
)1.00
es/preset-env/usage/property
21987
ns/iter (± 62
)20891
ns/iter (± 65
)1.05
es/resolver/typescript
119216796
ns/iter (± 1714393
)110107942
ns/iter (± 5005137
)1.08
es/fixer/typescript
94241182
ns/iter (± 1690940
)85569170
ns/iter (± 1058470
)1.10
es/hygiene/typescript
200271782
ns/iter (± 2469436
)183160010
ns/iter (± 8693575
)1.09
es/resolver_with_hygiene/typescript
338899141
ns/iter (± 5760799
)321915229
ns/iter (± 3708612
)1.05
es/visitor/base-perf/module_clone
75065
ns/iter (± 1405
)76160
ns/iter (± 901
)0.99
es/visitor/base-perf/fold_empty
85216
ns/iter (± 2169
)85610
ns/iter (± 1699
)1.00
es/visitor/base-perf/fold_noop_impl_all
86372
ns/iter (± 1947
)85928
ns/iter (± 1031
)1.01
es/visitor/base-perf/fold_noop_impl_vec
87015
ns/iter (± 1604
)86085
ns/iter (± 1887
)1.01
es/visitor/base-perf/boxing_boxed_clone
55
ns/iter (± 0
)56
ns/iter (± 0
)0.98
es/visitor/base-perf/boxing_unboxed_clone
59
ns/iter (± 0
)59
ns/iter (± 0
)1
es/visitor/base-perf/boxing_boxed
102
ns/iter (± 0
)103
ns/iter (± 0
)0.99
es/visitor/base-perf/boxing_unboxed
104
ns/iter (± 0
)103
ns/iter (± 0
)1.01
es/visitor/base-perf/visit_contains_this
3437
ns/iter (± 92
)3502
ns/iter (± 56
)0.98
es/base/parallel/resolver/typescript
5150120026
ns/iter (± 473726908
)4962802539
ns/iter (± 357436665
)1.04
es/base/parallel/hygiene/typescript
2402141318
ns/iter (± 51083476
)2126863199
ns/iter (± 28291136
)1.13
misc/visitors/time-complexity/time 5
92
ns/iter (± 0
)92
ns/iter (± 0
)1
misc/visitors/time-complexity/time 10
312
ns/iter (± 0
)326
ns/iter (± 14
)0.96
misc/visitors/time-complexity/time 15
600
ns/iter (± 3
)600
ns/iter (± 0
)1
misc/visitors/time-complexity/time 20
1122
ns/iter (± 0
)1143
ns/iter (± 17
)0.98
misc/visitors/time-complexity/time 40
6038
ns/iter (± 72
)5922
ns/iter (± 3
)1.02
misc/visitors/time-complexity/time 60
15192
ns/iter (± 57
)15235
ns/iter (± 55
)1.00
es/full-target/es2016
188058
ns/iter (± 459
)188171
ns/iter (± 759
)1.00
es/full-target/es2017
182711
ns/iter (± 581
)182247
ns/iter (± 538
)1.00
es/full-target/es2018
172673
ns/iter (± 441
)171575
ns/iter (± 225
)1.01
es2020_nullish_coalescing
67248
ns/iter (± 101
)67554
ns/iter (± 224
)1.00
es2020_optional_chaining
104533
ns/iter (± 9584
)95398
ns/iter (± 4304
)1.10
es2022_class_properties
93493
ns/iter (± 202
)93723
ns/iter (± 120
)1.00
es2018_object_rest_spread
71970
ns/iter (± 103
)71942
ns/iter (± 114
)1.00
es2019_optional_catch_binding
61553
ns/iter (± 76
)61951
ns/iter (± 84
)0.99
es2017_async_to_generator
62064
ns/iter (± 130
)62205
ns/iter (± 170
)1.00
es2016_exponentiation
65845
ns/iter (± 203
)65760
ns/iter (± 134
)1.00
es2015_arrow
70574
ns/iter (± 257
)70486
ns/iter (± 143
)1.00
es2015_block_scoped_fn
66711
ns/iter (± 162
)67060
ns/iter (± 159
)0.99
es2015_block_scoping
159559
ns/iter (± 11132
)139734
ns/iter (± 779
)1.14
es2015_classes
117163
ns/iter (± 348
)116979
ns/iter (± 439
)1.00
es2015_computed_props
61695
ns/iter (± 176
)61489
ns/iter (± 84
)1.00
es2015_destructuring
115959
ns/iter (± 285
)115256
ns/iter (± 185
)1.01
es2015_duplicate_keys
63950
ns/iter (± 136
)63637
ns/iter (± 77
)1.00
es2015_parameters
80024
ns/iter (± 222
)79808
ns/iter (± 155
)1.00
es2015_fn_name
67018
ns/iter (± 427
)66948
ns/iter (± 447
)1.00
es2015_for_of
64755
ns/iter (± 80
)64428
ns/iter (± 146
)1.01
es2015_instanceof
63389
ns/iter (± 101
)63128
ns/iter (± 97
)1.00
es2015_shorthand_property
61440
ns/iter (± 137
)61248
ns/iter (± 133
)1.00
es2015_spread
61534
ns/iter (± 92
)61587
ns/iter (± 102
)1.00
es2015_sticky_regex
62943
ns/iter (± 106
)62709
ns/iter (± 82
)1.00
es2015_typeof_symbol
62998
ns/iter (± 104
)62734
ns/iter (± 98
)1.00
es/transform/baseline/base
52354
ns/iter (± 93
)52291
ns/iter (± 129
)1.00
es/transform/baseline/common_reserved_word
63404
ns/iter (± 150
)63148
ns/iter (± 72
)1.00
es/transform/baseline/common_typescript
168974
ns/iter (± 218
)143179
ns/iter (± 209
)1.18
es/target/es3
169908
ns/iter (± 323
)169126
ns/iter (± 242
)1.00
es/target/es2015
631232
ns/iter (± 1493
)629006
ns/iter (± 1225
)1.00
es/target/es2016
65965
ns/iter (± 100
)65785
ns/iter (± 84
)1.00
es/target/es2017
62163
ns/iter (± 101
)62174
ns/iter (± 149
)1.00
es/target/es2018
82517
ns/iter (± 121
)82021
ns/iter (± 154
)1.01
es/target/es2020
132705
ns/iter (± 181
)132047
ns/iter (± 275
)1.00
babelify-only
677891
ns/iter (± 4704
)666628
ns/iter (± 1211
)1.02
parse_and_babelify_angular
45783442
ns/iter (± 1043874
)43472387
ns/iter (± 1072533
)1.05
parse_and_babelify_backbone
5438737
ns/iter (± 93810
)5656513
ns/iter (± 110737
)0.96
parse_and_babelify_jquery
33353744
ns/iter (± 919262
)32723021
ns/iter (± 1202414
)1.02
parse_and_babelify_jquery_mobile
56289671
ns/iter (± 703720
)55234832
ns/iter (± 712782
)1.02
parse_and_babelify_mootools
35505019
ns/iter (± 696914
)33571229
ns/iter (± 719651
)1.06
parse_and_babelify_underscore
4433673
ns/iter (± 79227
)4397942
ns/iter (± 33702
)1.01
parse_and_babelify_yui
33678938
ns/iter (± 524357
)32726714
ns/iter (± 556812
)1.03
html/minify/document/css_spec
42191367
ns/iter (± 665097
)42333651
ns/iter (± 343977
)1.00
html/minify/document/github
17606807
ns/iter (± 47419
)17518404
ns/iter (± 65608
)1.01
html/minify/document/stackoverflow
15756590
ns/iter (± 92278
)15766279
ns/iter (± 44208
)1.00
html/minify/document_fragment/css_spec
40550779
ns/iter (± 252070
)41116131
ns/iter (± 666548
)0.99
html/minify/document_fragment/github
16897434
ns/iter (± 32071
)16846675
ns/iter (± 90585
)1.00
html/minify/document_fragment/stackoverflow
15523951
ns/iter (± 127887
)15333915
ns/iter (± 68027
)1.01
html/document/visitor/compare/clone
337399
ns/iter (± 1954
)345646
ns/iter (± 2559
)0.98
html/document/visitor/compare/visit_mut_span
366446
ns/iter (± 1948
)371653
ns/iter (± 1770
)0.99
html/document/visitor/compare/visit_mut_span_panic
372046
ns/iter (± 1913
)373676
ns/iter (± 4055
)1.00
html/document/visitor/compare/fold_span
401462
ns/iter (± 1549
)410634
ns/iter (± 2673
)0.98
html/document/visitor/compare/fold_span_panic
460486
ns/iter (± 1698
)461612
ns/iter (± 2523
)1.00
html/document_fragment/visitor/compare/clone
338027
ns/iter (± 2419
)342228
ns/iter (± 1787
)0.99
html/document_fragment/visitor/compare/visit_mut_span
365831
ns/iter (± 2084
)367177
ns/iter (± 1493
)1.00
html/document_fragment/visitor/compare/visit_mut_span_panic
376275
ns/iter (± 1837
)374825
ns/iter (± 2161
)1.00
html/document_fragment/visitor/compare/fold_span
406182
ns/iter (± 1303
)404010
ns/iter (± 1646
)1.01
html/document_fragment/visitor/compare/fold_span_panic
461453
ns/iter (± 2194
)460055
ns/iter (± 1664
)1.00
html/lexer/css_2021_spec
15558049
ns/iter (± 12346
)15590448
ns/iter (± 13932
)1.00
html/lexer/github_com_17_05_2022
6027918
ns/iter (± 1963
)6031193
ns/iter (± 6229
)1.00
html/lexer/stackoverflow_com_17_05_2022
5638412
ns/iter (± 2341
)5641766
ns/iter (± 6842
)1.00
html/parser/parser_document/css_2021_spec
26166601
ns/iter (± 394197
)25567485
ns/iter (± 379378
)1.02
html/parser/parser_document/github_com_17_05_2022
8754306
ns/iter (± 6683
)8759125
ns/iter (± 7686
)1.00
html/parser/parser_document/stackoverflow_com_17_05_2022
7704959
ns/iter (± 16564
)7787958
ns/iter (± 4861
)0.99
html/parser/parser_document_fragment/css_2021_spec
25950702
ns/iter (± 333872
)25640157
ns/iter (± 95568
)1.01
html/parser/parser_document_fragment/github_com_17_05_2022
8741806
ns/iter (± 10340
)8770784
ns/iter (± 12983
)1.00
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022
7697667
ns/iter (± 4958
)7775289
ns/iter (± 11231
)0.99
This comment was automatically generated by workflow using github-action-benchmark.