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

[DO NOT REVIEW] Perf testing module-ified TypeScript compiler #50765

Closed
wants to merge 21 commits into from

Conversation

jakebailey
Copy link
Member

See #49332 for more info.

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Sep 13, 2022
@typescript-bot
Copy link
Collaborator

Thanks for the PR! It looks like you've changed the TSServer protocol in some way. Please ensure that any changes here don't break consumers of the current TSServer API. For some extra review, we'll ping @sheetalkamat, @amcasey, @mjbvz, @minestarks for you. Feel free to loop in other consumers/maintainers if necessary

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey
Copy link
Member Author

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 363,328k (± 0.02%) 353,090k (± 0.02%) -10,238k (- 2.82%) 352,971k 353,237k
Parse Time 2.10s (± 0.71%) 2.17s (± 0.72%) +0.07s (+ 3.14%) 2.14s 2.21s
Bind Time 0.79s (± 0.59%) 0.71s (± 0.67%) 🟩-0.08s (- 9.75%) 0.71s 0.73s
Check Time 6.20s (± 0.37%) 5.49s (± 0.47%) 🟩-0.71s (-11.50%) 5.44s 5.55s
Emit Time 6.02s (± 0.52%) 5.06s (± 0.81%) 🟩-0.96s (-15.99%) 4.97s 5.12s
Total Time 15.11s (± 0.27%) 13.42s (± 0.44%) 🟩-1.68s (-11.15%) 13.30s 13.54s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,042k (± 0.30%) 195,285k (± 0.45%) 🟩-10,757k (- 5.22%) 193,439k 196,104k
Parse Time 0.84s (± 0.62%) 0.87s (± 0.56%) +0.03s (+ 3.92%) 0.86s 0.88s
Bind Time 0.47s (± 1.10%) 0.45s (± 1.09%) 🟩-0.02s (- 3.61%) 0.44s 0.46s
Check Time 8.54s (± 0.32%) 6.67s (± 0.55%) 🟩-1.87s (-21.92%) 6.59s 6.75s
Emit Time 2.42s (± 0.79%) 1.94s (± 0.85%) 🟩-0.49s (-20.17%) 1.89s 1.97s
Total Time 12.28s (± 0.24%) 9.93s (± 0.37%) 🟩-2.35s (-19.13%) 9.83s 9.98s
Monaco - node (v10.16.3, x64)
Memory used 344,751k (± 0.01%) 333,870k (± 0.02%) 🟩-10,881k (- 3.16%) 333,735k 333,991k
Parse Time 1.61s (± 0.58%) 1.62s (± 0.75%) +0.01s (+ 0.37%) 1.58s 1.63s
Bind Time 0.70s (± 0.83%) 0.64s (± 0.81%) 🟩-0.06s (- 8.03%) 0.63s 0.65s
Check Time 6.22s (± 0.72%) 5.41s (± 0.21%) 🟩-0.82s (-13.14%) 5.38s 5.44s
Emit Time 3.20s (± 0.68%) 2.79s (± 0.94%) 🟩-0.41s (-12.78%) 2.73s 2.83s
Total Time 11.73s (± 0.57%) 10.45s (± 0.38%) 🟩-1.28s (-10.88%) 10.37s 10.54s
TFS - node (v10.16.3, x64)
Memory used 305,994k (± 0.02%) 295,112k (± 0.01%) 🟩-10,882k (- 3.56%) 295,041k 295,203k
Parse Time 1.29s (± 0.81%) 1.32s (± 0.97%) +0.03s (+ 2.17%) 1.29s 1.35s
Bind Time 0.67s (± 0.71%) 0.61s (± 1.73%) 🟩-0.06s (- 8.77%) 0.58s 0.63s
Check Time 5.49s (± 0.57%) 4.95s (± 0.43%) 🟩-0.54s (- 9.84%) 4.90s 4.99s
Emit Time 3.36s (± 1.12%) 2.95s (± 0.87%) 🟩-0.41s (-12.15%) 2.90s 3.00s
Total Time 10.81s (± 0.35%) 9.83s (± 0.36%) 🟩-0.98s (- 9.05%) 9.74s 9.91s
material-ui - node (v10.16.3, x64)
Memory used 459,171k (± 0.01%) 450,222k (± 0.01%) -8,949k (- 1.95%) 450,066k 450,351k
Parse Time 1.82s (± 0.95%) 1.87s (± 0.41%) +0.05s (+ 2.53%) 1.85s 1.88s
Bind Time 0.58s (± 1.56%) 0.56s (± 1.43%) 🟩-0.02s (- 3.96%) 0.53s 0.57s
Check Time 15.65s (± 0.41%) 13.28s (± 0.39%) 🟩-2.37s (-15.15%) 13.14s 13.39s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.05s (± 0.41%) 15.71s (± 0.33%) 🟩-2.35s (-13.01%) 15.56s 15.82s
xstate - node (v10.16.3, x64)
Memory used 584,141k (± 0.01%) 554,164k (± 0.02%) 🟩-29,976k (- 5.13%) 553,937k 554,382k
Parse Time 2.62s (± 0.38%) 2.73s (± 0.43%) +0.11s (+ 4.16%) 2.71s 2.77s
Bind Time 0.92s (± 0.56%) 0.83s (± 0.82%) 🟩-0.09s (- 9.34%) 0.82s 0.85s
Check Time 1.61s (± 0.55%) 1.52s (± 0.90%) 🟩-0.09s (- 5.77%) 1.48s 1.54s
Emit Time 0.07s (± 4.13%) 0.07s (± 0.00%) -0.00s (- 2.78%) 0.07s 0.07s
Total Time 5.22s (± 0.25%) 5.15s (± 0.52%) -0.07s (- 1.36%) 5.09s 5.22s
Angular - node (v12.1.0, x64)
Memory used 340,829k (± 0.02%) 330,730k (± 0.02%) -10,099k (- 2.96%) 330,598k 330,871k
Parse Time 2.07s (± 0.49%) 2.10s (± 0.40%) +0.02s (+ 1.21%) 2.08s 2.12s
Bind Time 0.77s (± 0.62%) 0.69s (± 0.83%) 🟩-0.08s (-10.04%) 0.68s 0.71s
Check Time 5.85s (± 0.47%) 5.37s (± 0.73%) 🟩-0.48s (- 8.16%) 5.32s 5.52s
Emit Time 6.19s (± 0.65%) 5.20s (± 0.94%) 🟩-1.00s (-16.09%) 5.10s 5.29s
Total Time 14.88s (± 0.46%) 13.36s (± 0.53%) 🟩-1.52s (-10.23%) 13.22s 13.55s
Compiler-Unions - node (v12.1.0, x64)
Memory used 193,830k (± 0.12%) 183,799k (± 0.38%) 🟩-10,030k (- 5.17%) 183,269k 186,594k
Parse Time 0.83s (± 0.48%) 0.87s (± 0.95%) +0.04s (+ 4.46%) 0.85s 0.88s
Bind Time 0.47s (± 1.60%) 0.43s (± 0.79%) 🟩-0.04s (- 8.84%) 0.43s 0.44s
Check Time 6.69s (± 0.75%) 6.22s (± 0.71%) 🟩-0.47s (- 7.00%) 6.14s 6.31s
Emit Time 2.45s (± 2.13%) 1.97s (± 1.69%) 🟩-0.48s (-19.46%) 1.93s 2.09s
Total Time 10.44s (± 0.92%) 9.49s (± 0.55%) 🟩-0.95s (- 9.11%) 9.36s 9.60s
Monaco - node (v12.1.0, x64)
Memory used 327,671k (± 0.02%) 317,012k (± 0.02%) 🟩-10,659k (- 3.25%) 316,824k 317,218k
Parse Time 1.59s (± 1.14%) 1.58s (± 0.52%) -0.01s (- 0.50%) 1.56s 1.60s
Bind Time 0.69s (± 0.49%) 0.61s (± 0.78%) 🟩-0.08s (-11.54%) 0.61s 0.63s
Check Time 5.82s (± 0.40%) 5.20s (± 0.43%) 🟩-0.62s (-10.68%) 5.15s 5.25s
Emit Time 3.27s (± 1.40%) 2.75s (± 0.42%) 🟩-0.52s (-15.96%) 2.72s 2.77s
Total Time 11.37s (± 0.68%) 10.14s (± 0.32%) 🟩-1.23s (-10.86%) 10.04s 10.19s
TFS - node (v12.1.0, x64)
Memory used 290,438k (± 0.09%) 279,550k (± 0.02%) 🟩-10,889k (- 3.75%) 279,431k 279,646k
Parse Time 1.29s (± 0.48%) 1.30s (± 1.21%) +0.01s (+ 0.78%) 1.27s 1.33s
Bind Time 0.67s (± 0.88%) 0.56s (± 0.80%) 🟩-0.12s (-17.21%) 0.55s 0.57s
Check Time 5.36s (± 0.36%) 4.76s (± 0.29%) 🟩-0.60s (-11.13%) 4.73s 4.79s
Emit Time 3.45s (± 0.89%) 2.84s (± 0.98%) 🟩-0.61s (-17.68%) 2.76s 2.88s
Total Time 10.77s (± 0.39%) 9.46s (± 0.46%) 🟩-1.32s (-12.21%) 9.35s 9.53s
material-ui - node (v12.1.0, x64)
Memory used 438,468k (± 0.01%) 429,520k (± 0.02%) -8,948k (- 2.04%) 429,329k 429,678k
Parse Time 1.83s (± 0.57%) 1.81s (± 0.69%) -0.03s (- 1.47%) 1.77s 1.83s
Bind Time 0.55s (± 0.73%) 0.51s (± 1.52%) 🟩-0.04s (- 7.26%) 0.50s 0.54s
Check Time 12.79s (± 0.29%) 11.68s (± 0.57%) 🟩-1.12s (- 8.73%) 11.51s 11.85s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.18s (± 0.22%) 13.99s (± 0.50%) 🟩-1.19s (- 7.81%) 13.82s 14.19s
xstate - node (v12.1.0, x64)
Memory used 549,107k (± 0.01%) 522,783k (± 1.38%) 🟩-26,324k (- 4.79%) 519,399k 552,024k
Parse Time 2.53s (± 0.50%) 2.61s (± 0.54%) +0.08s (+ 2.96%) 2.56s 2.64s
Bind Time 0.89s (± 0.54%) 0.83s (± 0.82%) 🟩-0.05s (- 5.86%) 0.82s 0.85s
Check Time 1.48s (± 0.49%) 1.44s (± 0.52%) -0.03s (- 2.30%) 1.42s 1.46s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 4.97s (± 0.28%) 4.96s (± 0.40%) -0.01s (- 0.28%) 4.92s 5.00s
Angular - node (v14.15.1, x64)
Memory used 338,916k (± 0.01%) 328,424k (± 0.01%) 🟩-10,492k (- 3.10%) 328,341k 328,491k
Parse Time 2.06s (± 0.56%) 2.07s (± 0.36%) +0.01s (+ 0.39%) 2.06s 2.09s
Bind Time 0.80s (± 0.84%) 0.70s (± 0.64%) 🟩-0.10s (-12.42%) 0.69s 0.71s
Check Time 5.86s (± 0.51%) 5.40s (± 0.58%) 🟩-0.46s (- 7.82%) 5.29s 5.44s
Emit Time 6.21s (± 0.71%) 5.21s (± 0.63%) 🟩-0.99s (-16.00%) 5.10s 5.27s
Total Time 14.93s (± 0.35%) 13.39s (± 0.50%) 🟩-1.54s (-10.32%) 13.14s 13.48s
Compiler-Unions - node (v14.15.1, x64)
Memory used 191,286k (± 0.91%) 183,327k (± 0.67%) 🟩-7,959k (- 4.16%) 181,721k 185,360k
Parse Time 0.85s (± 1.13%) 0.89s (± 0.50%) +0.04s (+ 4.82%) 0.88s 0.90s
Bind Time 0.48s (± 0.77%) 0.46s (± 0.72%) 🟩-0.03s (- 5.15%) 0.45s 0.47s
Check Time 6.73s (± 0.29%) 6.24s (± 0.54%) 🟩-0.49s (- 7.28%) 6.17s 6.30s
Emit Time 2.38s (± 0.86%) 1.99s (± 0.67%) 🟩-0.39s (-16.34%) 1.96s 2.03s
Total Time 10.45s (± 0.28%) 9.58s (± 0.37%) 🟩-0.87s (- 8.29%) 9.49s 9.66s
Monaco - node (v14.15.1, x64)
Memory used 326,581k (± 0.01%) 315,689k (± 0.01%) 🟩-10,892k (- 3.34%) 315,635k 315,717k
Parse Time 1.59s (± 1.10%) 1.57s (± 0.64%) -0.02s (- 1.39%) 1.55s 1.59s
Bind Time 0.72s (± 0.55%) 0.63s (± 0.63%) 🟩-0.09s (-12.48%) 0.62s 0.64s
Check Time 5.70s (± 0.41%) 5.17s (± 0.79%) 🟩-0.53s (- 9.33%) 5.10s 5.26s
Emit Time 3.31s (± 0.61%) 2.82s (± 0.66%) 🟩-0.49s (-14.91%) 2.78s 2.87s
Total Time 11.32s (± 0.28%) 10.18s (± 0.57%) 🟩-1.14s (-10.08%) 10.08s 10.30s
TFS - node (v14.15.1, x64)
Memory used 289,693k (± 0.00%) 280,395k (± 0.01%) 🟩-9,298k (- 3.21%) 280,373k 280,434k
Parse Time 1.30s (± 0.46%) 1.33s (± 0.95%) +0.03s (+ 2.07%) 1.31s 1.36s
Bind Time 0.79s (± 0.51%) 0.59s (± 0.84%) 🟩-0.21s (-25.92%) 0.58s 0.60s
Check Time 5.37s (± 0.49%) 5.03s (± 0.40%) 🟩-0.33s (- 6.21%) 4.96s 5.07s
Emit Time 3.54s (± 0.43%) 2.98s (± 0.70%) 🟩-0.56s (-15.88%) 2.94s 3.03s
Total Time 11.00s (± 0.32%) 9.93s (± 0.38%) 🟩-1.07s (- 9.76%) 9.82s 9.99s
material-ui - node (v14.15.1, x64)
Memory used 436,528k (± 0.06%) 427,364k (± 0.01%) -9,164k (- 2.10%) 427,304k 427,423k
Parse Time 1.87s (± 0.56%) 1.90s (± 0.95%) +0.03s (+ 1.50%) 1.86s 1.94s
Bind Time 0.58s (± 1.28%) 0.53s (± 0.56%) 🟩-0.05s (- 8.75%) 0.53s 0.54s
Check Time 12.89s (± 0.62%) 12.10s (± 0.73%) 🟩-0.79s (- 6.11%) 11.99s 12.30s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.34s (± 0.54%) 14.53s (± 0.59%) 🟩-0.81s (- 5.25%) 14.42s 14.71s
xstate - node (v14.15.1, x64)
Memory used 546,991k (± 0.00%) 517,184k (± 0.00%) 🟩-29,806k (- 5.45%) 517,141k 517,235k
Parse Time 2.61s (± 0.59%) 2.69s (± 0.29%) +0.08s (+ 2.87%) 2.67s 2.70s
Bind Time 0.97s (± 0.82%) 0.85s (± 0.78%) 🟩-0.12s (-12.55%) 0.84s 0.87s
Check Time 1.52s (± 0.63%) 1.48s (± 0.57%) 🟩-0.05s (- 3.02%) 1.46s 1.50s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.18s (± 0.36%) 5.10s (± 0.16%) -0.09s (- 1.70%) 5.08s 5.12s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

TSServer

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,405ms (± 0.39%) 1,440ms (± 0.28%) +35ms (+ 2.48%) 1,432ms 1,448ms
Req 2 - geterr 4,105ms (± 0.81%) 3,418ms (± 0.53%) 🟩-686ms (-16.72%) 3,361ms 3,462ms
Req 3 - references 228ms (± 0.86%) 206ms (± 0.74%) 🟩-22ms (- 9.82%) 203ms 209ms
Req 4 - navto 173ms (± 1.15%) 166ms (± 0.92%) 🟩-7ms (- 3.93%) 165ms 172ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 96ms (± 3.08%) 65ms (± 1.70%) 🟩-30ms (-31.73%) 63ms 68ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,496ms (± 0.58%) 1,514ms (± 0.81%) +18ms (+ 1.20%) 1,489ms 1,543ms
Req 2 - geterr 2,254ms (± 0.41%) 2,143ms (± 0.46%) 🟩-110ms (- 4.89%) 2,121ms 2,172ms
Req 3 - references 244ms (± 0.79%) 215ms (± 0.89%) 🟩-30ms (-12.15%) 211ms 219ms
Req 4 - navto 185ms (± 0.97%) 180ms (± 1.14%) -5ms (- 2.92%) 175ms 183ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 62ms (± 1.08%) 66ms (± 2.39%) +4ms (+ 6.81%) 60ms 68ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,089ms (± 0.28%) 2,141ms (± 0.76%) +52ms (+ 2.51%) 2,112ms 2,192ms
Req 2 - geterr 794ms (± 0.82%) 761ms (± 0.71%) 🟩-33ms (- 4.09%) 748ms 772ms
Req 3 - references 99ms (± 1.85%) 70ms (± 1.33%) 🟩-29ms (-29.14%) 67ms 71ms
Req 4 - navto 232ms (± 1.19%) 229ms (± 1.10%) -3ms (- 1.46%) 220ms 232ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 280ms (± 1.43%) 281ms (± 1.80%) +1ms (+ 0.43%) 275ms 295ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,405ms (± 0.81%) 1,406ms (± 0.87%) +1ms (+ 0.07%) 1,390ms 1,449ms
Req 2 - geterr 3,392ms (± 0.69%) 3,154ms (± 0.65%) 🟩-238ms (- 7.01%) 3,117ms 3,200ms
Req 3 - references 220ms (± 0.70%) 191ms (± 1.20%) 🟩-29ms (-13.17%) 185ms 196ms
Req 4 - navto 159ms (± 1.09%) 152ms (± 0.77%) 🟩-7ms (- 4.58%) 149ms 155ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 59ms (± 3.07%) 61ms (± 2.21%) +1ms (+ 1.85%) 57ms 63ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,495ms (± 0.62%) 1,463ms (± 0.55%) -32ms (- 2.15%) 1,446ms 1,478ms
Req 2 - geterr 2,163ms (± 0.46%) 2,048ms (± 0.71%) 🟩-115ms (- 5.32%) 2,019ms 2,088ms
Req 3 - references 235ms (± 0.43%) 202ms (± 0.81%) 🟩-33ms (-14.18%) 196ms 205ms
Req 4 - navto 169ms (± 1.08%) 161ms (± 0.69%) 🟩-8ms (- 4.74%) 158ms 163ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 60ms (± 2.91%) 61ms (± 1.12%) +1ms (+ 1.85%) 59ms 62ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,038ms (± 0.64%) 2,085ms (± 0.43%) +47ms (+ 2.28%) 2,067ms 2,106ms
Req 2 - geterr 747ms (± 0.73%) 723ms (± 0.66%) 🟩-25ms (- 3.28%) 714ms 738ms
Req 3 - references 67ms (± 1.12%) 69ms (± 1.45%) +1ms (+ 1.93%) 67ms 71ms
Req 4 - navto 222ms (± 1.48%) 216ms (± 0.81%) -6ms (- 2.88%) 212ms 221ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 276ms (± 1.18%) 268ms (± 0.82%) -8ms (- 2.79%) 266ms 276ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,446ms (± 0.38%) 1,446ms (± 0.41%) +0ms (+ 0.03%) 1,438ms 1,463ms
Req 2 - geterr 3,514ms (± 0.89%) 3,289ms (± 0.43%) 🟩-225ms (- 6.41%) 3,258ms 3,321ms
Req 3 - references 230ms (± 0.51%) 200ms (± 0.91%) 🟩-30ms (-12.91%) 196ms 204ms
Req 4 - navto 169ms (± 0.68%) 158ms (± 0.65%) 🟩-11ms (- 6.45%) 156ms 160ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 57ms (± 6.11%) 66ms (± 8.34%) +9ms (+14.86%) 57ms 74ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,516ms (± 0.63%) 1,515ms (± 0.58%) -1ms (- 0.09%) 1,495ms 1,543ms
Req 2 - geterr 2,298ms (± 0.49%) 2,170ms (± 0.40%) 🟩-129ms (- 5.60%) 2,155ms 2,189ms
Req 3 - references 242ms (± 0.59%) 208ms (± 0.58%) 🟩-34ms (-13.85%) 206ms 212ms
Req 4 - navto 178ms (± 0.50%) 171ms (± 1.51%) 🟩-7ms (- 3.66%) 167ms 177ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 0.90%) 57ms (± 0.63%) +3ms (+ 5.13%) 57ms 58ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,139ms (± 0.56%) 2,142ms (± 0.42%) +4ms (+ 0.17%) 2,121ms 2,158ms
Req 2 - geterr 766ms (± 0.40%) 742ms (± 0.41%) 🟩-23ms (- 3.03%) 735ms 750ms
Req 3 - references 68ms (± 1.73%) 67ms (± 0.44%) -1ms (- 1.03%) 67ms 68ms
Req 4 - navto 227ms (± 0.73%) 222ms (± 0.54%) -5ms (- 2.16%) 219ms 225ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 277ms (± 0.68%) 280ms (± 0.32%) +3ms (+ 1.23%) 278ms 282ms
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

That's very good, but I even forgot to disable let and const... So maybe it'll be even faster?

@jakebailey
Copy link
Member Author

jakebailey commented Sep 14, 2022

No, unfortunately esbuild doesn't support lowering let/const. I only though it did because I saw var at the top of the file.

But, it's still a lot faster, even without removing let/const (for inner scopes, top levels become var), which is awesome.

Maybe if I run it on TS's output files, rather than its inputs? (Though, I'd prefer to emit ESNext at that point or something, as to not double-downlevel and add too many helpers)

@jakebailey
Copy link
Member Author

jakebailey commented Sep 14, 2022

@typescript-bot perf test this

This tests downleveling to node10 syntax + no object spread (as it's faster to use esbuild's helper).

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 363,328k (± 0.02%) 353,071k (± 0.01%) -10,257k (- 2.82%) 353,000k 353,184k
Parse Time 2.10s (± 0.71%) 2.14s (± 0.42%) +0.04s (+ 1.95%) 2.12s 2.16s
Bind Time 0.79s (± 0.59%) 0.71s (± 0.63%) 🟩-0.08s (-10.38%) 0.70s 0.72s
Check Time 6.20s (± 0.37%) 5.48s (± 0.42%) 🟩-0.72s (-11.65%) 5.43s 5.54s
Emit Time 6.02s (± 0.52%) 5.05s (± 0.68%) 🟩-0.97s (-16.12%) 5.00s 5.15s
Total Time 15.11s (± 0.27%) 13.38s (± 0.39%) 🟩-1.73s (-11.45%) 13.28s 13.49s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,042k (± 0.30%) 196,020k (± 0.03%) 🟩-10,022k (- 4.86%) 195,880k 196,118k
Parse Time 0.84s (± 0.62%) 0.88s (± 0.42%) +0.04s (+ 4.16%) 0.87s 0.88s
Bind Time 0.47s (± 1.10%) 0.45s (± 0.80%) 🟩-0.02s (- 3.61%) 0.45s 0.46s
Check Time 8.54s (± 0.32%) 6.67s (± 0.64%) 🟩-1.88s (-21.96%) 6.57s 6.77s
Emit Time 2.42s (± 0.79%) 1.95s (± 0.84%) 🟩-0.48s (-19.76%) 1.92s 1.98s
Total Time 12.28s (± 0.24%) 9.94s (± 0.48%) 🟩-2.34s (-19.05%) 9.81s 10.02s
Monaco - node (v10.16.3, x64)
Memory used 344,751k (± 0.01%) 333,943k (± 0.02%) 🟩-10,808k (- 3.13%) 333,786k 334,095k
Parse Time 1.61s (± 0.58%) 1.60s (± 0.86%) -0.01s (- 0.62%) 1.58s 1.63s
Bind Time 0.70s (± 0.83%) 0.64s (± 0.90%) 🟩-0.06s (- 8.18%) 0.63s 0.65s
Check Time 6.22s (± 0.72%) 5.42s (± 0.43%) 🟩-0.81s (-12.97%) 5.36s 5.46s
Emit Time 3.20s (± 0.68%) 2.80s (± 1.09%) 🟩-0.40s (-12.40%) 2.73s 2.85s
Total Time 11.73s (± 0.57%) 10.46s (± 0.48%) 🟩-1.27s (-10.83%) 10.34s 10.56s
TFS - node (v10.16.3, x64)
Memory used 305,994k (± 0.02%) 295,155k (± 0.01%) 🟩-10,839k (- 3.54%) 295,083k 295,248k
Parse Time 1.29s (± 0.81%) 1.30s (± 0.88%) +0.01s (+ 0.93%) 1.28s 1.33s
Bind Time 0.67s (± 0.71%) 0.61s (± 1.22%) 🟩-0.06s (- 9.36%) 0.59s 0.62s
Check Time 5.49s (± 0.57%) 5.12s (± 0.33%) 🟩-0.38s (- 6.83%) 5.07s 5.15s
Emit Time 3.36s (± 1.12%) 2.93s (± 1.03%) 🟩-0.42s (-12.60%) 2.87s 3.01s
Total Time 10.81s (± 0.35%) 9.96s (± 0.24%) 🟩-0.85s (- 7.84%) 9.92s 10.01s
material-ui - node (v10.16.3, x64)
Memory used 459,171k (± 0.01%) 450,216k (± 0.01%) -8,954k (- 1.95%) 450,123k 450,314k
Parse Time 1.82s (± 0.95%) 1.85s (± 0.73%) +0.03s (+ 1.70%) 1.82s 1.89s
Bind Time 0.58s (± 1.56%) 0.54s (± 1.85%) 🟩-0.04s (- 6.37%) 0.52s 0.56s
Check Time 15.65s (± 0.41%) 13.18s (± 0.38%) 🟩-2.48s (-15.82%) 13.05s 13.30s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.05s (± 0.41%) 15.57s (± 0.31%) 🟩-2.48s (-13.74%) 15.45s 15.70s
xstate - node (v10.16.3, x64)
Memory used 584,141k (± 0.01%) 554,126k (± 0.02%) 🟩-30,015k (- 5.14%) 553,994k 554,462k
Parse Time 2.62s (± 0.38%) 2.71s (± 0.42%) +0.09s (+ 3.36%) 2.68s 2.73s
Bind Time 0.92s (± 0.56%) 0.83s (± 0.99%) 🟩-0.09s (- 9.34%) 0.82s 0.85s
Check Time 1.61s (± 0.55%) 1.52s (± 0.70%) 🟩-0.10s (- 6.01%) 1.50s 1.55s
Emit Time 0.07s (± 4.13%) 0.07s (± 0.00%) -0.00s (- 2.78%) 0.07s 0.07s
Total Time 5.22s (± 0.25%) 5.13s (± 0.42%) -0.10s (- 1.82%) 5.08s 5.18s
Angular - node (v12.1.0, x64)
Memory used 340,829k (± 0.02%) 330,721k (± 0.02%) -10,108k (- 2.97%) 330,599k 330,885k
Parse Time 2.07s (± 0.49%) 2.08s (± 0.57%) +0.01s (+ 0.39%) 2.06s 2.11s
Bind Time 0.77s (± 0.62%) 0.68s (± 1.24%) 🟩-0.09s (-11.21%) 0.66s 0.71s
Check Time 5.85s (± 0.47%) 5.34s (± 0.60%) 🟩-0.51s (- 8.71%) 5.28s 5.43s
Emit Time 6.19s (± 0.65%) 5.19s (± 0.81%) 🟩-1.00s (-16.22%) 5.10s 5.29s
Total Time 14.88s (± 0.46%) 13.29s (± 0.53%) 🟩-1.59s (-10.69%) 13.17s 13.49s
Compiler-Unions - node (v12.1.0, x64)
Memory used 193,830k (± 0.12%) 182,777k (± 0.50%) 🟩-11,053k (- 5.70%) 180,780k 183,828k
Parse Time 0.83s (± 0.48%) 0.85s (± 0.85%) +0.02s (+ 2.77%) 0.84s 0.87s
Bind Time 0.47s (± 1.60%) 0.43s (± 0.85%) 🟩-0.05s (-10.32%) 0.42s 0.43s
Check Time 6.69s (± 0.75%) 6.16s (± 0.59%) 🟩-0.53s (- 7.93%) 6.09s 6.26s
Emit Time 2.45s (± 2.13%) 1.96s (± 0.66%) 🟩-0.48s (-19.75%) 1.94s 1.99s
Total Time 10.44s (± 0.92%) 9.40s (± 0.47%) 🟩-1.04s (- 9.96%) 9.32s 9.49s
Monaco - node (v12.1.0, x64)
Memory used 327,671k (± 0.02%) 317,069k (± 0.01%) 🟩-10,602k (- 3.24%) 316,947k 317,145k
Parse Time 1.59s (± 1.14%) 1.57s (± 0.79%) -0.02s (- 1.38%) 1.54s 1.59s
Bind Time 0.69s (± 0.49%) 0.61s (± 0.78%) 🟩-0.09s (-12.41%) 0.60s 0.62s
Check Time 5.82s (± 0.40%) 5.21s (± 0.45%) 🟩-0.60s (-10.39%) 5.16s 5.27s
Emit Time 3.27s (± 1.40%) 2.73s (± 0.89%) 🟩-0.54s (-16.39%) 2.70s 2.82s
Total Time 11.37s (± 0.68%) 10.12s (± 0.42%) 🟩-1.25s (-10.99%) 10.05s 10.21s
TFS - node (v12.1.0, x64)
Memory used 290,438k (± 0.09%) 279,890k (± 0.01%) 🟩-10,548k (- 3.63%) 279,834k 279,939k
Parse Time 1.29s (± 0.48%) 1.30s (± 0.90%) +0.01s (+ 0.93%) 1.27s 1.32s
Bind Time 0.67s (± 0.88%) 0.56s (± 0.84%) 🟩-0.11s (-16.91%) 0.55s 0.57s
Check Time 5.36s (± 0.36%) 5.04s (± 0.32%) 🟩-0.32s (- 5.92%) 5.01s 5.08s
Emit Time 3.45s (± 0.89%) 2.84s (± 1.07%) 🟩-0.61s (-17.68%) 2.78s 2.92s
Total Time 10.77s (± 0.39%) 9.74s (± 0.34%) 🟩-1.03s (- 9.56%) 9.64s 9.79s
material-ui - node (v12.1.0, x64)
Memory used 438,468k (± 0.01%) 429,591k (± 0.01%) -8,878k (- 2.02%) 429,455k 429,727k
Parse Time 1.83s (± 0.57%) 1.80s (± 0.48%) -0.03s (- 1.91%) 1.78s 1.82s
Bind Time 0.55s (± 0.73%) 0.51s (± 1.19%) 🟩-0.05s (- 8.35%) 0.49s 0.52s
Check Time 12.79s (± 0.29%) 11.69s (± 0.61%) 🟩-1.11s (- 8.65%) 11.51s 11.89s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.18s (± 0.22%) 13.99s (± 0.54%) 🟩-1.19s (- 7.81%) 13.81s 14.20s
xstate - node (v12.1.0, x64)
Memory used 549,107k (± 0.01%) 519,574k (± 0.01%) 🟩-29,533k (- 5.38%) 519,481k 519,702k
Parse Time 2.53s (± 0.50%) 2.60s (± 0.47%) +0.06s (+ 2.53%) 2.57s 2.62s
Bind Time 0.89s (± 0.54%) 0.83s (± 0.60%) 🟩-0.06s (- 6.88%) 0.82s 0.84s
Check Time 1.48s (± 0.49%) 1.44s (± 0.52%) -0.04s (- 2.57%) 1.43s 1.46s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 4.97s (± 0.28%) 4.93s (± 0.25%) -0.05s (- 0.92%) 4.90s 4.95s
Angular - node (v14.15.1, x64)
Memory used 338,916k (± 0.01%) 328,469k (± 0.01%) 🟩-10,447k (- 3.08%) 328,419k 328,509k
Parse Time 2.06s (± 0.56%) 2.06s (± 0.34%) -0.01s (- 0.29%) 2.04s 2.07s
Bind Time 0.80s (± 0.84%) 0.70s (± 0.32%) 🟩-0.10s (-12.05%) 0.70s 0.71s
Check Time 5.86s (± 0.51%) 5.34s (± 0.38%) 🟩-0.51s (- 8.79%) 5.29s 5.38s
Emit Time 6.21s (± 0.71%) 5.19s (± 0.88%) 🟩-1.02s (-16.40%) 5.10s 5.29s
Total Time 14.93s (± 0.35%) 13.30s (± 0.36%) 🟩-1.63s (-10.93%) 13.22s 13.45s
Compiler-Unions - node (v14.15.1, x64)
Memory used 191,286k (± 0.91%) 182,976k (± 0.60%) 🟩-8,310k (- 4.34%) 181,725k 185,458k
Parse Time 0.85s (± 1.13%) 0.88s (± 0.73%) +0.03s (+ 3.64%) 0.87s 0.90s
Bind Time 0.48s (± 0.77%) 0.46s (± 1.04%) 🟩-0.03s (- 5.77%) 0.45s 0.47s
Check Time 6.73s (± 0.29%) 6.21s (± 0.66%) 🟩-0.52s (- 7.71%) 6.13s 6.31s
Emit Time 2.38s (± 0.86%) 1.99s (± 0.94%) 🟩-0.39s (-16.29%) 1.95s 2.04s
Total Time 10.45s (± 0.28%) 9.54s (± 0.51%) 🟩-0.91s (- 8.67%) 9.45s 9.65s
Monaco - node (v14.15.1, x64)
Memory used 326,581k (± 0.01%) 315,691k (± 0.01%) 🟩-10,890k (- 3.33%) 315,616k 315,773k
Parse Time 1.59s (± 1.10%) 1.56s (± 0.45%) -0.03s (- 1.83%) 1.55s 1.58s
Bind Time 0.72s (± 0.55%) 0.63s (± 0.98%) 🟩-0.09s (-12.76%) 0.62s 0.64s
Check Time 5.70s (± 0.41%) 5.12s (± 0.33%) 🟩-0.58s (-10.18%) 5.08s 5.15s
Emit Time 3.31s (± 0.61%) 2.79s (± 0.46%) 🟩-0.52s (-15.75%) 2.75s 2.82s
Total Time 11.32s (± 0.28%) 10.10s (± 0.32%) 🟩-1.22s (-10.81%) 10.04s 10.16s
TFS - node (v14.15.1, x64)
Memory used 289,693k (± 0.00%) 280,802k (± 0.00%) 🟩-8,891k (- 3.07%) 280,781k 280,825k
Parse Time 1.30s (± 0.46%) 1.34s (± 1.22%) +0.03s (+ 2.45%) 1.31s 1.38s
Bind Time 0.79s (± 0.51%) 0.59s (± 1.10%) 🟩-0.20s (-25.66%) 0.58s 0.60s
Check Time 5.37s (± 0.49%) 5.04s (± 0.55%) 🟩-0.33s (- 6.10%) 4.97s 5.10s
Emit Time 3.54s (± 0.43%) 2.95s (± 0.52%) 🟩-0.58s (-16.53%) 2.93s 2.99s
Total Time 11.00s (± 0.32%) 9.92s (± 0.43%) 🟩-1.08s (- 9.81%) 9.85s 10.02s
material-ui - node (v14.15.1, x64)
Memory used 436,528k (± 0.06%) 427,365k (± 0.01%) -9,163k (- 2.10%) 427,321k 427,408k
Parse Time 1.87s (± 0.56%) 1.87s (± 0.58%) 0.00s ( 0.00%) 1.85s 1.90s
Bind Time 0.58s (± 1.28%) 0.53s (± 1.09%) 🟩-0.05s (- 9.09%) 0.52s 0.54s
Check Time 12.89s (± 0.62%) 12.02s (± 0.56%) 🟩-0.87s (- 6.75%) 11.90s 12.21s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.34s (± 0.54%) 14.42s (± 0.49%) 🟩-0.92s (- 5.98%) 14.30s 14.64s
xstate - node (v14.15.1, x64)
Memory used 546,991k (± 0.00%) 517,195k (± 0.00%) 🟩-29,796k (- 5.45%) 517,145k 517,237k
Parse Time 2.61s (± 0.59%) 2.69s (± 0.50%) +0.07s (+ 2.72%) 2.66s 2.71s
Bind Time 0.97s (± 0.82%) 0.84s (± 0.77%) 🟩-0.13s (-13.37%) 0.83s 0.86s
Check Time 1.52s (± 0.63%) 1.46s (± 0.15%) 🟩-0.06s (- 4.20%) 1.46s 1.47s
Emit Time 0.07s (± 0.00%) 0.07s (± 3.14%) +0.00s (+ 1.43%) 0.07s 0.08s
Total Time 5.18s (± 0.36%) 5.06s (± 0.29%) -0.12s (- 2.30%) 5.04s 5.10s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

TSServer

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,405ms (± 0.39%) 1,432ms (± 0.30%) +27ms (+ 1.92%) 1,423ms 1,443ms
Req 2 - geterr 4,105ms (± 0.81%) 3,390ms (± 0.59%) 🟩-714ms (-17.40%) 3,355ms 3,452ms
Req 3 - references 228ms (± 0.86%) 210ms (± 0.83%) 🟩-18ms (- 8.02%) 206ms 213ms
Req 4 - navto 173ms (± 1.15%) 166ms (± 1.16%) 🟩-7ms (- 4.27%) 163ms 171ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 96ms (± 3.08%) 69ms (± 5.90%) 🟩-27ms (-27.97%) 60ms 77ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,496ms (± 0.58%) 1,506ms (± 0.52%) +10ms (+ 0.68%) 1,495ms 1,534ms
Req 2 - geterr 2,254ms (± 0.41%) 2,136ms (± 0.43%) 🟩-118ms (- 5.24%) 2,120ms 2,157ms
Req 3 - references 244ms (± 0.79%) 221ms (± 0.96%) 🟩-24ms (- 9.70%) 217ms 227ms
Req 4 - navto 185ms (± 0.97%) 178ms (± 0.99%) 🟩-7ms (- 4.00%) 174ms 181ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 62ms (± 1.08%) 70ms (± 5.35%) +8ms (+12.97%) 63ms 79ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,089ms (± 0.28%) 2,134ms (± 0.73%) +45ms (+ 2.17%) 2,100ms 2,167ms
Req 2 - geterr 794ms (± 0.82%) 763ms (± 0.82%) 🟩-31ms (- 3.93%) 748ms 774ms
Req 3 - references 99ms (± 1.85%) 70ms (± 1.65%) 🟩-28ms (-28.53%) 69ms 74ms
Req 4 - navto 232ms (± 1.19%) 229ms (± 0.63%) -3ms (- 1.42%) 225ms 233ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 280ms (± 1.43%) 288ms (± 0.64%) +8ms (+ 2.93%) 285ms 293ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,405ms (± 0.81%) 1,391ms (± 0.62%) -13ms (- 0.94%) 1,379ms 1,418ms
Req 2 - geterr 3,392ms (± 0.69%) 3,126ms (± 0.57%) 🟩-266ms (- 7.83%) 3,083ms 3,167ms
Req 3 - references 220ms (± 0.70%) 194ms (± 1.23%) 🟩-26ms (-11.80%) 188ms 200ms
Req 4 - navto 159ms (± 1.09%) 152ms (± 1.41%) 🟩-8ms (- 4.71%) 146ms 156ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 59ms (± 3.07%) 61ms (± 2.20%) +2ms (+ 2.86%) 59ms 65ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,495ms (± 0.62%) 1,453ms (± 0.63%) -42ms (- 2.78%) 1,437ms 1,470ms
Req 2 - geterr 2,163ms (± 0.46%) 2,049ms (± 0.53%) 🟩-113ms (- 5.23%) 2,028ms 2,076ms
Req 3 - references 235ms (± 0.43%) 206ms (± 0.31%) 🟩-29ms (-12.39%) 204ms 207ms
Req 4 - navto 169ms (± 1.08%) 160ms (± 0.67%) 🟩-9ms (- 5.45%) 157ms 161ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 60ms (± 2.91%) 60ms (± 0.79%) +1ms (+ 1.34%) 59ms 61ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,038ms (± 0.64%) 2,075ms (± 0.43%) +36ms (+ 1.79%) 2,050ms 2,097ms
Req 2 - geterr 747ms (± 0.73%) 719ms (± 0.51%) 🟩-28ms (- 3.78%) 713ms 730ms
Req 3 - references 67ms (± 1.12%) 71ms (± 0.73%) +4ms (+ 5.19%) 70ms 72ms
Req 4 - navto 222ms (± 1.48%) 216ms (± 0.44%) -6ms (- 2.74%) 214ms 218ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 276ms (± 1.18%) 281ms (± 1.02%) +5ms (+ 1.92%) 275ms 288ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,446ms (± 0.38%) 1,442ms (± 0.50%) -3ms (- 0.21%) 1,427ms 1,463ms
Req 2 - geterr 3,514ms (± 0.89%) 3,267ms (± 0.51%) 🟩-248ms (- 7.05%) 3,228ms 3,305ms
Req 3 - references 230ms (± 0.51%) 200ms (± 1.00%) 🟩-30ms (-13.04%) 198ms 205ms
Req 4 - navto 169ms (± 0.68%) 159ms (± 0.85%) 🟩-10ms (- 5.98%) 156ms 162ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 57ms (± 6.11%) 64ms (± 7.68%) +7ms (+12.06%) 56ms 73ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,516ms (± 0.63%) 1,510ms (± 0.21%) -6ms (- 0.42%) 1,504ms 1,517ms
Req 2 - geterr 2,298ms (± 0.49%) 2,157ms (± 0.43%) 🟩-141ms (- 6.14%) 2,139ms 2,184ms
Req 3 - references 242ms (± 0.59%) 211ms (± 0.44%) 🟩-31ms (-12.86%) 209ms 213ms
Req 4 - navto 178ms (± 0.50%) 173ms (± 0.47%) -4ms (- 2.48%) 171ms 175ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 0.90%) 56ms (± 0.72%) +1ms (+ 2.38%) 55ms 57ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,139ms (± 0.56%) 2,144ms (± 0.66%) +5ms (+ 0.24%) 2,126ms 2,191ms
Req 2 - geterr 766ms (± 0.40%) 743ms (± 0.38%) -23ms (- 2.97%) 738ms 749ms
Req 3 - references 68ms (± 1.73%) 68ms (± 0.44%) +0ms (+ 0.44%) 68ms 69ms
Req 4 - navto 227ms (± 0.73%) 221ms (± 0.36%) -6ms (- 2.68%) 219ms 223ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 277ms (± 0.68%) 287ms (± 0.59%) +10ms (+ 3.69%) 284ms 291ms
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

jakebailey commented Sep 14, 2022

@typescript-bot perf test this

One last time to see if we get any boost from downleveling let/const via tsc. I'm guessing the loss of scope lifting will make this one very bad.

After, I'll test the perf of plain modules, no bundling, since I now know the minimum build required for the perf benchmarks.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 363,328k (± 0.02%) 353,930k (± 0.02%) -9,398k (- 2.59%) 353,799k 354,102k
Parse Time 2.10s (± 0.71%) 2.44s (± 0.51%) +0.34s (+16.38%) 2.41s 2.47s
Bind Time 0.79s (± 0.59%) 1.08s (± 0.56%) 🔻+0.29s (+36.08%) 1.06s 1.09s
Check Time 6.20s (± 0.37%) 7.36s (± 0.54%) +1.17s (+18.79%) 7.29s 7.45s
Emit Time 6.02s (± 0.52%) 8.70s (± 0.51%) 🔻+2.67s (+44.39%) 8.57s 8.78s
Total Time 15.11s (± 0.27%) 19.58s (± 0.38%) +4.47s (+29.62%) 19.37s 19.69s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,042k (± 0.30%) 196,687k (± 0.02%) 🟩-9,355k (- 4.54%) 196,525k 196,764k
Parse Time 0.84s (± 0.62%) 0.98s (± 1.14%) +0.14s (+16.05%) 0.96s 1.01s
Bind Time 0.47s (± 1.10%) 0.62s (± 1.69%) 🔻+0.15s (+32.27%) 0.59s 0.64s
Check Time 8.54s (± 0.32%) 9.80s (± 1.37%) +1.26s (+14.76%) 9.28s 9.95s
Emit Time 2.42s (± 0.79%) 3.41s (± 0.92%) 🔻+0.99s (+40.72%) 3.35s 3.47s
Total Time 12.28s (± 0.24%) 14.81s (± 0.83%) +2.53s (+20.64%) 14.37s 14.96s
Monaco - node (v10.16.3, x64)
Memory used 344,751k (± 0.01%) 335,254k (± 0.01%) -9,497k (- 2.75%) 335,178k 335,394k
Parse Time 1.61s (± 0.58%) 1.92s (± 0.62%) +0.31s (+19.38%) 1.89s 1.94s
Bind Time 0.70s (± 0.83%) 1.00s (± 0.60%) 🔻+0.30s (+42.90%) 0.98s 1.01s
Check Time 6.22s (± 0.72%) 7.73s (± 0.34%) +1.51s (+24.24%) 7.68s 7.80s
Emit Time 3.20s (± 0.68%) 4.61s (± 0.64%) 🔻+1.41s (+44.14%) 4.53s 4.68s
Total Time 11.73s (± 0.57%) 15.27s (± 0.33%) 🔻+3.53s (+30.11%) 15.18s 15.38s
TFS - node (v10.16.3, x64)
Memory used 305,994k (± 0.02%) 296,457k (± 0.04%) 🟩-9,538k (- 3.12%) 296,193k 296,623k
Parse Time 1.29s (± 0.81%) 1.59s (± 0.84%) +0.30s (+22.87%) 1.55s 1.61s
Bind Time 0.67s (± 0.71%) 0.92s (± 0.91%) 🔻+0.24s (+35.96%) 0.90s 0.94s
Check Time 5.49s (± 0.57%) 6.83s (± 0.84%) +1.34s (+24.48%) 6.68s 6.93s
Emit Time 3.36s (± 1.12%) 4.92s (± 1.44%) 🔻+1.57s (+46.66%) 4.82s 5.18s
Total Time 10.81s (± 0.35%) 14.26s (± 0.62%) 🔻+3.44s (+31.87%) 14.09s 14.50s
material-ui - node (v10.16.3, x64)
Memory used 459,171k (± 0.01%) 449,886k (± 0.01%) -9,284k (- 2.02%) 449,731k 449,989k
Parse Time 1.82s (± 0.95%) 2.07s (± 0.62%) +0.25s (+13.85%) 2.04s 2.10s
Bind Time 0.58s (± 1.56%) 0.75s (± 1.10%) +0.17s (+29.78%) 0.74s 0.78s
Check Time 15.65s (± 0.41%) 18.16s (± 0.62%) +2.51s (+16.02%) 17.98s 18.48s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.05s (± 0.41%) 20.99s (± 0.55%) +2.93s (+16.24%) 20.82s 21.33s
xstate - node (v10.16.3, x64)
Memory used 584,141k (± 0.01%) 559,348k (± 1.27%) 🟩-24,793k (- 4.24%) 555,949k 588,142k
Parse Time 2.62s (± 0.38%) 2.92s (± 0.39%) +0.30s (+11.48%) 2.90s 2.95s
Bind Time 0.92s (± 0.56%) 1.23s (± 0.53%) 🔻+0.31s (+33.77%) 1.22s 1.24s
Check Time 1.61s (± 0.55%) 1.75s (± 0.51%) +0.13s (+ 8.18%) 1.73s 1.77s
Emit Time 0.07s (± 4.13%) 0.08s (± 0.00%) +0.01s (+11.11%) 0.08s 0.08s
Total Time 5.22s (± 0.25%) 5.98s (± 0.22%) +0.75s (+14.40%) 5.94s 6.01s
Angular - node (v12.1.0, x64)
Memory used 340,829k (± 0.02%) 331,369k (± 0.11%) -9,460k (- 2.78%) 329,877k 331,689k
Parse Time 2.07s (± 0.49%) 2.71s (± 0.51%) 🔻+0.64s (+30.81%) 2.68s 2.75s
Bind Time 0.77s (± 0.62%) 1.29s (± 1.10%) 🔻+0.52s (+67.80%) 1.27s 1.33s
Check Time 5.85s (± 0.47%) 8.36s (± 0.44%) 🔻+2.51s (+42.92%) 8.25s 8.42s
Emit Time 6.19s (± 0.65%) 10.61s (± 0.74%) 🔻+4.42s (+71.28%) 10.44s 10.80s
Total Time 14.88s (± 0.46%) 22.97s (± 0.49%) 🔻+8.09s (+54.34%) 22.77s 23.22s
Compiler-Unions - node (v12.1.0, x64)
Memory used 193,830k (± 0.12%) 183,706k (± 0.05%) 🟩-10,124k (- 5.22%) 183,404k 183,890k
Parse Time 0.83s (± 0.48%) 1.07s (± 1.13%) +0.24s (+28.59%) 1.05s 1.10s
Bind Time 0.47s (± 1.60%) 0.72s (± 0.65%) 🔻+0.24s (+51.58%) 0.71s 0.73s
Check Time 6.69s (± 0.75%) 9.64s (± 0.44%) 🔻+2.95s (+44.15%) 9.52s 9.74s
Emit Time 2.45s (± 2.13%) 4.04s (± 0.61%) 🔻+1.60s (+65.21%) 3.99s 4.09s
Total Time 10.44s (± 0.92%) 15.47s (± 0.30%) 🔻+5.03s (+48.18%) 15.30s 15.52s
Monaco - node (v12.1.0, x64)
Memory used 327,671k (± 0.02%) 318,206k (± 0.01%) -9,465k (- 2.89%) 318,146k 318,271k
Parse Time 1.59s (± 1.14%) 2.16s (± 0.22%) 🔻+0.57s (+35.87%) 2.15s 2.17s
Bind Time 0.69s (± 0.49%) 1.23s (± 0.65%) 🔻+0.54s (+77.20%) 1.22s 1.25s
Check Time 5.82s (± 0.40%) 8.98s (± 0.38%) 🔻+3.16s (+54.33%) 8.90s 9.04s
Emit Time 3.27s (± 1.40%) 5.62s (± 0.68%) 🔻+2.35s (+71.83%) 5.51s 5.70s
Total Time 11.37s (± 0.68%) 17.98s (± 0.21%) 🔻+6.61s (+58.13%) 17.91s 18.08s
TFS - node (v12.1.0, x64)
Memory used 290,438k (± 0.09%) 281,190k (± 0.02%) 🟩-9,249k (- 3.18%) 281,074k 281,304k
Parse Time 1.29s (± 0.48%) 1.83s (± 0.57%) 🔻+0.54s (+41.97%) 1.81s 1.85s
Bind Time 0.67s (± 0.88%) 1.14s (± 1.23%) 🔻+0.47s (+69.58%) 1.11s 1.17s
Check Time 5.36s (± 0.36%) 8.08s (± 0.38%) 🔻+2.72s (+50.81%) 8.00s 8.17s
Emit Time 3.45s (± 0.89%) 5.94s (± 1.23%) 🔻+2.49s (+72.29%) 5.82s 6.16s
Total Time 10.77s (± 0.39%) 17.00s (± 0.62%) 🔻+6.22s (+57.78%) 16.79s 17.31s
material-ui - node (v12.1.0, x64)
Memory used 438,468k (± 0.01%) 428,815k (± 0.11%) -9,653k (- 2.20%) 427,519k 429,236k
Parse Time 1.83s (± 0.57%) 2.21s (± 0.37%) +0.38s (+20.57%) 2.19s 2.23s
Bind Time 0.55s (± 0.73%) 0.88s (± 0.66%) 🔻+0.33s (+59.17%) 0.86s 0.89s
Check Time 12.79s (± 0.29%) 17.95s (± 0.60%) 🔻+5.16s (+40.33%) 17.71s 18.15s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.18s (± 0.22%) 21.04s (± 0.56%) 🔻+5.86s (+38.62%) 20.78s 21.26s
xstate - node (v12.1.0, x64)
Memory used 549,107k (± 0.01%) 521,475k (± 0.02%) 🟩-27,632k (- 5.03%) 521,334k 521,712k
Parse Time 2.53s (± 0.50%) 3.07s (± 0.45%) +0.54s (+21.18%) 3.03s 3.09s
Bind Time 0.89s (± 0.54%) 1.41s (± 0.83%) 🔻+0.52s (+58.51%) 1.38s 1.43s
Check Time 1.48s (± 0.49%) 1.78s (± 0.47%) +0.30s (+20.16%) 1.76s 1.79s
Emit Time 0.07s (± 0.00%) 0.08s (± 0.00%) +0.01s (+14.29%) 0.08s 0.08s
Total Time 4.97s (± 0.28%) 6.33s (± 0.31%) +1.35s (+27.22%) 6.28s 6.37s
Angular - node (v14.15.1, x64)
Memory used 338,916k (± 0.01%) 329,698k (± 0.01%) -9,217k (- 2.72%) 329,659k 329,757k
Parse Time 2.06s (± 0.56%) 2.66s (± 0.56%) +0.59s (+28.72%) 2.62s 2.70s
Bind Time 0.80s (± 0.84%) 1.31s (± 0.76%) 🔻+0.51s (+63.99%) 1.28s 1.33s
Check Time 5.86s (± 0.51%) 8.38s (± 0.41%) 🔻+2.52s (+42.98%) 8.29s 8.46s
Emit Time 6.21s (± 0.71%) 10.81s (± 0.76%) 🔻+4.60s (+74.15%) 10.58s 11.03s
Total Time 14.93s (± 0.35%) 23.15s (± 0.48%) 🔻+8.22s (+55.09%) 22.87s 23.46s
Compiler-Unions - node (v14.15.1, x64)
Memory used 191,286k (± 0.91%) 180,641k (± 0.01%) 🟩-10,646k (- 5.57%) 180,550k 180,672k
Parse Time 0.85s (± 1.13%) 1.09s (± 0.60%) +0.24s (+27.85%) 1.07s 1.10s
Bind Time 0.48s (± 0.77%) 0.74s (± 0.78%) 🔻+0.26s (+52.58%) 0.73s 0.75s
Check Time 6.73s (± 0.29%) 9.65s (± 0.40%) 🔻+2.91s (+43.30%) 9.55s 9.74s
Emit Time 2.38s (± 0.86%) 4.07s (± 0.65%) 🔻+1.70s (+71.49%) 4.02s 4.13s
Total Time 10.45s (± 0.28%) 15.55s (± 0.36%) 🔻+5.10s (+48.86%) 15.40s 15.64s
Monaco - node (v14.15.1, x64)
Memory used 326,581k (± 0.01%) 317,112k (± 0.01%) -9,469k (- 2.90%) 317,062k 317,171k
Parse Time 1.59s (± 1.10%) 2.15s (± 0.69%) 🔻+0.56s (+35.26%) 2.12s 2.18s
Bind Time 0.72s (± 0.55%) 1.26s (± 0.95%) 🔻+0.54s (+74.76%) 1.24s 1.30s
Check Time 5.70s (± 0.41%) 8.81s (± 0.52%) 🔻+3.11s (+54.57%) 8.70s 8.89s
Emit Time 3.31s (± 0.61%) 5.77s (± 0.95%) 🔻+2.46s (+74.20%) 5.68s 5.89s
Total Time 11.32s (± 0.28%) 17.99s (± 0.51%) 🔻+6.67s (+58.87%) 17.85s 18.20s
TFS - node (v14.15.1, x64)
Memory used 289,693k (± 0.00%) 280,172k (± 0.01%) 🟩-9,521k (- 3.29%) 280,116k 280,205k
Parse Time 1.30s (± 0.46%) 1.85s (± 0.54%) 🔻+0.55s (+42.25%) 1.83s 1.88s
Bind Time 0.79s (± 0.51%) 1.16s (± 1.14%) 🔻+0.37s (+46.40%) 1.14s 1.20s
Check Time 5.37s (± 0.49%) 8.04s (± 0.41%) 🔻+2.68s (+49.86%) 7.96s 8.12s
Emit Time 3.54s (± 0.43%) 6.15s (± 0.50%) 🔻+2.62s (+73.89%) 6.10s 6.24s
Total Time 11.00s (± 0.32%) 17.20s (± 0.28%) 🔻+6.21s (+56.44%) 17.10s 17.29s
material-ui - node (v14.15.1, x64)
Memory used 436,528k (± 0.06%) 426,703k (± 0.00%) -9,825k (- 2.25%) 426,673k 426,744k
Parse Time 1.87s (± 0.56%) 2.26s (± 0.34%) +0.40s (+21.25%) 2.25s 2.28s
Bind Time 0.58s (± 1.28%) 0.91s (± 0.61%) 🔻+0.33s (+55.75%) 0.90s 0.92s
Check Time 12.89s (± 0.62%) 18.13s (± 0.73%) 🔻+5.24s (+40.64%) 17.90s 18.48s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.34s (± 0.54%) 21.30s (± 0.65%) 🔻+5.96s (+38.86%) 21.06s 21.67s
xstate - node (v14.15.1, x64)
Memory used 546,991k (± 0.00%) 519,089k (± 0.01%) 🟩-27,902k (- 5.10%) 519,028k 519,181k
Parse Time 2.61s (± 0.59%) 3.17s (± 0.64%) +0.56s (+21.38%) 3.13s 3.22s
Bind Time 0.97s (± 0.82%) 1.42s (± 0.26%) 🔻+0.44s (+45.58%) 1.41s 1.42s
Check Time 1.52s (± 0.63%) 1.85s (± 0.28%) +0.32s (+21.25%) 1.84s 1.86s
Emit Time 0.07s (± 0.00%) 0.08s (± 0.00%) +0.01s (+14.29%) 0.08s 0.08s
Total Time 5.18s (± 0.36%) 6.52s (± 0.31%) +1.34s (+25.78%) 6.47s 6.57s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

TSServer

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,405ms (± 0.39%) 1,692ms (± 0.44%) +287ms (+20.42%) 1,673ms 1,712ms
Req 2 - geterr 4,105ms (± 0.81%) 4,833ms (± 0.50%) +728ms (+17.75%) 4,756ms 4,881ms
Req 3 - references 228ms (± 0.86%) 327ms (± 0.60%) 🔻+99ms (+43.21%) 324ms 332ms
Req 4 - navto 173ms (± 1.15%) 195ms (± 0.82%) +22ms (+12.41%) 191ms 199ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 96ms (± 3.08%) 71ms (± 2.69%) 🟩-25ms (-25.89%) 69ms 78ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,496ms (± 0.58%) 1,809ms (± 0.39%) +313ms (+20.95%) 1,794ms 1,824ms
Req 2 - geterr 2,254ms (± 0.41%) 2,669ms (± 0.45%) +416ms (+18.45%) 2,632ms 2,697ms
Req 3 - references 244ms (± 0.79%) 350ms (± 0.62%) 🔻+105ms (+43.09%) 347ms 355ms
Req 4 - navto 185ms (± 0.97%) 210ms (± 0.70%) +25ms (+13.51%) 206ms 214ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 62ms (± 1.08%) 79ms (± 1.48%) +17ms (+28.20%) 76ms 81ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,089ms (± 0.28%) 2,509ms (± 0.47%) +420ms (+20.12%) 2,478ms 2,531ms
Req 2 - geterr 794ms (± 0.82%) 862ms (± 0.49%) +68ms (+ 8.60%) 851ms 870ms
Req 3 - references 99ms (± 1.85%) 77ms (± 1.64%) 🟩-22ms (-21.93%) 74ms 80ms
Req 4 - navto 232ms (± 1.19%) 258ms (± 1.38%) +26ms (+11.07%) 251ms 268ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 280ms (± 1.43%) 324ms (± 1.01%) +44ms (+15.68%) 316ms 333ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,405ms (± 0.81%) 1,908ms (± 0.46%) 🔻+504ms (+35.86%) 1,888ms 1,927ms
Req 2 - geterr 3,392ms (± 0.69%) 4,832ms (± 0.46%) 🔻+1,440ms (+42.46%) 4,775ms 4,872ms
Req 3 - references 220ms (± 0.70%) 400ms (± 0.64%) 🔻+180ms (+82.00%) 393ms 404ms
Req 4 - navto 159ms (± 1.09%) 193ms (± 1.64%) +34ms (+21.27%) 187ms 203ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 59ms (± 3.07%) 74ms (± 3.51%) +15ms (+24.58%) 69ms 79ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,495ms (± 0.62%) 2,061ms (± 0.54%) 🔻+566ms (+37.89%) 2,039ms 2,084ms
Req 2 - geterr 2,163ms (± 0.46%) 2,946ms (± 0.47%) 🔻+784ms (+36.23%) 2,913ms 2,970ms
Req 3 - references 235ms (± 0.43%) 429ms (± 0.94%) 🔻+194ms (+82.76%) 420ms 436ms
Req 4 - navto 169ms (± 1.08%) 206ms (± 0.86%) +37ms (+21.87%) 202ms 209ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 60ms (± 2.91%) 82ms (± 1.07%) 🔻+23ms (+37.82%) 80ms 84ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,038ms (± 0.64%) 2,737ms (± 0.46%) 🔻+699ms (+34.27%) 2,707ms 2,766ms
Req 2 - geterr 747ms (± 0.73%) 866ms (± 0.58%) +119ms (+15.94%) 850ms 875ms
Req 3 - references 67ms (± 1.12%) 79ms (± 1.18%) +11ms (+16.91%) 77ms 81ms
Req 4 - navto 222ms (± 1.48%) 266ms (± 0.67%) +44ms (+19.69%) 263ms 270ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 276ms (± 1.18%) 347ms (± 0.51%) +71ms (+25.72%) 344ms 351ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,446ms (± 0.38%) 1,940ms (± 0.77%) 🔻+495ms (+34.21%) 1,913ms 1,977ms
Req 2 - geterr 3,514ms (± 0.89%) 4,865ms (± 0.52%) 🔻+1,350ms (+38.43%) 4,796ms 4,916ms
Req 3 - references 230ms (± 0.51%) 405ms (± 0.51%) 🔻+175ms (+76.18%) 400ms 410ms
Req 4 - navto 169ms (± 0.68%) 202ms (± 0.56%) +33ms (+19.59%) 200ms 205ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 57ms (± 6.11%) 77ms (± 5.83%) 🔻+20ms (+34.09%) 69ms 83ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,516ms (± 0.63%) 2,093ms (± 0.44%) 🔻+576ms (+38.01%) 2,072ms 2,111ms
Req 2 - geterr 2,298ms (± 0.49%) 3,016ms (± 0.39%) 🔻+718ms (+31.22%) 2,989ms 3,049ms
Req 3 - references 242ms (± 0.59%) 436ms (± 1.19%) 🔻+194ms (+80.16%) 428ms 454ms
Req 4 - navto 178ms (± 0.50%) 216ms (± 0.66%) +38ms (+21.50%) 212ms 219ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 0.90%) 82ms (± 0.92%) 🔻+28ms (+50.92%) 81ms 84ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,139ms (± 0.56%) 2,770ms (± 0.45%) +632ms (+29.53%) 2,754ms 2,809ms
Req 2 - geterr 766ms (± 0.40%) 897ms (± 0.49%) +132ms (+17.19%) 889ms 910ms
Req 3 - references 68ms (± 1.73%) 82ms (± 1.31%) +14ms (+20.62%) 81ms 86ms
Req 4 - navto 227ms (± 0.73%) 267ms (± 0.66%) +39ms (+17.25%) 262ms 270ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 277ms (± 0.68%) 353ms (± 0.45%) +77ms (+27.74%) 350ms 358ms
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

Wow, yeah, running on the emitted output is very bad.

@Andarist
Copy link
Contributor

@jakebailey this is very interesting work! I'm very curious about what is exactly going on here and what exact approaches you have been testing etc. Would you mind sharing what strategy was used by this perf run? Are the main gains here from ditching the property lookups involving ts object in favor of a plain closure?

@jakebailey
Copy link
Member Author

I'd recommend looking at #49332, https://github.com/jakebailey/typeformer, and the stack starting at jakebailey#1 (though not up to date yet).

Effectively, there's a big transform that converts the codebase from namespaces into modules, using "barrel" files to export what used to be in those namespaces, so consumers see the same API. Since these are all regular imports, a bundler like esbuild can transform the code as needed, and so in this case, all of the code turns out to be brought to the top level, so no indirection, and then the big barrels are retained as objects that are exported.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey
Copy link
Member Author

I screwed up the server build for this case (the correct path to tsserver is tsserver/server.js not tsserver/tsserver.js), but given how slow the compiler is, I expect it to be really slow too.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey
Copy link
Member Author

@typescript-bot perf test this

Retry CJS again... I forgot to add my changes 😢

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 363,379k (± 0.02%) 354,560k (± 0.02%) -8,819k (- 2.43%) 354,357k 354,723k
Parse Time 2.09s (± 0.81%) 2.48s (± 0.43%) +0.40s (+18.94%) 2.46s 2.50s
Bind Time 0.79s (± 0.75%) 1.08s (± 1.23%) 🔻+0.29s (+36.65%) 1.06s 1.13s
Check Time 6.20s (± 0.66%) 7.40s (± 0.73%) +1.20s (+19.31%) 7.28s 7.52s
Emit Time 6.03s (± 0.54%) 8.78s (± 0.69%) 🔻+2.75s (+45.53%) 8.60s 8.91s
Total Time 15.11s (± 0.49%) 19.74s (± 0.56%) 🔻+4.63s (+30.63%) 19.40s 20.01s
Compiler-Unions - node (v10.16.3, x64)
Memory used 205,939k (± 0.30%) 197,063k (± 0.30%) 🟩-8,876k (- 4.31%) 194,658k 197,411k
Parse Time 0.83s (± 1.09%) 0.96s (± 0.50%) +0.13s (+15.16%) 0.94s 0.96s
Bind Time 0.47s (± 1.75%) 0.63s (± 1.05%) 🔻+0.16s (+32.63%) 0.62s 0.65s
Check Time 8.47s (± 0.70%) 9.91s (± 0.44%) +1.44s (+16.96%) 9.78s 9.99s
Emit Time 2.45s (± 1.32%) 3.45s (± 1.12%) 🔻+1.00s (+40.87%) 3.40s 3.59s
Total Time 12.23s (± 0.68%) 14.94s (± 0.37%) +2.71s (+22.19%) 14.79s 15.05s
Monaco - node (v10.16.3, x64)
Memory used 344,768k (± 0.01%) 335,842k (± 0.03%) -8,925k (- 2.59%) 335,700k 336,018k
Parse Time 1.62s (± 0.62%) 1.91s (± 0.46%) +0.29s (+18.12%) 1.90s 1.93s
Bind Time 0.70s (± 0.74%) 1.00s (± 0.62%) 🔻+0.30s (+42.51%) 0.98s 1.01s
Check Time 6.23s (± 0.62%) 7.75s (± 0.39%) +1.52s (+24.43%) 7.68s 7.82s
Emit Time 3.23s (± 0.60%) 4.64s (± 0.65%) 🔻+1.41s (+43.77%) 4.59s 4.75s
Total Time 11.78s (± 0.41%) 15.30s (± 0.22%) +3.53s (+29.93%) 15.20s 15.36s
TFS - node (v10.16.3, x64)
Memory used 306,023k (± 0.02%) 297,268k (± 0.01%) -8,756k (- 2.86%) 297,145k 297,360k
Parse Time 1.29s (± 0.54%) 1.57s (± 0.95%) +0.28s (+21.61%) 1.54s 1.61s
Bind Time 0.67s (± 0.51%) 0.93s (± 0.60%) 🔻+0.25s (+37.89%) 0.92s 0.94s
Check Time 5.51s (± 0.61%) 6.79s (± 0.43%) +1.27s (+23.11%) 6.72s 6.84s
Emit Time 3.36s (± 1.08%) 4.90s (± 1.28%) 🔻+1.54s (+45.94%) 4.76s 5.04s
Total Time 10.84s (± 0.42%) 14.19s (± 0.58%) 🔻+3.35s (+30.93%) 13.95s 14.37s
material-ui - node (v10.16.3, x64)
Memory used 459,186k (± 0.01%) 450,634k (± 0.01%) -8,552k (- 1.86%) 450,502k 450,733k
Parse Time 1.82s (± 0.76%) 2.07s (± 0.39%) +0.25s (+13.65%) 2.06s 2.09s
Bind Time 0.59s (± 2.11%) 0.76s (± 1.44%) +0.17s (+28.47%) 0.74s 0.78s
Check Time 15.83s (± 0.31%) 18.09s (± 0.89%) +2.26s (+14.24%) 17.74s 18.43s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.25s (± 0.28%) 20.92s (± 0.78%) +2.67s (+14.62%) 20.58s 21.27s
xstate - node (v10.16.3, x64)
Memory used 584,063k (± 0.02%) 558,315k (± 0.01%) 🟩-25,748k (- 4.41%) 558,121k 558,462k
Parse Time 2.61s (± 0.47%) 2.92s (± 0.21%) +0.31s (+11.75%) 2.91s 2.93s
Bind Time 0.93s (± 0.81%) 1.19s (± 0.56%) +0.26s (+28.05%) 1.17s 1.20s
Check Time 1.61s (± 0.82%) 1.77s (± 0.53%) +0.16s (+ 9.89%) 1.74s 1.79s
Emit Time 0.07s (± 4.92%) 0.08s (± 0.00%) +0.01s (+ 8.11%) 0.08s 0.08s
Total Time 5.22s (± 0.41%) 5.96s (± 0.24%) +0.74s (+14.16%) 5.92s 5.99s
Angular - node (v12.1.0, x64)
Memory used 340,784k (± 0.02%) 332,436k (± 0.02%) -8,348k (- 2.45%) 332,307k 332,550k
Parse Time 2.09s (± 0.80%) 2.72s (± 0.60%) +0.63s (+29.89%) 2.69s 2.76s
Bind Time 0.77s (± 0.77%) 1.30s (± 0.74%) 🔻+0.53s (+67.83%) 1.28s 1.31s
Check Time 5.87s (± 0.98%) 8.38s (± 0.50%) 🔻+2.51s (+42.77%) 8.30s 8.48s
Emit Time 6.25s (± 0.75%) 10.78s (± 0.63%) 🔻+4.52s (+72.38%) 10.65s 10.96s
Total Time 14.99s (± 0.59%) 23.17s (± 0.39%) 🔻+8.18s (+54.56%) 22.94s 23.36s
Compiler-Unions - node (v12.1.0, x64)
Memory used 192,794k (± 0.56%) 185,223k (± 0.03%) 🟩-7,571k (- 3.93%) 185,111k 185,352k
Parse Time 0.82s (± 0.72%) 1.07s (± 0.49%) +0.25s (+29.98%) 1.06s 1.08s
Bind Time 0.47s (± 0.94%) 0.72s (± 0.82%) 🔻+0.25s (+53.39%) 0.71s 0.73s
Check Time 6.71s (± 0.75%) 9.62s (± 0.63%) 🔻+2.91s (+43.42%) 9.51s 9.78s
Emit Time 2.45s (± 0.89%) 4.13s (± 0.78%) 🔻+1.68s (+68.61%) 4.07s 4.21s
Total Time 10.45s (± 0.50%) 15.54s (± 0.49%) 🔻+5.09s (+48.76%) 15.39s 15.70s
Monaco - node (v12.1.0, x64)
Memory used 327,748k (± 0.02%) 319,107k (± 0.02%) -8,641k (- 2.64%) 318,972k 319,251k
Parse Time 1.59s (± 0.79%) 2.17s (± 0.47%) 🔻+0.58s (+36.57%) 2.15s 2.19s
Bind Time 0.69s (± 0.69%) 1.24s (± 0.55%) 🔻+0.55s (+79.51%) 1.23s 1.26s
Check Time 5.85s (± 0.56%) 9.00s (± 0.47%) 🔻+3.15s (+53.86%) 8.91s 9.12s
Emit Time 3.29s (± 0.58%) 5.70s (± 0.88%) 🔻+2.41s (+73.27%) 5.64s 5.89s
Total Time 11.42s (± 0.32%) 18.12s (± 0.36%) 🔻+6.69s (+58.59%) 18.02s 18.30s
TFS - node (v12.1.0, x64)
Memory used 290,552k (± 0.06%) 282,094k (± 0.02%) -8,459k (- 2.91%) 281,976k 282,246k
Parse Time 1.30s (± 0.82%) 1.85s (± 0.58%) 🔻+0.55s (+42.82%) 1.83s 1.87s
Bind Time 0.68s (± 0.95%) 1.15s (± 0.72%) 🔻+0.48s (+70.21%) 1.14s 1.18s
Check Time 5.39s (± 0.60%) 8.11s (± 0.35%) 🔻+2.72s (+50.57%) 8.07s 8.18s
Emit Time 3.46s (± 1.32%) 6.03s (± 0.64%) 🔻+2.57s (+74.08%) 5.98s 6.14s
Total Time 10.83s (± 0.62%) 17.14s (± 0.26%) 🔻+6.32s (+58.35%) 17.04s 17.22s
material-ui - node (v12.1.0, x64)
Memory used 438,227k (± 0.09%) 429,960k (± 0.01%) -8,267k (- 1.89%) 429,832k 430,064k
Parse Time 1.82s (± 0.81%) 2.22s (± 0.37%) +0.40s (+22.11%) 2.20s 2.24s
Bind Time 0.55s (± 0.81%) 0.88s (± 0.59%) 🔻+0.33s (+59.24%) 0.87s 0.89s
Check Time 12.82s (± 1.01%) 17.94s (± 0.29%) 🔻+5.12s (+39.89%) 17.86s 18.08s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.19s (± 0.87%) 21.04s (± 0.25%) 🔻+5.85s (+38.50%) 20.94s 21.15s
xstate - node (v12.1.0, x64)
Memory used 549,140k (± 0.01%) 524,172k (± 0.01%) 🟩-24,968k (- 4.55%) 523,969k 524,312k
Parse Time 2.55s (± 0.64%) 3.08s (± 0.33%) +0.53s (+20.68%) 3.05s 3.10s
Bind Time 0.89s (± 0.76%) 1.42s (± 0.33%) 🔻+0.53s (+59.17%) 1.41s 1.43s
Check Time 1.48s (± 0.81%) 1.79s (± 0.42%) +0.31s (+20.81%) 1.78s 1.81s
Emit Time 0.07s (± 0.00%) 0.08s (± 0.00%) +0.01s (+14.29%) 0.08s 0.08s
Total Time 4.99s (± 0.34%) 6.37s (± 0.26%) +1.38s (+27.62%) 6.34s 6.42s
Angular - node (v14.15.1, x64)
Memory used 338,937k (± 0.01%) 330,564k (± 0.01%) -8,373k (- 2.47%) 330,446k 330,626k
Parse Time 2.06s (± 0.61%) 2.65s (± 0.55%) +0.59s (+28.46%) 2.62s 2.69s
Bind Time 0.80s (± 1.03%) 1.30s (± 0.83%) 🔻+0.50s (+62.99%) 1.28s 1.32s
Check Time 5.83s (± 0.42%) 8.39s (± 0.55%) 🔻+2.55s (+43.79%) 8.31s 8.50s
Emit Time 6.19s (± 0.43%) 10.82s (± 0.62%) 🔻+4.63s (+74.72%) 10.67s 10.97s
Total Time 14.88s (± 0.27%) 23.15s (± 0.48%) 🔻+8.27s (+55.61%) 22.96s 23.43s
Compiler-Unions - node (v14.15.1, x64)
Memory used 190,140k (± 0.01%) 182,869k (± 0.96%) 🟩-7,271k (- 3.82%) 181,631k 187,597k
Parse Time 0.85s (± 0.40%) 1.11s (± 1.34%) +0.25s (+29.78%) 1.07s 1.14s
Bind Time 0.48s (± 0.77%) 0.74s (± 0.68%) 🔻+0.25s (+51.55%) 0.73s 0.75s
Check Time 6.76s (± 0.70%) 9.52s (± 0.53%) 🔻+2.77s (+40.93%) 9.42s 9.66s
Emit Time 2.38s (± 0.92%) 4.07s (± 0.69%) 🔻+1.69s (+71.00%) 4.00s 4.14s
Total Time 10.48s (± 0.59%) 15.43s (± 0.47%) 🔻+4.96s (+47.31%) 15.31s 15.67s
Monaco - node (v14.15.1, x64)
Memory used 326,575k (± 0.01%) 318,079k (± 0.01%) -8,496k (- 2.60%) 318,022k 318,103k
Parse Time 1.59s (± 0.79%) 2.13s (± 0.51%) 🔻+0.54s (+34.17%) 2.12s 2.17s
Bind Time 0.73s (± 0.47%) 1.25s (± 0.76%) 🔻+0.53s (+72.49%) 1.24s 1.28s
Check Time 5.74s (± 0.53%) 8.89s (± 0.47%) 🔻+3.15s (+54.99%) 8.82s 9.01s
Emit Time 3.35s (± 0.65%) 5.76s (± 0.60%) 🔻+2.42s (+72.24%) 5.70s 5.85s
Total Time 11.40s (± 0.41%) 18.04s (± 0.37%) 🔻+6.64s (+58.26%) 17.91s 18.23s
TFS - node (v14.15.1, x64)
Memory used 289,703k (± 0.01%) 281,056k (± 0.01%) -8,647k (- 2.98%) 281,002k 281,163k
Parse Time 1.31s (± 0.59%) 1.83s (± 0.89%) 🔻+0.52s (+39.65%) 1.80s 1.87s
Bind Time 0.79s (± 2.25%) 1.15s (± 0.66%) 🔻+0.36s (+45.25%) 1.13s 1.16s
Check Time 5.35s (± 0.39%) 8.01s (± 0.56%) 🔻+2.67s (+49.88%) 7.93s 8.10s
Emit Time 3.54s (± 0.89%) 6.18s (± 0.41%) 🔻+2.64s (+74.68%) 6.10s 6.23s
Total Time 10.98s (± 0.39%) 17.17s (± 0.26%) 🔻+6.19s (+56.36%) 17.09s 17.27s
material-ui - node (v14.15.1, x64)
Memory used 436,655k (± 0.00%) 428,296k (± 0.01%) -8,359k (- 1.91%) 428,156k 428,402k
Parse Time 1.88s (± 0.64%) 2.23s (± 0.51%) +0.36s (+18.91%) 2.21s 2.25s
Bind Time 0.59s (± 1.16%) 0.90s (± 0.66%) 🔻+0.32s (+54.27%) 0.89s 0.92s
Check Time 12.91s (± 0.77%) 18.01s (± 0.66%) 🔻+5.10s (+39.53%) 17.74s 18.26s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.37s (± 0.71%) 21.15s (± 0.58%) 🔻+5.78s (+37.58%) 20.85s 21.41s
xstate - node (v14.15.1, x64)
Memory used 546,986k (± 0.00%) 522,226k (± 0.01%) 🟩-24,760k (- 4.53%) 522,150k 522,271k
Parse Time 2.60s (± 0.43%) 3.13s (± 0.70%) +0.52s (+20.08%) 3.10s 3.20s
Bind Time 0.99s (± 1.23%) 1.42s (± 0.62%) 🔻+0.43s (+43.58%) 1.40s 1.44s
Check Time 1.52s (± 0.49%) 1.84s (± 0.28%) +0.32s (+20.99%) 1.83s 1.85s
Emit Time 0.07s (± 0.00%) 0.08s (± 2.75%) +0.01s (+15.71%) 0.08s 0.09s
Total Time 5.19s (± 0.29%) 6.47s (± 0.26%) +1.28s (+24.57%) 6.44s 6.52s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

TSServer

Comparison Report - main..50765
Metric main 50765 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,407ms (± 0.67%) 1,692ms (± 0.53%) +285ms (+20.28%) 1,673ms 1,711ms
Req 2 - geterr 4,097ms (± 1.09%) 4,845ms (± 0.66%) +748ms (+18.25%) 4,765ms 4,917ms
Req 3 - references 231ms (± 0.89%) 331ms (± 0.62%) 🔻+100ms (+43.08%) 327ms 336ms
Req 4 - navto 175ms (± 0.87%) 196ms (± 1.28%) +22ms (+12.36%) 191ms 201ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 94ms (± 6.83%) 81ms (± 9.20%) 🟩-13ms (-13.33%) 70ms 103ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,500ms (± 0.44%) 1,812ms (± 0.44%) +312ms (+20.77%) 1,798ms 1,828ms
Req 2 - geterr 2,275ms (± 0.28%) 2,644ms (± 0.53%) +369ms (+16.20%) 2,621ms 2,678ms
Req 3 - references 244ms (± 0.91%) 352ms (± 0.71%) 🔻+108ms (+44.16%) 346ms 358ms
Req 4 - navto 187ms (± 0.82%) 222ms (± 4.82%) +35ms (+18.70%) 210ms 244ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 63ms (± 3.25%) 81ms (± 8.03%) +18ms (+28.66%) 70ms 97ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,103ms (± 0.48%) 2,516ms (± 0.50%) +413ms (+19.61%) 2,495ms 2,540ms
Req 2 - geterr 797ms (± 0.41%) 866ms (± 0.65%) +69ms (+ 8.70%) 850ms 876ms
Req 3 - references 102ms (± 3.71%) 74ms (± 0.90%) 🟩-28ms (-27.38%) 73ms 76ms
Req 4 - navto 234ms (± 0.80%) 258ms (± 0.53%) +25ms (+10.58%) 255ms 262ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 279ms (± 1.51%) 322ms (± 1.03%) +43ms (+15.32%) 314ms 330ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,412ms (± 1.23%) 1,909ms (± 0.78%) 🔻+497ms (+35.20%) 1,873ms 1,954ms
Req 2 - geterr 3,390ms (± 0.53%) 4,776ms (± 0.67%) 🔻+1,386ms (+40.89%) 4,713ms 4,880ms
Req 3 - references 220ms (± 0.77%) 395ms (± 0.57%) 🔻+175ms (+79.75%) 388ms 399ms
Req 4 - navto 160ms (± 0.87%) 193ms (± 1.16%) +33ms (+20.45%) 187ms 199ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 63ms (± 3.27%) 77ms (± 9.31%) +14ms (+22.97%) 69ms 103ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,495ms (± 0.46%) 2,068ms (± 0.74%) 🔻+573ms (+38.31%) 2,040ms 2,100ms
Req 2 - geterr 2,168ms (± 0.47%) 2,902ms (± 0.56%) 🔻+734ms (+33.87%) 2,866ms 2,934ms
Req 3 - references 235ms (± 0.48%) 426ms (± 0.53%) 🔻+190ms (+80.99%) 420ms 430ms
Req 4 - navto 170ms (± 1.14%) 204ms (± 1.08%) +34ms (+19.72%) 197ms 208ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 61ms (± 3.64%) 76ms (± 3.45%) +15ms (+24.31%) 71ms 82ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,042ms (± 0.58%) 2,694ms (± 0.49%) 🔻+652ms (+31.95%) 2,672ms 2,724ms
Req 2 - geterr 746ms (± 0.58%) 862ms (± 0.43%) +116ms (+15.54%) 857ms 871ms
Req 3 - references 68ms (± 1.37%) 80ms (± 3.18%) +12ms (+17.40%) 76ms 89ms
Req 4 - navto 225ms (± 1.87%) 263ms (± 0.85%) +38ms (+16.84%) 258ms 267ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 275ms (± 1.28%) 347ms (± 0.69%) +72ms (+26.01%) 343ms 353ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,445ms (± 0.38%) 1,931ms (± 0.39%) 🔻+486ms (+33.61%) 1,915ms 1,945ms
Req 2 - geterr 3,508ms (± 0.63%) 4,822ms (± 0.26%) 🔻+1,314ms (+37.46%) 4,791ms 4,850ms
Req 3 - references 231ms (± 0.69%) 409ms (± 0.59%) 🔻+178ms (+77.06%) 403ms 413ms
Req 4 - navto 171ms (± 0.64%) 202ms (± 0.77%) +31ms (+18.27%) 199ms 206ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 55ms (± 4.41%) 71ms (± 4.17%) +16ms (+28.52%) 69ms 83ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,526ms (± 0.83%) 2,074ms (± 0.72%) 🔻+548ms (+35.93%) 2,054ms 2,107ms
Req 2 - geterr 2,319ms (± 0.50%) 3,011ms (± 0.53%) +693ms (+29.87%) 2,978ms 3,058ms
Req 3 - references 242ms (± 0.67%) 432ms (± 0.70%) 🔻+190ms (+78.25%) 425ms 439ms
Req 4 - navto 178ms (± 0.59%) 215ms (± 0.49%) +37ms (+20.74%) 213ms 217ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 1.09%) 79ms (± 5.28%) 🔻+24ms (+44.32%) 69ms 83ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,144ms (± 0.71%) 2,745ms (± 0.52%) +601ms (+28.05%) 2,726ms 2,787ms
Req 2 - geterr 762ms (± 0.60%) 894ms (± 0.45%) +132ms (+17.28%) 886ms 903ms
Req 3 - references 67ms (± 1.32%) 79ms (± 1.78%) +12ms (+18.14%) 77ms 84ms
Req 4 - navto 228ms (± 0.77%) 266ms (± 0.44%) +38ms (+16.59%) 263ms 268ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 278ms (± 0.73%) 354ms (± 0.91%) +76ms (+27.20%) 347ms 362ms
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 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
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

@typescript-bot perf test this

This time, for a hacky Node16 emit.

@typescript-bot

This comment was marked as outdated.

@jakebailey
Copy link
Member Author

@typescript-bot perf test this

The perf runner wasn't able to build things, I have no idea why.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

@jakebailey
Copy link
Member Author

@typescript-bot perf test this faster

Node 10 and 12 don't seem to work, for unrelated reasons.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

Heya @jakebailey, I've started to run the abridged perf test suite on this PR at 68fd1a7. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - main..50765

Metric main 50765 Delta Best Worst
Angular - node (v14.15.1, x64)
Memory used 338,937k (± 0.01%) 329,713k (± 0.01%) -9,224k (- 2.72%) 329,656k 329,762k
Parse Time 2.06s (± 0.61%) 2.01s (± 1.06%) -0.04s (- 2.14%) 1.99s 2.09s
Bind Time 0.80s (± 1.03%) 0.74s (± 0.67%) 🟩-0.06s (- 7.65%) 0.73s 0.75s
Check Time 5.83s (± 0.42%) 5.54s (± 0.36%) 🟩-0.29s (- 4.94%) 5.50s 5.59s
Emit Time 6.19s (± 0.43%) 5.57s (± 0.70%) 🟩-0.62s (-10.05%) 5.49s 5.64s
Total Time 14.88s (± 0.27%) 13.87s (± 0.35%) 🟩-1.01s (- 6.78%) 13.75s 14.00s
Compiler-Unions - node (v14.15.1, x64)
Memory used 190,140k (± 0.01%) 184,650k (± 0.72%) -5,490k (- 2.89%) 182,706k 186,792k
Parse Time 0.85s (± 0.40%) 0.84s (± 1.05%) -0.02s (- 1.88%) 0.82s 0.86s
Bind Time 0.48s (± 0.77%) 0.48s (± 5.28%) -0.00s (- 0.62%) 0.46s 0.55s
Check Time 6.76s (± 0.70%) 6.40s (± 0.73%) 🟩-0.35s (- 5.25%) 6.31s 6.51s
Emit Time 2.38s (± 0.92%) 2.20s (± 1.21%) 🟩-0.18s (- 7.44%) 2.15s 2.28s
Total Time 10.48s (± 0.59%) 9.92s (± 0.42%) 🟩-0.55s (- 5.28%) 9.86s 10.04s
Monaco - node (v14.15.1, x64)
Memory used 326,575k (± 0.01%) 317,502k (± 0.02%) -9,073k (- 2.78%) 317,212k 317,599k
Parse Time 1.59s (± 0.79%) 1.51s (± 0.45%) 🟩-0.08s (- 4.72%) 1.50s 1.53s
Bind Time 0.73s (± 0.47%) 0.66s (± 0.67%) 🟩-0.06s (- 8.94%) 0.65s 0.67s
Check Time 5.74s (± 0.53%) 5.31s (± 0.35%) 🟩-0.42s (- 7.36%) 5.26s 5.35s
Emit Time 3.35s (± 0.65%) 2.95s (± 1.10%) 🟩-0.40s (-11.92%) 2.90s 3.04s
Total Time 11.40s (± 0.41%) 10.44s (± 0.44%) 🟩-0.95s (- 8.38%) 10.37s 10.57s
TFS - node (v14.15.1, x64)
Memory used 289,703k (± 0.01%) 280,399k (± 0.01%) 🟩-9,304k (- 3.21%) 280,325k 280,497k
Parse Time 1.31s (± 0.59%) 1.26s (± 0.59%) 🟩-0.05s (- 3.51%) 1.25s 1.28s
Bind Time 0.79s (± 2.25%) 0.61s (± 0.95%) 🟩-0.18s (-22.31%) 0.60s 0.63s
Check Time 5.35s (± 0.39%) 5.01s (± 0.41%) 🟩-0.34s (- 6.36%) 4.96s 5.07s
Emit Time 3.54s (± 0.89%) 3.10s (± 0.60%) 🟩-0.43s (-12.22%) 3.07s 3.15s
Total Time 10.98s (± 0.39%) 9.98s (± 0.23%) 🟩-0.99s (- 9.06%) 9.94s 10.04s
material-ui - node (v14.15.1, x64)
Memory used 436,655k (± 0.00%) 427,151k (± 0.05%) -9,504k (- 2.18%) 426,648k 427,385k
Parse Time 1.88s (± 0.64%) 1.80s (± 0.26%) 🟩-0.08s (- 4.10%) 1.79s 1.81s
Bind Time 0.59s (± 1.16%) 0.55s (± 0.41%) 🟩-0.04s (- 6.31%) 0.54s 0.55s
Check Time 12.91s (± 0.77%) 12.35s (± 0.51%) 🟩-0.56s (- 4.35%) 12.18s 12.53s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.37s (± 0.71%) 14.70s (± 0.42%) 🟩-0.67s (- 4.37%) 14.53s 14.88s
xstate - node (v14.15.1, x64)
Memory used 546,986k (± 0.00%) 519,559k (± 0.01%) 🟩-27,428k (- 5.01%) 519,469k 519,595k
Parse Time 2.60s (± 0.43%) 2.57s (± 0.53%) -0.03s (- 1.23%) 2.54s 2.60s
Bind Time 0.99s (± 1.23%) 0.85s (± 0.66%) 🟩-0.14s (-14.26%) 0.84s 0.86s
Check Time 1.52s (± 0.49%) 1.52s (± 0.53%) +0.00s (+ 0.13%) 1.51s 1.55s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.19s (± 0.29%) 5.02s (± 0.33%) 🟩-0.17s (- 3.31%) 4.99s 5.06s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

Nice; ESM specifically gives us a 3-9% speedup, which should correspond to the benefit of directly accessing functions (as they have been imported into each module's scope, versus being fully qualified).

@jakebailey
Copy link
Member Author

@typescript-bot perf test this faster

One last test; this time esbuilding the emitted ESM from tsc.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 14, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - main..50765

Metric main 50765 Delta Best Worst
Angular - node (v14.15.1, x64)
Memory used 338,937k (± 0.01%) 322,625k (± 0.01%) 🟩-16,312k (- 4.81%) 322,572k 322,679k
Parse Time 2.06s (± 0.61%) 1.95s (± 0.53%) 🟩-0.11s (- 5.39%) 1.93s 1.97s
Bind Time 0.80s (± 1.03%) 0.74s (± 0.64%) 🟩-0.05s (- 6.78%) 0.74s 0.76s
Check Time 5.83s (± 0.42%) 5.29s (± 0.29%) 🟩-0.54s (- 9.26%) 5.26s 5.32s
Emit Time 6.19s (± 0.43%) 5.32s (± 0.92%) 🟩-0.87s (-14.00%) 5.23s 5.47s
Total Time 14.88s (± 0.27%) 13.31s (± 0.47%) 🟩-1.57s (-10.55%) 13.18s 13.49s
Compiler-Unions - node (v14.15.1, x64)
Memory used 190,140k (± 0.01%) 176,859k (± 0.53%) 🟩-13,280k (- 6.98%) 176,060k 179,519k
Parse Time 0.85s (± 0.40%) 0.83s (± 0.82%) 🟩-0.03s (- 3.17%) 0.82s 0.85s
Bind Time 0.48s (± 0.77%) 0.44s (± 0.82%) 🟩-0.04s (- 8.45%) 0.44s 0.45s
Check Time 6.76s (± 0.70%) 6.15s (± 0.58%) 🟩-0.61s (- 9.06%) 6.09s 6.24s
Emit Time 2.38s (± 0.92%) 2.10s (± 0.89%) 🟩-0.28s (-11.90%) 2.06s 2.13s
Total Time 10.48s (± 0.59%) 9.51s (± 0.40%) 🟩-0.96s (- 9.19%) 9.46s 9.63s
Monaco - node (v14.15.1, x64)
Memory used 326,575k (± 0.01%) 310,146k (± 0.01%) 🟩-16,429k (- 5.03%) 310,097k 310,203k
Parse Time 1.59s (± 0.79%) 1.48s (± 0.72%) 🟩-0.11s (- 6.80%) 1.47s 1.52s
Bind Time 0.73s (± 0.47%) 0.67s (± 0.67%) 🟩-0.06s (- 8.12%) 0.66s 0.68s
Check Time 5.74s (± 0.53%) 5.09s (± 0.46%) 🟩-0.65s (-11.24%) 5.05s 5.14s
Emit Time 3.35s (± 0.65%) 2.82s (± 0.31%) 🟩-0.53s (-15.72%) 2.80s 2.84s
Total Time 11.40s (± 0.41%) 10.06s (± 0.27%) 🟩-1.34s (-11.75%) 9.99s 10.11s
TFS - node (v14.15.1, x64)
Memory used 289,703k (± 0.01%) 273,151k (± 0.01%) 🟩-16,552k (- 5.71%) 273,097k 273,201k
Parse Time 1.31s (± 0.59%) 1.24s (± 0.82%) 🟩-0.07s (- 5.65%) 1.22s 1.26s
Bind Time 0.79s (± 2.25%) 0.59s (± 1.28%) 🟩-0.20s (-24.71%) 0.58s 0.62s
Check Time 5.35s (± 0.39%) 4.84s (± 0.35%) 🟩-0.50s (- 9.44%) 4.80s 4.88s
Emit Time 3.54s (± 0.89%) 2.83s (± 1.64%) 🟩-0.70s (-19.80%) 2.76s 2.96s
Total Time 10.98s (± 0.39%) 9.51s (± 0.63%) 🟩-1.47s (-13.41%) 9.39s 9.66s
material-ui - node (v14.15.1, x64)
Memory used 436,655k (± 0.00%) 420,496k (± 0.00%) 🟩-16,158k (- 3.70%) 420,464k 420,518k
Parse Time 1.88s (± 0.64%) 1.76s (± 0.51%) 🟩-0.12s (- 6.18%) 1.74s 1.78s
Bind Time 0.59s (± 1.16%) 0.52s (± 0.65%) 🟩-0.06s (-10.75%) 0.52s 0.53s
Check Time 12.91s (± 0.77%) 12.05s (± 0.49%) 🟩-0.85s (- 6.62%) 11.92s 12.22s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.37s (± 0.71%) 14.34s (± 0.46%) 🟩-1.03s (- 6.73%) 14.20s 14.52s
xstate - node (v14.15.1, x64)
Memory used 546,986k (± 0.00%) 500,240k (± 0.01%) 🟩-46,746k (- 8.55%) 500,117k 500,319k
Parse Time 2.60s (± 0.43%) 2.53s (± 0.44%) -0.08s (- 3.00%) 2.50s 2.55s
Bind Time 0.99s (± 1.23%) 0.80s (± 0.45%) 🟩-0.19s (-18.71%) 0.80s 0.81s
Check Time 1.52s (± 0.49%) 1.44s (± 0.36%) 🟩-0.08s (- 5.20%) 1.43s 1.45s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.19s (± 0.29%) 4.85s (± 0.19%) 🟩-0.34s (- 6.57%) 4.83s 4.86s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50765 10
Baseline main 10

Developer Information:

Download Benchmark

@jakebailey
Copy link
Member Author

I'm going to close this PR; the patches that I used for this have been saved in https://github.com/jakebailey/typeformer/tree/master/old/patches-after-perftesting, but I'd like to continue working (and I don't want to continue to spam this PR with my force pushes as I continue to rebase my stack).

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

Successfully merging this pull request may close these issues.

None yet

3 participants