Skip to content

Reduce rest parameter if not referenced #39188

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 8 commits into from

Conversation

Kingwl
Copy link
Contributor

@Kingwl Kingwl commented Jun 22, 2020

Fixes part of #19182

@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

@typescript-bot perf test.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 22, 2020

Heya @Kingwl, I've started to run the perf test suite on this PR at 37de252. You can monitor the build here.

Update: The results are in!

@Kingwl Kingwl changed the title Reduce rest parameter reduce if not referenced Reduce rest parameter if not referenced Jun 22, 2020
@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

@typescript-bot pack this.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 22, 2020

Heya @Kingwl, I've started to run the tarball bundle task on this PR at 564ece6. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

@Kingwl
The results of the perf run you requested are in!

Here they are:

Comparison Report - master..39188

Metric master 39188 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 340,407k (± 0.02%) 339,931k (± 0.03%) -476k (- 0.14%) 339,675k 340,205k
Parse Time 1.99s (± 0.73%) 1.99s (± 0.64%) -0.00s (- 0.10%) 1.96s 2.02s
Bind Time 0.80s (± 0.50%) 0.81s (± 0.64%) +0.01s (+ 1.00%) 0.80s 0.82s
Check Time 4.72s (± 0.58%) 4.74s (± 0.57%) +0.02s (+ 0.38%) 4.66s 4.79s
Emit Time 5.19s (± 0.63%) 5.24s (± 0.65%) +0.05s (+ 1.00%) 5.14s 5.30s
Total Time 12.70s (± 0.50%) 12.78s (± 0.42%) +0.08s (+ 0.62%) 12.63s 12.89s
Monaco - node (v10.16.3, x64)
Memory used 338,941k (± 0.02%) 338,949k (± 0.02%) +8k (+ 0.00%) 338,781k 339,085k
Parse Time 1.58s (± 0.74%) 1.57s (± 0.61%) -0.01s (- 0.63%) 1.55s 1.59s
Bind Time 0.70s (± 0.52%) 0.70s (± 0.80%) +0.00s (+ 0.29%) 0.69s 0.71s
Check Time 4.85s (± 0.60%) 4.87s (± 0.64%) +0.02s (+ 0.43%) 4.79s 4.93s
Emit Time 2.75s (± 1.02%) 2.75s (± 0.62%) -0.01s (- 0.18%) 2.70s 2.78s
Total Time 9.87s (± 0.58%) 9.89s (± 0.48%) +0.02s (+ 0.19%) 9.78s 10.00s
TFS - node (v10.16.3, x64)
Memory used 301,875k (± 0.03%) 301,877k (± 0.03%) +2k (+ 0.00%) 301,682k 302,112k
Parse Time 1.21s (± 0.69%) 1.22s (± 0.92%) +0.01s (+ 1.08%) 1.19s 1.24s
Bind Time 0.65s (± 0.72%) 0.65s (± 0.99%) +0.00s (+ 0.31%) 0.63s 0.66s
Check Time 4.35s (± 0.65%) 4.39s (± 0.64%) +0.03s (+ 0.76%) 4.32s 4.43s
Emit Time 2.90s (± 1.16%) 2.89s (± 0.98%) -0.01s (- 0.31%) 2.82s 2.95s
Total Time 9.11s (± 0.50%) 9.15s (± 0.47%) +0.04s (+ 0.43%) 9.03s 9.23s
material-ui - node (v10.16.3, x64)
Memory used 459,573k (± 0.01%) 459,268k (± 0.01%) -306k (- 0.07%) 459,148k 459,406k
Parse Time 2.04s (± 0.38%) 2.05s (± 0.53%) +0.01s (+ 0.64%) 2.03s 2.07s
Bind Time 0.64s (± 1.56%) 0.65s (± 1.80%) +0.01s (+ 1.09%) 0.63s 0.67s
Check Time 12.79s (± 0.74%) 12.92s (± 0.73%) +0.12s (+ 0.95%) 12.74s 13.14s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.48s (± 0.62%) 15.62s (± 0.61%) +0.14s (+ 0.92%) 15.45s 15.85s
Angular - node (v12.1.0, x64)
Memory used 317,719k (± 0.04%) 317,238k (± 0.07%) -482k (- 0.15%) 316,346k 317,434k
Parse Time 1.97s (± 0.66%) 1.96s (± 0.68%) -0.00s (- 0.05%) 1.94s 1.99s
Bind Time 0.78s (± 0.85%) 0.78s (± 0.51%) -0.00s (- 0.13%) 0.77s 0.79s
Check Time 4.58s (± 0.44%) 4.63s (± 0.65%) +0.04s (+ 0.94%) 4.56s 4.72s
Emit Time 5.34s (± 0.57%) 5.40s (± 1.19%) +0.06s (+ 1.18%) 5.28s 5.58s
Total Time 12.66s (± 0.41%) 12.77s (± 0.71%) +0.11s (+ 0.85%) 12.61s 13.06s
Monaco - node (v12.1.0, x64)
Memory used 321,392k (± 0.05%) 321,430k (± 0.03%) +38k (+ 0.01%) 321,305k 321,731k
Parse Time 1.54s (± 0.90%) 1.55s (± 0.94%) +0.01s (+ 0.59%) 1.52s 1.58s
Bind Time 0.67s (± 0.86%) 0.68s (± 0.88%) +0.01s (+ 0.90%) 0.67s 0.69s
Check Time 4.67s (± 0.48%) 4.67s (± 0.60%) +0.00s (+ 0.06%) 4.60s 4.73s
Emit Time 2.81s (± 0.97%) 2.80s (± 0.67%) -0.00s (- 0.18%) 2.76s 2.85s
Total Time 9.68s (± 0.43%) 9.69s (± 0.44%) +0.01s (+ 0.12%) 9.59s 9.78s
TFS - node (v12.1.0, x64)
Memory used 286,354k (± 0.02%) 286,312k (± 0.02%) -42k (- 0.01%) 286,194k 286,480k
Parse Time 1.22s (± 0.67%) 1.23s (± 0.59%) +0.01s (+ 0.41%) 1.21s 1.24s
Bind Time 0.62s (± 0.93%) 0.63s (± 1.23%) +0.01s (+ 1.77%) 0.61s 0.64s
Check Time 4.27s (± 0.65%) 4.28s (± 0.31%) +0.01s (+ 0.19%) 4.26s 4.32s
Emit Time 2.93s (± 0.65%) 2.90s (± 0.90%) -0.03s (- 0.96%) 2.83s 2.97s
Total Time 9.04s (± 0.53%) 9.04s (± 0.39%) -0.00s (- 0.03%) 8.93s 9.09s
material-ui - node (v12.1.0, x64)
Memory used 438,026k (± 0.01%) 437,590k (± 0.05%) -436k (- 0.10%) 436,791k 437,810k
Parse Time 2.02s (± 0.38%) 2.03s (± 0.60%) +0.01s (+ 0.30%) 2.00s 2.06s
Bind Time 0.63s (± 1.37%) 0.63s (± 1.18%) +0.00s (+ 0.16%) 0.62s 0.65s
Check Time 11.54s (± 1.01%) 11.57s (± 0.82%) +0.03s (+ 0.24%) 11.43s 11.87s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 14.20s (± 0.87%) 14.23s (± 0.74%) +0.03s (+ 0.25%) 14.08s 14.56s
Angular - node (v8.9.0, x64)
Memory used 336,814k (± 0.01%) 336,501k (± 0.01%) -313k (- 0.09%) 336,399k 336,596k
Parse Time 2.49s (± 0.44%) 2.50s (± 0.47%) +0.00s (+ 0.20%) 2.48s 2.53s
Bind Time 0.83s (± 1.02%) 0.83s (± 0.00%) -0.00s (- 0.12%) 0.83s 0.83s
Check Time 5.35s (± 0.43%) 5.36s (± 0.71%) +0.02s (+ 0.32%) 5.30s 5.47s
Emit Time 5.88s (± 1.20%) 5.89s (± 0.97%) +0.01s (+ 0.17%) 5.73s 5.99s
Total Time 14.55s (± 0.57%) 14.58s (± 0.61%) +0.03s (+ 0.22%) 14.35s 14.75s
Monaco - node (v8.9.0, x64)
Memory used 340,255k (± 0.01%) 340,233k (± 0.01%) -22k (- 0.01%) 340,171k 340,323k
Parse Time 1.86s (± 0.47%) 1.85s (± 0.36%) -0.01s (- 0.38%) 1.84s 1.87s
Bind Time 0.86s (± 0.42%) 0.87s (± 0.64%) +0.00s (+ 0.46%) 0.86s 0.88s
Check Time 5.37s (± 0.54%) 5.38s (± 0.73%) +0.01s (+ 0.17%) 5.30s 5.50s
Emit Time 3.22s (± 0.55%) 3.19s (± 0.41%) -0.03s (- 0.78%) 3.16s 3.23s
Total Time 11.31s (± 0.35%) 11.29s (± 0.33%) -0.02s (- 0.17%) 11.21s 11.38s
TFS - node (v8.9.0, x64)
Memory used 303,591k (± 0.01%) 303,624k (± 0.02%) +33k (+ 0.01%) 303,492k 303,711k
Parse Time 1.53s (± 0.31%) 1.54s (± 0.60%) +0.00s (+ 0.33%) 1.52s 1.56s
Bind Time 0.65s (± 0.91%) 0.65s (± 1.14%) -0.00s (- 0.15%) 0.64s 0.67s
Check Time 4.94s (± 1.50%) 4.98s (± 1.55%) +0.04s (+ 0.89%) 4.86s 5.19s
Emit Time 3.08s (± 2.88%) 3.10s (± 2.72%) +0.01s (+ 0.39%) 2.92s 3.21s
Total Time 10.21s (± 0.34%) 10.27s (± 0.41%) +0.06s (+ 0.62%) 10.20s 10.36s
material-ui - node (v8.9.0, x64)
Memory used 463,637k (± 0.01%) 463,406k (± 0.01%) -231k (- 0.05%) 463,275k 463,602k
Parse Time 2.37s (± 0.34%) 2.38s (± 0.34%) +0.01s (+ 0.38%) 2.36s 2.40s
Bind Time 0.77s (± 0.62%) 0.77s (± 1.22%) +0.01s (+ 0.78%) 0.75s 0.80s
Check Time 16.94s (± 0.57%) 16.92s (± 1.20%) -0.02s (- 0.14%) 16.47s 17.32s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 20.08s (± 0.49%) 20.08s (± 0.99%) -0.00s (- 0.02%) 19.65s 20.47s
Angular - node (v8.9.0, x86)
Memory used 193,300k (± 0.03%) 193,135k (± 0.02%) -165k (- 0.09%) 193,046k 193,280k
Parse Time 2.43s (± 0.63%) 2.43s (± 1.06%) +0.00s (+ 0.12%) 2.38s 2.49s
Bind Time 0.97s (± 0.54%) 0.98s (± 0.79%) +0.01s (+ 1.03%) 0.97s 1.00s
Check Time 4.79s (± 0.77%) 4.81s (± 0.59%) +0.02s (+ 0.40%) 4.76s 4.88s
Emit Time 5.94s (± 1.46%) 5.95s (± 0.77%) +0.01s (+ 0.13%) 5.85s 6.08s
Total Time 14.14s (± 0.80%) 14.18s (± 0.45%) +0.04s (+ 0.28%) 14.06s 14.31s
Monaco - node (v8.9.0, x86)
Memory used 193,274k (± 0.02%) 193,298k (± 0.02%) +24k (+ 0.01%) 193,209k 193,395k
Parse Time 1.89s (± 0.40%) 1.91s (± 1.02%) +0.01s (+ 0.69%) 1.88s 1.96s
Bind Time 0.68s (± 0.53%) 0.68s (± 0.50%) -0.00s (- 0.15%) 0.68s 0.69s
Check Time 5.45s (± 0.55%) 5.46s (± 0.46%) +0.02s (+ 0.31%) 5.40s 5.51s
Emit Time 2.65s (± 0.73%) 2.66s (± 0.88%) +0.01s (+ 0.38%) 2.63s 2.72s
Total Time 10.68s (± 0.30%) 10.72s (± 0.36%) +0.04s (+ 0.38%) 10.66s 10.79s
TFS - node (v8.9.0, x86)
Memory used 173,554k (± 0.03%) 173,590k (± 0.02%) +36k (+ 0.02%) 173,533k 173,664k
Parse Time 1.57s (± 0.45%) 1.58s (± 0.59%) +0.01s (+ 0.57%) 1.56s 1.60s
Bind Time 0.62s (± 0.93%) 0.62s (± 0.99%) +0.00s (+ 0.16%) 0.61s 0.64s
Check Time 4.62s (± 0.54%) 4.69s (± 0.64%) +0.07s (+ 1.45%) 4.60s 4.77s
Emit Time 2.78s (± 0.61%) 2.80s (± 1.02%) +0.02s (+ 0.54%) 2.71s 2.84s
Total Time 9.60s (± 0.35%) 9.69s (± 0.47%) +0.09s (+ 0.96%) 9.58s 9.80s
material-ui - node (v8.9.0, x86)
Memory used 262,438k (± 0.02%) 262,291k (± 0.02%) -148k (- 0.06%) 262,191k 262,395k
Parse Time 2.43s (± 0.49%) 2.44s (± 0.53%) +0.00s (+ 0.12%) 2.40s 2.46s
Bind Time 0.66s (± 1.42%) 0.67s (± 1.98%) +0.01s (+ 1.97%) 0.65s 0.70s
Check Time 15.42s (± 0.62%) 15.57s (± 0.50%) +0.15s (+ 0.95%) 15.37s 15.75s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.51s (± 0.51%) 18.68s (± 0.43%) +0.16s (+ 0.88%) 18.49s 18.91s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-166-generic
Architecturex64
Available Memory16 GB
Available Memory1 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v8.9.0, x64)
  • node (v8.9.0, x86)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v8.9.0, x64)
  • Angular - node (v8.9.0, x86)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v8.9.0, x64)
  • Monaco - node (v8.9.0, x86)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v8.9.0, x64)
  • TFS - node (v8.9.0, x86)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v8.9.0, x64)
  • material-ui - node (v8.9.0, x86)
Benchmark Name Iterations
Current 39188 10
Baseline master 10

@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

@typescript-bot pack this.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 22, 2020

Heya @Kingwl, I've started to run the tarball bundle task on this PR at 564ece6. You can monitor the build here.

@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

Friendly Ping @rbuckton

I notice that there is some node what do not have original node even it has been transformed.
Is that expected?

You can see here

@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

There's about 170 files. And I have a quick review about 100files.
Basically the problem is the class-related feature.

@Kingwl
Copy link
Contributor Author

Kingwl commented Jun 22, 2020

Should this behind a flag?

@DanielRosenwasser
Copy link
Member

Maybe worth mentioning #498

@typescript-bot typescript-bot added the For Uncommitted Bug PR for untriaged, rejected, closed or missing bug label Jul 23, 2020
@Kingwl
Copy link
Contributor Author

Kingwl commented Jul 23, 2020

I have checked more than 130 files. Seems ok but I'm not pretty sure.

@Kingwl
Copy link
Contributor Author

Kingwl commented Jul 23, 2020

Friendly ping @rbuckton .

@sandersn
Copy link
Member

Unfortunately, we never finished reviewing this PR. It is pretty old now, so I'm going to close it to reduce the number of open PRs.

@sandersn sandersn closed this May 24, 2022
@typescript-bot
Copy link
Collaborator

This PR doesn't have any linked issues. Please open an issue that references this PR. From there we can discuss and prioritise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
For Uncommitted Bug PR for untriaged, rejected, closed or missing bug
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants