Skip to content
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

Improve __spreadArray perf, and other fixes related to SpreadElement #44527

Merged
merged 4 commits into from
Jun 11, 2021

Conversation

rbuckton
Copy link
Member

This changes __spreadArray to use Array.prototype.concat and avoids explicitly converting a sparse array to a packed array when such a conversion is unnecessary or unexpected. This also fixes an issue where [1, , ...a] would drop the missing element at index 1.

Before this can be merged I need to verify backwards compatibility with __spreadArray for older versions of TS. I suspect I may need to change the if condition to be backwards compatible (where we always packed the result).

Fixes #44287

@rbuckton
Copy link
Member Author

@typescript-bot perf test

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

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

Update: The results are in!

@typescript-bot typescript-bot added the For Milestone Bug PRs that fix a bug with a specific milestone label Jun 10, 2021
@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..44527

Metric master 44527 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 343,935k (± 0.03%) 344,284k (± 0.02%) +349k (+ 0.10%) 344,162k 344,448k
Parse Time 1.79s (± 0.25%) 1.80s (± 0.46%) +0.01s (+ 0.45%) 1.78s 1.81s
Bind Time 0.84s (± 0.69%) 0.84s (± 0.48%) +0.00s (+ 0.24%) 0.83s 0.85s
Check Time 5.18s (± 0.36%) 5.21s (± 0.53%) +0.03s (+ 0.52%) 5.16s 5.28s
Emit Time 5.47s (± 0.58%) 5.47s (± 0.38%) +0.00s (+ 0.00%) 5.42s 5.51s
Total Time 13.28s (± 0.35%) 13.31s (± 0.25%) +0.03s (+ 0.26%) 13.23s 13.39s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,424k (± 0.06%) 200,419k (± 0.07%) -5k (- 0.00%) 199,989k 200,654k
Parse Time 0.78s (± 0.77%) 0.79s (± 0.97%) +0.01s (+ 1.16%) 0.77s 0.80s
Bind Time 0.53s (± 1.44%) 0.52s (± 0.91%) -0.00s (- 0.57%) 0.51s 0.53s
Check Time 7.55s (± 0.60%) 7.58s (± 0.80%) +0.03s (+ 0.45%) 7.48s 7.73s
Emit Time 2.27s (± 0.85%) 2.24s (± 0.63%) -0.03s (- 1.15%) 2.20s 2.27s
Total Time 11.12s (± 0.50%) 11.14s (± 0.51%) +0.02s (+ 0.14%) 11.05s 11.27s
Monaco - node (v10.16.3, x64)
Memory used 340,462k (± 0.02%) 340,496k (± 0.02%) +35k (+ 0.01%) 340,364k 340,622k
Parse Time 1.44s (± 0.79%) 1.45s (± 1.13%) +0.00s (+ 0.28%) 1.40s 1.49s
Bind Time 0.74s (± 0.70%) 0.74s (± 1.00%) +0.00s (+ 0.14%) 0.72s 0.75s
Check Time 5.33s (± 0.62%) 5.34s (± 0.62%) +0.01s (+ 0.23%) 5.27s 5.42s
Emit Time 2.96s (± 1.09%) 2.97s (± 0.81%) +0.01s (+ 0.37%) 2.92s 3.03s
Total Time 10.48s (± 0.34%) 10.50s (± 0.36%) +0.03s (+ 0.27%) 10.43s 10.60s
TFS - node (v10.16.3, x64)
Memory used 304,041k (± 0.02%) 304,107k (± 0.02%) +65k (+ 0.02%) 303,914k 304,242k
Parse Time 1.18s (± 0.47%) 1.18s (± 0.49%) -0.00s (- 0.08%) 1.16s 1.19s
Bind Time 0.70s (± 0.83%) 0.70s (± 0.53%) +0.00s (+ 0.28%) 0.70s 0.71s
Check Time 4.85s (± 0.46%) 4.89s (± 0.35%) +0.05s (+ 0.97%) 4.84s 4.93s
Emit Time 3.04s (± 1.03%) 3.06s (± 0.73%) +0.02s (+ 0.69%) 3.01s 3.09s
Total Time 9.76s (± 0.51%) 9.83s (± 0.36%) +0.07s (+ 0.74%) 9.73s 9.87s
material-ui - node (v10.16.3, x64)
Memory used 471,636k (± 0.02%) 473,915k (± 0.01%) +2,279k (+ 0.48%) 473,779k 474,027k
Parse Time 1.72s (± 0.27%) 1.71s (± 0.28%) -0.01s (- 0.41%) 1.71s 1.73s
Bind Time 0.66s (± 0.87%) 0.66s (± 0.71%) -0.00s (- 0.00%) 0.65s 0.67s
Check Time 14.22s (± 0.59%) 14.90s (± 0.29%) +0.68s (+ 4.78%) 14.80s 14.97s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.60s (± 0.51%) 17.27s (± 0.25%) +0.67s (+ 4.06%) 17.18s 17.35s
Angular - node (v12.1.0, x64)
Memory used 322,171k (± 0.02%) 322,547k (± 0.02%) +376k (+ 0.12%) 322,401k 322,744k
Parse Time 1.77s (± 0.53%) 1.77s (± 0.63%) +0.00s (+ 0.23%) 1.75s 1.80s
Bind Time 0.83s (± 0.97%) 0.82s (± 0.91%) -0.01s (- 0.60%) 0.81s 0.84s
Check Time 5.07s (± 0.41%) 5.10s (± 0.30%) +0.03s (+ 0.51%) 5.07s 5.14s
Emit Time 5.65s (± 0.63%) 5.67s (± 0.56%) +0.02s (+ 0.34%) 5.63s 5.76s
Total Time 13.32s (± 0.38%) 13.36s (± 0.23%) +0.04s (+ 0.30%) 13.32s 13.44s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,842k (± 0.07%) 187,932k (± 0.07%) +90k (+ 0.05%) 187,398k 188,097k
Parse Time 0.77s (± 0.61%) 0.77s (± 0.67%) +0.00s (+ 0.13%) 0.76s 0.78s
Bind Time 0.53s (± 1.13%) 0.53s (± 0.84%) +0.00s (+ 0.38%) 0.52s 0.54s
Check Time 7.00s (± 0.51%) 7.01s (± 0.79%) +0.01s (+ 0.09%) 6.93s 7.16s
Emit Time 2.23s (± 0.58%) 2.26s (± 0.99%) +0.03s (+ 1.43%) 2.21s 2.32s
Total Time 10.52s (± 0.37%) 10.57s (± 0.59%) +0.05s (+ 0.45%) 10.49s 10.78s
Monaco - node (v12.1.0, x64)
Memory used 323,452k (± 0.02%) 323,542k (± 0.01%) +90k (+ 0.03%) 323,421k 323,633k
Parse Time 1.41s (± 0.54%) 1.41s (± 0.67%) +0.00s (+ 0.00%) 1.39s 1.44s
Bind Time 0.72s (± 0.93%) 0.71s (± 0.56%) -0.01s (- 0.84%) 0.70s 0.72s
Check Time 5.20s (± 0.47%) 5.23s (± 0.63%) +0.02s (+ 0.42%) 5.16s 5.31s
Emit Time 2.99s (± 0.43%) 3.00s (± 0.35%) +0.01s (+ 0.20%) 2.97s 3.02s
Total Time 10.33s (± 0.32%) 10.35s (± 0.36%) +0.02s (+ 0.20%) 10.30s 10.47s
TFS - node (v12.1.0, x64)
Memory used 288,599k (± 0.02%) 288,599k (± 0.01%) -1k (- 0.00%) 288,524k 288,656k
Parse Time 1.18s (± 0.69%) 1.18s (± 0.55%) -0.00s (- 0.08%) 1.17s 1.20s
Bind Time 0.70s (± 2.30%) 0.69s (± 0.73%) -0.01s (- 2.00%) 0.68s 0.70s
Check Time 4.78s (± 0.48%) 4.76s (± 0.31%) -0.02s (- 0.36%) 4.72s 4.79s
Emit Time 3.12s (± 0.59%) 3.12s (± 0.56%) -0.00s (- 0.03%) 3.07s 3.14s
Total Time 9.78s (± 0.46%) 9.75s (± 0.27%) -0.03s (- 0.31%) 9.68s 9.80s
material-ui - node (v12.1.0, x64)
Memory used 450,177k (± 0.06%) 452,728k (± 0.02%) +2,551k (+ 0.57%) 452,539k 452,989k
Parse Time 1.71s (± 0.23%) 1.71s (± 0.53%) 0.00s ( 0.00%) 1.69s 1.74s
Bind Time 0.63s (± 0.57%) 0.64s (± 0.77%) +0.00s (+ 0.32%) 0.63s 0.65s
Check Time 12.74s (± 0.53%) 13.41s (± 0.50%) +0.66s (+ 5.21%) 13.29s 13.62s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.09s (± 0.48%) 15.76s (± 0.45%) +0.67s (+ 4.42%) 15.62s 15.98s
Angular - node (v14.15.1, x64)
Memory used 320,917k (± 0.01%) 321,134k (± 0.01%) +216k (+ 0.07%) 321,095k 321,191k
Parse Time 1.78s (± 0.26%) 1.79s (± 0.51%) +0.01s (+ 0.51%) 1.77s 1.81s
Bind Time 0.87s (± 0.57%) 0.87s (± 0.55%) +0.00s (+ 0.12%) 0.86s 0.88s
Check Time 5.08s (± 0.27%) 5.13s (± 0.40%) +0.05s (+ 1.08%) 5.08s 5.18s
Emit Time 5.71s (± 0.58%) 5.69s (± 0.60%) -0.02s (- 0.33%) 5.62s 5.77s
Total Time 13.43s (± 0.32%) 13.47s (± 0.25%) +0.04s (+ 0.33%) 13.39s 13.55s
Compiler-Unions - node (v14.15.1, x64)
Memory used 188,442k (± 0.67%) 188,613k (± 0.62%) +170k (+ 0.09%) 186,608k 189,927k
Parse Time 0.80s (± 0.37%) 0.80s (± 0.45%) +0.00s (+ 0.25%) 0.80s 0.81s
Bind Time 0.55s (± 0.66%) 0.56s (± 0.61%) +0.00s (+ 0.54%) 0.55s 0.56s
Check Time 7.14s (± 0.59%) 7.17s (± 0.58%) +0.03s (+ 0.35%) 7.08s 7.26s
Emit Time 2.26s (± 1.27%) 2.27s (± 1.03%) +0.01s (+ 0.44%) 2.23s 2.35s
Total Time 10.76s (± 0.51%) 10.80s (± 0.45%) +0.04s (+ 0.35%) 10.68s 10.89s
Monaco - node (v14.15.1, x64)
Memory used 322,517k (± 0.01%) 322,513k (± 0.01%) -4k (- 0.00%) 322,447k 322,550k
Parse Time 1.46s (± 0.51%) 1.47s (± 0.72%) +0.01s (+ 0.75%) 1.46s 1.50s
Bind Time 0.74s (± 0.46%) 0.74s (± 0.54%) -0.00s (- 0.27%) 0.73s 0.75s
Check Time 5.17s (± 0.23%) 5.16s (± 0.54%) -0.01s (- 0.27%) 5.10s 5.24s
Emit Time 3.07s (± 0.58%) 3.05s (± 0.39%) -0.02s (- 0.55%) 3.01s 3.07s
Total Time 10.45s (± 0.26%) 10.43s (± 0.30%) -0.03s (- 0.25%) 10.32s 10.49s
TFS - node (v14.15.1, x64)
Memory used 287,631k (± 0.00%) 287,680k (± 0.01%) +49k (+ 0.02%) 287,625k 287,707k
Parse Time 1.24s (± 0.97%) 1.26s (± 1.47%) +0.02s (+ 1.61%) 1.23s 1.32s
Bind Time 0.71s (± 0.87%) 0.71s (± 0.42%) +0.00s (+ 0.14%) 0.71s 0.72s
Check Time 4.80s (± 0.40%) 4.81s (± 0.32%) +0.01s (+ 0.19%) 4.77s 4.85s
Emit Time 3.23s (± 1.03%) 3.19s (± 0.47%) -0.04s (- 1.30%) 3.15s 3.23s
Total Time 9.99s (± 0.43%) 9.97s (± 0.30%) -0.02s (- 0.15%) 9.89s 10.03s
material-ui - node (v14.15.1, x64)
Memory used 448,641k (± 0.00%) 451,046k (± 0.00%) +2,406k (+ 0.54%) 451,014k 451,080k
Parse Time 1.74s (± 0.42%) 1.75s (± 0.62%) +0.01s (+ 0.58%) 1.73s 1.77s
Bind Time 0.69s (± 0.58%) 0.69s (± 0.58%) -0.00s (- 0.00%) 0.68s 0.70s
Check Time 12.93s (± 0.62%) 13.62s (± 0.65%) +0.70s (+ 5.38%) 13.44s 13.82s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.36s (± 0.54%) 16.06s (± 0.52%) +0.70s (+ 4.58%) 15.88s 16.25s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-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 (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
Benchmark Name Iterations
Current 44527 10
Baseline master 10

Developer Information:

Download Benchmark

@rbuckton rbuckton marked this pull request as ready for review June 10, 2021 16:38
@rbuckton
Copy link
Member Author

I don't expect to see much of a perf change since our own compiler doesn't use spread very often. There may be a bump due to adding a new literal value argument to each spread. If so I can investigate adding a reusable and immutable true/false literal.

@typescript-bot perf test
@typescript-bot run dt
@typescript-bot test this
@typescript-bot user test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

Heya @rbuckton, I've started to run the extended test suite on this PR at 40fa251. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

Heya @rbuckton, I've started to run the parallelized community code test suite on this PR at 40fa251. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

Heya @rbuckton, I've started to run the parallelized Definitely Typed test suite on this PR at 40fa251. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

Heya @rbuckton, I've started to run the perf test suite on this PR at 40fa251. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..44527

Metric master 44527 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 343,935k (± 0.03%) 344,307k (± 0.02%) +372k (+ 0.11%) 344,167k 344,490k
Parse Time 1.79s (± 0.25%) 1.80s (± 0.48%) +0.01s (+ 0.56%) 1.78s 1.82s
Bind Time 0.84s (± 0.69%) 0.84s (± 0.73%) +0.00s (+ 0.48%) 0.83s 0.86s
Check Time 5.18s (± 0.36%) 5.19s (± 0.30%) +0.01s (+ 0.21%) 5.15s 5.22s
Emit Time 5.47s (± 0.58%) 5.50s (± 1.00%) +0.03s (+ 0.49%) 5.42s 5.63s
Total Time 13.28s (± 0.35%) 13.33s (± 0.49%) +0.05s (+ 0.38%) 13.24s 13.51s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,424k (± 0.06%) 200,431k (± 0.05%) +7k (+ 0.00%) 200,099k 200,626k
Parse Time 0.78s (± 0.77%) 0.78s (± 1.08%) +0.00s (+ 0.64%) 0.76s 0.80s
Bind Time 0.53s (± 1.44%) 0.52s (± 1.28%) -0.00s (- 0.57%) 0.51s 0.54s
Check Time 7.55s (± 0.60%) 7.51s (± 0.47%) -0.04s (- 0.52%) 7.43s 7.60s
Emit Time 2.27s (± 0.85%) 2.26s (± 1.54%) -0.01s (- 0.62%) 2.19s 2.34s
Total Time 11.12s (± 0.50%) 11.07s (± 0.35%) -0.05s (- 0.47%) 11.00s 11.15s
Monaco - node (v10.16.3, x64)
Memory used 340,462k (± 0.02%) 340,541k (± 0.01%) +79k (+ 0.02%) 340,458k 340,683k
Parse Time 1.44s (± 0.79%) 1.44s (± 0.69%) -0.00s (- 0.14%) 1.42s 1.46s
Bind Time 0.74s (± 0.70%) 0.74s (± 0.99%) -0.00s (- 0.14%) 0.72s 0.75s
Check Time 5.33s (± 0.62%) 5.35s (± 0.30%) +0.02s (+ 0.34%) 5.32s 5.39s
Emit Time 2.96s (± 1.09%) 2.97s (± 0.93%) +0.00s (+ 0.17%) 2.92s 3.06s
Total Time 10.48s (± 0.34%) 10.50s (± 0.23%) +0.02s (+ 0.17%) 10.45s 10.55s
TFS - node (v10.16.3, x64)
Memory used 304,041k (± 0.02%) 304,141k (± 0.02%) +100k (+ 0.03%) 304,016k 304,271k
Parse Time 1.18s (± 0.47%) 1.18s (± 0.69%) +0.01s (+ 0.42%) 1.17s 1.20s
Bind Time 0.70s (± 0.83%) 0.71s (± 0.95%) +0.00s (+ 0.57%) 0.69s 0.72s
Check Time 4.85s (± 0.46%) 4.90s (± 0.40%) +0.06s (+ 1.13%) 4.87s 4.94s
Emit Time 3.04s (± 1.03%) 3.05s (± 0.91%) +0.01s (+ 0.36%) 2.99s 3.10s
Total Time 9.76s (± 0.51%) 9.84s (± 0.47%) +0.08s (+ 0.79%) 9.75s 9.94s
material-ui - node (v10.16.3, x64)
Memory used 471,636k (± 0.02%) 473,948k (± 0.01%) +2,312k (+ 0.49%) 473,815k 474,127k
Parse Time 1.72s (± 0.27%) 1.72s (± 0.47%) -0.00s (- 0.12%) 1.70s 1.73s
Bind Time 0.66s (± 0.87%) 0.66s (± 0.67%) +0.00s (+ 0.30%) 0.65s 0.67s
Check Time 14.22s (± 0.59%) 14.96s (± 0.65%) +0.74s (+ 5.23%) 14.78s 15.15s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.60s (± 0.51%) 17.34s (± 0.58%) +0.75s (+ 4.50%) 17.15s 17.54s
Angular - node (v12.1.0, x64)
Memory used 322,171k (± 0.02%) 322,489k (± 0.03%) +317k (+ 0.10%) 322,231k 322,667k
Parse Time 1.77s (± 0.53%) 1.77s (± 0.56%) -0.00s (- 0.11%) 1.75s 1.79s
Bind Time 0.83s (± 0.97%) 0.83s (± 0.70%) -0.00s (- 0.12%) 0.82s 0.84s
Check Time 5.07s (± 0.41%) 5.10s (± 0.55%) +0.04s (+ 0.71%) 5.05s 5.16s
Emit Time 5.65s (± 0.63%) 5.71s (± 0.44%) +0.05s (+ 0.94%) 5.66s 5.75s
Total Time 13.32s (± 0.38%) 13.41s (± 0.28%) +0.08s (+ 0.64%) 13.32s 13.49s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,842k (± 0.07%) 187,693k (± 0.15%) -149k (- 0.08%) 186,973k 188,060k
Parse Time 0.77s (± 0.61%) 0.77s (± 0.58%) -0.00s (- 0.26%) 0.76s 0.78s
Bind Time 0.53s (± 1.13%) 0.53s (± 0.94%) -0.00s (- 0.00%) 0.52s 0.54s
Check Time 7.00s (± 0.51%) 7.03s (± 0.45%) +0.03s (+ 0.39%) 6.95s 7.11s
Emit Time 2.23s (± 0.58%) 2.25s (± 0.86%) +0.02s (+ 1.08%) 2.22s 2.31s
Total Time 10.52s (± 0.37%) 10.58s (± 0.37%) +0.05s (+ 0.52%) 10.48s 10.66s
Monaco - node (v12.1.0, x64)
Memory used 323,452k (± 0.02%) 323,582k (± 0.02%) +131k (+ 0.04%) 323,392k 323,784k
Parse Time 1.41s (± 0.54%) 1.42s (± 0.87%) +0.00s (+ 0.28%) 1.40s 1.44s
Bind Time 0.72s (± 0.93%) 0.72s (± 0.47%) 0.00s ( 0.00%) 0.71s 0.72s
Check Time 5.20s (± 0.47%) 5.19s (± 0.41%) -0.01s (- 0.19%) 5.16s 5.26s
Emit Time 2.99s (± 0.43%) 3.00s (± 0.94%) +0.01s (+ 0.20%) 2.95s 3.06s
Total Time 10.33s (± 0.32%) 10.33s (± 0.51%) -0.00s (- 0.01%) 10.23s 10.46s
TFS - node (v12.1.0, x64)
Memory used 288,599k (± 0.02%) 288,682k (± 0.01%) +83k (+ 0.03%) 288,584k 288,760k
Parse Time 1.18s (± 0.69%) 1.18s (± 0.74%) -0.00s (- 0.25%) 1.17s 1.21s
Bind Time 0.70s (± 2.30%) 0.69s (± 0.58%) -0.01s (- 1.43%) 0.68s 0.70s
Check Time 4.78s (± 0.48%) 4.78s (± 0.56%) -0.00s (- 0.06%) 4.71s 4.84s
Emit Time 3.12s (± 0.59%) 3.12s (± 0.66%) +0.00s (+ 0.13%) 3.08s 3.17s
Total Time 9.78s (± 0.46%) 9.77s (± 0.41%) -0.01s (- 0.10%) 9.66s 9.88s
material-ui - node (v12.1.0, x64)
Memory used 450,177k (± 0.06%) 452,721k (± 0.02%) +2,544k (+ 0.57%) 452,552k 452,862k
Parse Time 1.71s (± 0.23%) 1.71s (± 0.48%) -0.00s (- 0.06%) 1.70s 1.74s
Bind Time 0.63s (± 0.57%) 0.64s (± 0.91%) +0.00s (+ 0.47%) 0.63s 0.65s
Check Time 12.74s (± 0.53%) 13.43s (± 0.85%) +0.69s (+ 5.42%) 13.23s 13.72s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.09s (± 0.48%) 15.78s (± 0.75%) +0.69s (+ 4.56%) 15.57s 16.09s
Angular - node (v14.15.1, x64)
Memory used 320,917k (± 0.01%) 321,139k (± 0.01%) +222k (+ 0.07%) 321,075k 321,197k
Parse Time 1.78s (± 0.26%) 1.79s (± 0.52%) +0.01s (+ 0.67%) 1.78s 1.81s
Bind Time 0.87s (± 0.57%) 0.88s (± 0.87%) +0.01s (+ 1.04%) 0.86s 0.89s
Check Time 5.08s (± 0.27%) 5.13s (± 0.48%) +0.06s (+ 1.12%) 5.07s 5.18s
Emit Time 5.71s (± 0.58%) 5.68s (± 0.59%) -0.03s (- 0.53%) 5.62s 5.75s
Total Time 13.43s (± 0.32%) 13.48s (± 0.42%) +0.05s (+ 0.39%) 13.38s 13.60s
Compiler-Unions - node (v14.15.1, x64)
Memory used 188,442k (± 0.67%) 189,233k (± 0.51%) +791k (+ 0.42%) 186,595k 189,945k
Parse Time 0.80s (± 0.37%) 0.81s (± 0.95%) +0.00s (+ 0.37%) 0.79s 0.83s
Bind Time 0.55s (± 0.66%) 0.56s (± 0.65%) +0.00s (+ 0.36%) 0.55s 0.56s
Check Time 7.14s (± 0.59%) 7.13s (± 0.45%) -0.01s (- 0.18%) 7.07s 7.23s
Emit Time 2.26s (± 1.27%) 2.25s (± 0.98%) -0.01s (- 0.44%) 2.22s 2.32s
Total Time 10.76s (± 0.51%) 10.74s (± 0.38%) -0.02s (- 0.18%) 10.66s 10.85s
Monaco - node (v14.15.1, x64)
Memory used 322,517k (± 0.01%) 322,502k (± 0.00%) -15k (- 0.00%) 322,479k 322,527k
Parse Time 1.46s (± 0.51%) 1.48s (± 0.89%) +0.01s (+ 1.03%) 1.45s 1.50s
Bind Time 0.74s (± 0.46%) 0.74s (± 1.00%) -0.00s (- 0.00%) 0.73s 0.76s
Check Time 5.17s (± 0.23%) 5.18s (± 0.55%) +0.00s (+ 0.02%) 5.12s 5.24s
Emit Time 3.07s (± 0.58%) 3.07s (± 0.55%) +0.01s (+ 0.23%) 3.04s 3.12s
Total Time 10.45s (± 0.26%) 10.47s (± 0.43%) +0.02s (+ 0.16%) 10.38s 10.56s
TFS - node (v14.15.1, x64)
Memory used 287,631k (± 0.00%) 287,690k (± 0.01%) +59k (+ 0.02%) 287,651k 287,724k
Parse Time 1.24s (± 0.97%) 1.24s (± 0.60%) 0.00s ( 0.00%) 1.23s 1.26s
Bind Time 0.71s (± 0.87%) 0.71s (± 0.69%) +0.00s (+ 0.42%) 0.71s 0.73s
Check Time 4.80s (± 0.40%) 4.81s (± 0.67%) +0.01s (+ 0.27%) 4.75s 4.89s
Emit Time 3.23s (± 1.03%) 3.21s (± 0.69%) -0.03s (- 0.80%) 3.16s 3.26s
Total Time 9.99s (± 0.43%) 9.97s (± 0.44%) -0.01s (- 0.14%) 9.89s 10.06s
material-ui - node (v14.15.1, x64)
Memory used 448,641k (± 0.00%) 451,059k (± 0.01%) +2,418k (+ 0.54%) 451,000k 451,139k
Parse Time 1.74s (± 0.42%) 1.74s (± 0.57%) +0.00s (+ 0.00%) 1.72s 1.76s
Bind Time 0.69s (± 0.58%) 0.69s (± 0.58%) -0.00s (- 0.29%) 0.68s 0.70s
Check Time 12.93s (± 0.62%) 13.55s (± 0.66%) +0.63s (+ 4.84%) 13.42s 13.86s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.36s (± 0.54%) 15.98s (± 0.53%) +0.62s (+ 4.06%) 15.87s 16.28s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-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 (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
Benchmark Name Iterations
Current 44527 10
Baseline master 10

Developer Information:

Download Benchmark

@typescript-bot
Copy link
Collaborator

The user suite test run you requested has finished and failed. I've opened a PR with the baseline diff from master.

@rbuckton
Copy link
Member Author

@typescript-bot perf test

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 10, 2021

Heya @rbuckton, I've started to run the perf test suite on this PR at 9964d8b. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..44527

Metric master 44527 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 343,935k (± 0.03%) 344,333k (± 0.02%) +398k (+ 0.12%) 344,240k 344,459k
Parse Time 1.79s (± 0.25%) 1.79s (± 0.34%) +0.00s (+ 0.17%) 1.78s 1.81s
Bind Time 0.84s (± 0.69%) 0.84s (± 0.80%) 0.00s ( 0.00%) 0.83s 0.85s
Check Time 5.18s (± 0.36%) 5.19s (± 0.57%) +0.01s (+ 0.17%) 5.13s 5.27s
Emit Time 5.47s (± 0.58%) 5.46s (± 0.63%) -0.01s (- 0.15%) 5.39s 5.56s
Total Time 13.28s (± 0.35%) 13.27s (± 0.35%) -0.00s (- 0.02%) 13.21s 13.39s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,424k (± 0.06%) 200,477k (± 0.03%) +53k (+ 0.03%) 200,328k 200,569k
Parse Time 0.78s (± 0.77%) 0.78s (± 1.11%) +0.00s (+ 0.26%) 0.77s 0.81s
Bind Time 0.53s (± 1.44%) 0.53s (± 0.42%) +0.00s (+ 0.57%) 0.52s 0.53s
Check Time 7.55s (± 0.60%) 7.52s (± 0.43%) -0.03s (- 0.37%) 7.45s 7.58s
Emit Time 2.27s (± 0.85%) 2.26s (± 1.81%) -0.01s (- 0.40%) 2.21s 2.42s
Total Time 11.12s (± 0.50%) 11.09s (± 0.47%) -0.03s (- 0.31%) 10.98s 11.24s
Monaco - node (v10.16.3, x64)
Memory used 340,462k (± 0.02%) 340,536k (± 0.03%) +74k (+ 0.02%) 340,363k 340,757k
Parse Time 1.44s (± 0.79%) 1.45s (± 1.08%) +0.01s (+ 0.62%) 1.41s 1.47s
Bind Time 0.74s (± 0.70%) 0.74s (± 0.81%) -0.00s (- 0.41%) 0.72s 0.75s
Check Time 5.33s (± 0.62%) 5.38s (± 0.82%) +0.04s (+ 0.83%) 5.30s 5.49s
Emit Time 2.96s (± 1.09%) 3.00s (± 1.17%) +0.03s (+ 1.11%) 2.96s 3.12s
Total Time 10.48s (± 0.34%) 10.56s (± 0.51%) +0.08s (+ 0.77%) 10.47s 10.70s
TFS - node (v10.16.3, x64)
Memory used 304,041k (± 0.02%) 304,150k (± 0.02%) +108k (+ 0.04%) 304,062k 304,320k
Parse Time 1.18s (± 0.47%) 1.17s (± 0.70%) -0.00s (- 0.42%) 1.16s 1.19s
Bind Time 0.70s (± 0.83%) 0.71s (± 0.71%) +0.00s (+ 0.28%) 0.70s 0.72s
Check Time 4.85s (± 0.46%) 4.88s (± 0.33%) +0.03s (+ 0.60%) 4.84s 4.91s
Emit Time 3.04s (± 1.03%) 3.05s (± 1.31%) +0.01s (+ 0.36%) 2.98s 3.15s
Total Time 9.76s (± 0.51%) 9.80s (± 0.44%) +0.04s (+ 0.38%) 9.70s 9.90s
material-ui - node (v10.16.3, x64)
Memory used 471,636k (± 0.02%) 473,910k (± 0.01%) +2,274k (+ 0.48%) 473,789k 474,038k
Parse Time 1.72s (± 0.27%) 1.72s (± 0.44%) -0.00s (- 0.23%) 1.69s 1.73s
Bind Time 0.66s (± 0.87%) 0.66s (± 0.61%) +0.00s (+ 0.15%) 0.65s 0.67s
Check Time 14.22s (± 0.59%) 14.90s (± 0.20%) +0.69s (+ 4.84%) 14.85s 14.98s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.60s (± 0.51%) 17.28s (± 0.18%) +0.68s (+ 4.12%) 17.22s 17.36s
Angular - node (v12.1.0, x64)
Memory used 322,171k (± 0.02%) 322,416k (± 0.03%) +244k (+ 0.08%) 322,193k 322,573k
Parse Time 1.77s (± 0.53%) 1.77s (± 0.57%) +0.00s (+ 0.23%) 1.76s 1.80s
Bind Time 0.83s (± 0.97%) 0.82s (± 1.26%) -0.01s (- 0.72%) 0.81s 0.86s
Check Time 5.07s (± 0.41%) 5.10s (± 0.50%) +0.04s (+ 0.69%) 5.05s 5.15s
Emit Time 5.65s (± 0.63%) 5.71s (± 0.83%) +0.05s (+ 0.90%) 5.63s 5.81s
Total Time 13.32s (± 0.38%) 13.40s (± 0.45%) +0.08s (+ 0.60%) 13.26s 13.57s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,842k (± 0.07%) 187,763k (± 0.09%) -79k (- 0.04%) 187,359k 188,068k
Parse Time 0.77s (± 0.61%) 0.77s (± 0.58%) -0.00s (- 0.26%) 0.76s 0.78s
Bind Time 0.53s (± 1.13%) 0.53s (± 0.69%) 0.00s ( 0.00%) 0.52s 0.53s
Check Time 7.00s (± 0.51%) 6.98s (± 0.38%) -0.02s (- 0.24%) 6.94s 7.04s
Emit Time 2.23s (± 0.58%) 2.25s (± 0.82%) +0.02s (+ 0.90%) 2.21s 2.29s
Total Time 10.52s (± 0.37%) 10.53s (± 0.36%) +0.00s (+ 0.05%) 10.44s 10.60s
Monaco - node (v12.1.0, x64)
Memory used 323,452k (± 0.02%) 323,540k (± 0.02%) +88k (+ 0.03%) 323,438k 323,712k
Parse Time 1.41s (± 0.54%) 1.42s (± 0.97%) +0.00s (+ 0.07%) 1.39s 1.45s
Bind Time 0.72s (± 0.93%) 0.71s (± 0.69%) -0.00s (- 0.42%) 0.70s 0.72s
Check Time 5.20s (± 0.47%) 5.18s (± 0.39%) -0.02s (- 0.38%) 5.12s 5.22s
Emit Time 2.99s (± 0.43%) 3.00s (± 0.53%) +0.00s (+ 0.17%) 2.96s 3.03s
Total Time 10.33s (± 0.32%) 10.31s (± 0.21%) -0.02s (- 0.19%) 10.27s 10.35s
TFS - node (v12.1.0, x64)
Memory used 288,599k (± 0.02%) 288,682k (± 0.02%) +83k (+ 0.03%) 288,520k 288,806k
Parse Time 1.18s (± 0.69%) 1.18s (± 0.75%) 0.00s ( 0.00%) 1.17s 1.21s
Bind Time 0.70s (± 2.30%) 0.69s (± 0.87%) -0.01s (- 1.86%) 0.68s 0.70s
Check Time 4.78s (± 0.48%) 4.77s (± 0.48%) -0.01s (- 0.23%) 4.72s 4.81s
Emit Time 3.12s (± 0.59%) 3.11s (± 0.56%) -0.01s (- 0.35%) 3.07s 3.15s
Total Time 9.78s (± 0.46%) 9.75s (± 0.26%) -0.04s (- 0.38%) 9.70s 9.80s
material-ui - node (v12.1.0, x64)
Memory used 450,177k (± 0.06%) 452,705k (± 0.01%) +2,529k (+ 0.56%) 452,572k 452,804k
Parse Time 1.71s (± 0.23%) 1.70s (± 0.65%) -0.01s (- 0.41%) 1.68s 1.73s
Bind Time 0.63s (± 0.57%) 0.64s (± 0.87%) +0.00s (+ 0.63%) 0.63s 0.65s
Check Time 12.74s (± 0.53%) 13.38s (± 0.39%) +0.63s (+ 4.98%) 13.24s 13.49s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.09s (± 0.48%) 15.72s (± 0.37%) +0.63s (+ 4.19%) 15.58s 15.86s
Angular - node (v14.15.1, x64)
Memory used 320,917k (± 0.01%) 321,137k (± 0.01%) +220k (+ 0.07%) 321,076k 321,205k
Parse Time 1.78s (± 0.26%) 1.80s (± 0.83%) +0.02s (+ 0.90%) 1.78s 1.85s
Bind Time 0.87s (± 0.57%) 0.87s (± 0.60%) +0.00s (+ 0.35%) 0.86s 0.88s
Check Time 5.08s (± 0.27%) 5.13s (± 0.61%) +0.06s (+ 1.10%) 5.07s 5.19s
Emit Time 5.71s (± 0.58%) 5.69s (± 0.68%) -0.02s (- 0.32%) 5.63s 5.80s
Total Time 13.43s (± 0.32%) 13.49s (± 0.48%) +0.06s (+ 0.42%) 13.36s 13.66s
Compiler-Unions - node (v14.15.1, x64)
Memory used 188,442k (± 0.67%) 189,565k (± 0.38%) +1,122k (+ 0.60%) 186,646k 189,959k
Parse Time 0.80s (± 0.37%) 0.81s (± 0.99%) +0.01s (+ 0.75%) 0.79s 0.82s
Bind Time 0.55s (± 0.66%) 0.56s (± 0.67%) +0.00s (+ 0.18%) 0.55s 0.56s
Check Time 7.14s (± 0.59%) 7.11s (± 0.24%) -0.03s (- 0.45%) 7.08s 7.14s
Emit Time 2.26s (± 1.27%) 2.25s (± 0.39%) -0.02s (- 0.75%) 2.23s 2.27s
Total Time 10.76s (± 0.51%) 10.72s (± 0.23%) -0.04s (- 0.40%) 10.66s 10.77s
Monaco - node (v14.15.1, x64)
Memory used 322,517k (± 0.01%) 322,514k (± 0.01%) -3k (- 0.00%) 322,463k 322,560k
Parse Time 1.46s (± 0.51%) 1.47s (± 0.60%) +0.01s (+ 0.48%) 1.45s 1.49s
Bind Time 0.74s (± 0.46%) 0.74s (± 0.46%) -0.01s (- 0.81%) 0.73s 0.74s
Check Time 5.17s (± 0.23%) 5.18s (± 0.33%) +0.01s (+ 0.17%) 5.14s 5.22s
Emit Time 3.07s (± 0.58%) 3.07s (± 0.73%) -0.00s (- 0.03%) 3.02s 3.12s
Total Time 10.45s (± 0.26%) 10.46s (± 0.27%) +0.01s (+ 0.06%) 10.39s 10.52s
TFS - node (v14.15.1, x64)
Memory used 287,631k (± 0.00%) 287,699k (± 0.01%) +68k (+ 0.02%) 287,653k 287,742k
Parse Time 1.24s (± 0.97%) 1.26s (± 1.83%) +0.02s (+ 1.69%) 1.23s 1.32s
Bind Time 0.71s (± 0.87%) 0.71s (± 0.51%) +0.00s (+ 0.42%) 0.71s 0.72s
Check Time 4.80s (± 0.40%) 4.81s (± 0.58%) +0.01s (+ 0.19%) 4.76s 4.87s
Emit Time 3.23s (± 1.03%) 3.19s (± 0.55%) -0.05s (- 1.45%) 3.14s 3.22s
Total Time 9.99s (± 0.43%) 9.97s (± 0.29%) -0.02s (- 0.20%) 9.91s 10.04s
material-ui - node (v14.15.1, x64)
Memory used 448,641k (± 0.00%) 451,069k (± 0.00%) +2,428k (+ 0.54%) 451,026k 451,116k
Parse Time 1.74s (± 0.42%) 1.74s (± 0.48%) +0.00s (+ 0.17%) 1.73s 1.77s
Bind Time 0.69s (± 0.58%) 0.69s (± 0.94%) -0.00s (- 0.43%) 0.68s 0.71s
Check Time 12.93s (± 0.62%) 13.62s (± 0.48%) +0.69s (+ 5.35%) 13.51s 13.80s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.36s (± 0.54%) 16.05s (± 0.37%) +0.69s (+ 4.52%) 15.96s 16.22s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-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 (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
Benchmark Name Iterations
Current 44527 10
Baseline master 10

Developer Information:

Download Benchmark

@rbuckton
Copy link
Member Author

That result seems fairly reasonable.

@rbuckton
Copy link
Member Author

Running one more set of perf tests. The previous test was against master, which is over a week old since the switch to main. Now that I've updated the benchmark framework to point to main, I should have more accurate results.

@typescript-bot perf test

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 11, 2021

Heya @rbuckton, I've started to run the perf test suite on this PR at 9964d8b. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - main..44527

Metric main 44527 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 344,262k (± 0.02%) 344,298k (± 0.04%) +37k (+ 0.01%) 344,110k 344,742k
Parse Time 1.80s (± 0.46%) 1.79s (± 0.27%) -0.00s (- 0.11%) 1.79s 1.81s
Bind Time 0.84s (± 0.69%) 0.84s (± 0.48%) +0.00s (+ 0.24%) 0.83s 0.85s
Check Time 5.21s (± 0.45%) 5.19s (± 0.48%) -0.02s (- 0.38%) 5.14s 5.26s
Emit Time 5.49s (± 0.96%) 5.47s (± 0.56%) -0.02s (- 0.36%) 5.43s 5.55s
Total Time 13.34s (± 0.56%) 13.30s (± 0.30%) -0.04s (- 0.29%) 13.22s 13.37s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,493k (± 0.03%) 200,444k (± 0.03%) -49k (- 0.02%) 200,312k 200,571k
Parse Time 0.78s (± 1.00%) 0.78s (± 0.83%) -0.00s (- 0.13%) 0.77s 0.79s
Bind Time 0.53s (± 1.42%) 0.52s (± 1.39%) -0.01s (- 0.95%) 0.51s 0.54s
Check Time 7.55s (± 0.56%) 7.51s (± 0.43%) -0.04s (- 0.48%) 7.42s 7.58s
Emit Time 2.24s (± 0.75%) 2.25s (± 1.08%) +0.01s (+ 0.49%) 2.19s 2.30s
Total Time 11.10s (± 0.42%) 11.07s (± 0.33%) -0.03s (- 0.25%) 10.99s 11.19s
Monaco - node (v10.16.3, x64)
Memory used 340,543k (± 0.02%) 340,521k (± 0.01%) -22k (- 0.01%) 340,423k 340,645k
Parse Time 1.45s (± 0.68%) 1.44s (± 0.75%) -0.01s (- 0.90%) 1.42s 1.46s
Bind Time 0.74s (± 0.63%) 0.74s (± 0.83%) +0.00s (+ 0.14%) 0.73s 0.75s
Check Time 5.36s (± 0.63%) 5.35s (± 0.55%) -0.02s (- 0.28%) 5.28s 5.40s
Emit Time 2.98s (± 1.13%) 2.97s (± 0.75%) -0.01s (- 0.47%) 2.92s 3.01s
Total Time 10.54s (± 0.48%) 10.49s (± 0.29%) -0.04s (- 0.40%) 10.44s 10.58s
TFS - node (v10.16.3, x64)
Memory used 304,171k (± 0.02%) 304,092k (± 0.02%) -79k (- 0.03%) 303,917k 304,244k
Parse Time 1.18s (± 0.42%) 1.17s (± 0.57%) -0.00s (- 0.17%) 1.16s 1.19s
Bind Time 0.71s (± 0.73%) 0.71s (± 0.84%) -0.00s (- 0.70%) 0.69s 0.72s
Check Time 4.89s (± 0.47%) 4.88s (± 0.49%) -0.01s (- 0.25%) 4.81s 4.91s
Emit Time 3.07s (± 1.56%) 3.07s (± 1.27%) -0.00s (- 0.00%) 3.01s 3.17s
Total Time 9.84s (± 0.60%) 9.82s (± 0.62%) -0.02s (- 0.15%) 9.70s 9.97s
material-ui - node (v10.16.3, x64)
Memory used 473,969k (± 0.02%) 473,970k (± 0.02%) +1k (+ 0.00%) 473,769k 474,132k
Parse Time 1.73s (± 0.35%) 1.72s (± 0.48%) -0.01s (- 0.46%) 1.70s 1.74s
Bind Time 0.66s (± 0.72%) 0.66s (± 0.71%) -0.00s (- 0.45%) 0.65s 0.67s
Check Time 15.03s (± 0.51%) 14.93s (± 0.40%) -0.09s (- 0.63%) 14.83s 15.07s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 17.42s (± 0.47%) 17.31s (± 0.38%) -0.11s (- 0.60%) 17.20s 17.45s
Angular - node (v12.1.0, x64)
Memory used 322,503k (± 0.03%) 322,533k (± 0.04%) +31k (+ 0.01%) 322,317k 322,819k
Parse Time 1.77s (± 0.50%) 1.77s (± 0.74%) +0.01s (+ 0.28%) 1.75s 1.80s
Bind Time 0.82s (± 0.83%) 0.82s (± 1.03%) -0.00s (- 0.36%) 0.80s 0.84s
Check Time 5.12s (± 0.46%) 5.10s (± 0.33%) -0.03s (- 0.51%) 5.06s 5.14s
Emit Time 5.68s (± 0.86%) 5.66s (± 0.69%) -0.02s (- 0.28%) 5.59s 5.72s
Total Time 13.39s (± 0.35%) 13.35s (± 0.32%) -0.04s (- 0.31%) 13.25s 13.43s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,760k (± 0.10%) 187,910k (± 0.07%) +150k (+ 0.08%) 187,473k 188,174k
Parse Time 0.77s (± 0.72%) 0.76s (± 0.64%) -0.00s (- 0.52%) 0.76s 0.78s
Bind Time 0.53s (± 0.69%) 0.53s (± 0.63%) +0.00s (+ 0.76%) 0.52s 0.54s
Check Time 7.02s (± 0.54%) 7.05s (± 0.69%) +0.04s (+ 0.51%) 6.94s 7.14s
Emit Time 2.24s (± 1.03%) 2.24s (± 1.09%) +0.00s (+ 0.04%) 2.21s 2.33s
Total Time 10.55s (± 0.36%) 10.59s (± 0.62%) +0.04s (+ 0.33%) 10.45s 10.73s
Monaco - node (v12.1.0, x64)
Memory used 323,536k (± 0.02%) 323,595k (± 0.02%) +59k (+ 0.02%) 323,392k 323,773k
Parse Time 1.42s (± 0.59%) 1.41s (± 0.83%) -0.01s (- 0.92%) 1.38s 1.44s
Bind Time 0.71s (± 1.05%) 0.71s (± 0.67%) -0.01s (- 0.84%) 0.70s 0.72s
Check Time 5.21s (± 0.37%) 5.18s (± 0.26%) -0.03s (- 0.61%) 5.16s 5.21s
Emit Time 3.00s (± 0.66%) 3.00s (± 0.53%) -0.00s (- 0.17%) 2.97s 3.04s
Total Time 10.35s (± 0.31%) 10.29s (± 0.29%) -0.06s (- 0.57%) 10.23s 10.37s
TFS - node (v12.1.0, x64)
Memory used 288,651k (± 0.03%) 288,681k (± 0.02%) +30k (+ 0.01%) 288,499k 288,796k
Parse Time 1.19s (± 0.89%) 1.19s (± 0.85%) 0.00s ( 0.00%) 1.17s 1.22s
Bind Time 0.69s (± 1.21%) 0.68s (± 0.73%) -0.00s (- 0.15%) 0.68s 0.70s
Check Time 4.78s (± 0.36%) 4.77s (± 0.50%) -0.00s (- 0.06%) 4.72s 4.82s
Emit Time 3.09s (± 0.85%) 3.11s (± 0.86%) +0.01s (+ 0.39%) 3.06s 3.16s
Total Time 9.75s (± 0.36%) 9.75s (± 0.47%) +0.01s (+ 0.05%) 9.63s 9.83s
material-ui - node (v12.1.0, x64)
Memory used 452,770k (± 0.01%) 452,706k (± 0.01%) -65k (- 0.01%) 452,581k 452,870k
Parse Time 1.71s (± 0.62%) 1.70s (± 0.49%) -0.01s (- 0.58%) 1.69s 1.73s
Bind Time 0.64s (± 1.05%) 0.64s (± 0.78%) -0.00s (- 0.31%) 0.63s 0.65s
Check Time 13.43s (± 0.45%) 13.45s (± 0.79%) +0.02s (+ 0.11%) 13.29s 13.77s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.79s (± 0.45%) 15.79s (± 0.68%) +0.00s (+ 0.03%) 15.63s 16.11s
Angular - node (v14.15.1, x64)
Memory used 321,215k (± 0.01%) 321,141k (± 0.01%) -74k (- 0.02%) 321,088k 321,191k
Parse Time 1.79s (± 0.43%) 1.79s (± 0.53%) -0.00s (- 0.28%) 1.77s 1.81s
Bind Time 0.87s (± 1.00%) 0.87s (± 0.92%) 0.00s ( 0.00%) 0.85s 0.89s
Check Time 5.12s (± 0.44%) 5.12s (± 0.48%) +0.00s (+ 0.08%) 5.07s 5.17s
Emit Time 5.72s (± 0.50%) 5.68s (± 0.49%) -0.04s (- 0.72%) 5.63s 5.74s
Total Time 13.50s (± 0.28%) 13.46s (± 0.40%) -0.04s (- 0.27%) 13.35s 13.61s
Compiler-Unions - node (v14.15.1, x64)
Memory used 188,899k (± 0.57%) 188,915k (± 0.57%) +16k (+ 0.01%) 186,677k 189,930k
Parse Time 0.81s (± 0.92%) 0.81s (± 1.11%) -0.00s (- 0.49%) 0.79s 0.83s
Bind Time 0.56s (± 0.53%) 0.56s (± 0.65%) -0.00s (- 0.36%) 0.55s 0.56s
Check Time 7.16s (± 0.53%) 7.11s (± 0.35%) -0.05s (- 0.71%) 7.07s 7.18s
Emit Time 2.27s (± 1.14%) 2.28s (± 0.99%) +0.00s (+ 0.09%) 2.23s 2.33s
Total Time 10.81s (± 0.47%) 10.75s (± 0.24%) -0.06s (- 0.54%) 10.71s 10.82s
Monaco - node (v14.15.1, x64)
Memory used 322,583k (± 0.01%) 322,534k (± 0.01%) -48k (- 0.01%) 322,489k 322,593k
Parse Time 1.47s (± 0.53%) 1.47s (± 0.44%) -0.00s (- 0.07%) 1.46s 1.49s
Bind Time 0.74s (± 1.10%) 0.74s (± 1.10%) 0.00s ( 0.00%) 0.73s 0.77s
Check Time 5.18s (± 0.53%) 5.17s (± 0.35%) -0.02s (- 0.35%) 5.13s 5.21s
Emit Time 3.07s (± 0.52%) 3.05s (± 0.64%) -0.02s (- 0.72%) 3.00s 3.09s
Total Time 10.47s (± 0.29%) 10.43s (± 0.24%) -0.04s (- 0.39%) 10.36s 10.48s
TFS - node (v14.15.1, x64)
Memory used 287,688k (± 0.01%) 287,690k (± 0.01%) +2k (+ 0.00%) 287,650k 287,714k
Parse Time 1.26s (± 1.74%) 1.25s (± 1.15%) -0.01s (- 0.64%) 1.23s 1.28s
Bind Time 0.71s (± 0.63%) 0.71s (± 0.95%) +0.00s (+ 0.28%) 0.70s 0.73s
Check Time 4.80s (± 0.31%) 4.79s (± 0.66%) -0.02s (- 0.35%) 4.74s 4.89s
Emit Time 3.21s (± 0.73%) 3.19s (± 0.43%) -0.02s (- 0.47%) 3.16s 3.23s
Total Time 9.98s (± 0.27%) 9.94s (± 0.52%) -0.04s (- 0.40%) 9.87s 10.10s
material-ui - node (v14.15.1, x64)
Memory used 451,067k (± 0.01%) 451,055k (± 0.00%) -12k (- 0.00%) 451,010k 451,102k
Parse Time 1.74s (± 0.60%) 1.74s (± 0.55%) +0.00s (+ 0.06%) 1.72s 1.76s
Bind Time 0.69s (± 0.65%) 0.68s (± 0.53%) -0.00s (- 0.58%) 0.68s 0.69s
Check Time 13.61s (± 0.50%) 13.61s (± 0.45%) 0.00s ( 0.00%) 13.44s 13.75s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.04s (± 0.43%) 16.03s (± 0.41%) -0.00s (- 0.02%) 15.87s 16.19s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-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 (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
Benchmark Name Iterations
Current 44527 10
Baseline main 10

Developer Information:

Download Benchmark

@rbuckton
Copy link
Member Author

That's much better. I was concerned that the material-ui tests looked slower, but it was due to diffing against an old baseline.

We need to merge and ship microsoft/tslib#151 before I can merge this, unless I remove the checker restriction for __spreadArray here: https://github.com/microsoft/TypeScript/pull/44527/files#diff-d9ab6589e714c71e657f601cf30ff51dfc607fc98419bf72e04f6b0fa92cc4b8R40729

I'd prefer the restriction remain so that we have a way to indicate to the user they need to update their copy of tslib to support this change.

@rbuckton rbuckton merged commit a0c44b2 into main Jun 11, 2021
@rbuckton rbuckton deleted the fix44287 branch June 11, 2021 23:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Author: Team For Milestone Bug PRs that fix a bug with a specific milestone
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Performance regression in __spreadArray
3 participants