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

createNodeArray always makes a new nodeArray when given a nodeArray #59135

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

iisaduan
Copy link
Member

@iisaduan iisaduan commented Jul 3, 2024

fixes #59115

this is the more extensive version of #59137, as it stands, this PR might be changing too much, and was set up for perf testing curiosity

@typescript-bot typescript-bot added Author: Team For Milestone Bug PRs that fix a bug with a specific milestone labels Jul 3, 2024
@iisaduan
Copy link
Member Author

iisaduan commented Jul 3, 2024

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jul 3, 2024

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
perf test this ✅ Started 👀 Results

@andrewbranch
Copy link
Member

I suspect this will be bad for other cases where reuse is actually intended, and I’m not sure whether that will show up on the perf suite, but we can see. I think it would probably be better to have just the one call we identified in checker.ts do something different to ensure it always creates a new NodeArray.

@typescript-bot
Copy link
Collaborator

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

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 62,153 62,153 ~ ~ ~ p=1.000 n=6
Types 50,242 50,242 ~ ~ ~ p=1.000 n=6
Memory used 194,508k (± 0.93%) 191,949k (± 0.10%) -2,559k (- 1.32%) 191,824k 192,311k p=0.013 n=6
Parse Time 1.94s (± 1.33%) 1.98s (± 0.98%) +0.03s (+ 1.71%) 1.96s 2.01s p=0.036 n=6
Bind Time 1.06s (± 1.28%) 1.06s (± 1.14%) ~ 1.05s 1.08s p=1.000 n=6
Check Time 13.85s (± 0.25%) 13.84s (± 0.38%) ~ 13.79s 13.92s p=0.746 n=6
Emit Time 4.00s (± 0.41%) 3.98s (± 0.35%) ~ 3.97s 4.01s p=0.071 n=6
Total Time 20.86s (± 0.21%) 20.87s (± 0.27%) ~ 20.80s 20.95s p=0.748 n=6
angular-1 - node (v18.15.0, x64)
Errors 5 5 ~ ~ ~ p=1.000 n=6
Symbols 944,114 944,114 ~ ~ ~ p=1.000 n=6
Types 407,050 407,050 ~ ~ ~ p=1.000 n=6
Memory used 1,218,365k (± 0.00%) 1,216,487k (± 0.01%) -1,878k (- 0.15%) 1,216,391k 1,216,660k p=0.005 n=6
Parse Time 6.64s (± 0.50%) 6.74s (± 1.05%) +0.09s (+ 1.40%) 6.63s 6.82s p=0.037 n=6
Bind Time 1.87s (± 1.12%) 1.86s (± 0.28%) ~ 1.86s 1.87s p=0.794 n=6
Check Time 30.64s (± 0.39%) 30.63s (± 0.22%) ~ 30.52s 30.71s p=0.936 n=6
Emit Time 13.54s (± 0.63%) 13.63s (± 0.27%) ~ 13.59s 13.70s p=0.064 n=6
Total Time 52.70s (± 0.21%) 52.86s (± 0.16%) +0.16s (+ 0.31%) 52.76s 52.96s p=0.020 n=6
mui-docs - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,129,960 2,129,960 ~ ~ ~ p=1.000 n=6
Types 927,566 927,566 ~ ~ ~ p=1.000 n=6
Memory used 2,104,755k (± 0.01%) 2,102,920k (± 0.01%) -1,835k (- 0.09%) 2,102,687k 2,103,128k p=0.005 n=6
Parse Time 9.64s (± 0.69%) 9.65s (± 0.38%) ~ 9.59s 9.70s p=1.000 n=6
Bind Time 3.38s (± 0.89%) 3.36s (± 0.49%) ~ 3.34s 3.38s p=0.106 n=6
Check Time 102.05s (± 1.25%) 102.46s (± 0.16%) ~ 102.26s 102.74s p=0.575 n=6
Emit Time 0.19s (± 2.67%) 0.19s (± 4.29%) ~ 0.19s 0.21s p=0.923 n=6
Total Time 115.27s (± 1.07%) 115.66s (± 0.16%) ~ 115.49s 116.00s p=0.689 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,225,496 1,225,496 ~ ~ ~ p=1.000 n=6
Types 261,459 261,459 ~ ~ ~ p=1.000 n=6
Memory used 2,342,085k (± 0.05%) 2,338,308k (± 0.06%) -3,777k (- 0.16%) 2,336,580k 2,340,161k p=0.005 n=6
Parse Time 6.02s (± 0.97%) 6.16s (± 0.73%) +0.14s (+ 2.30%) 6.10s 6.23s p=0.005 n=6
Bind Time 2.26s (± 1.10%) 2.29s (± 0.58%) +0.03s (+ 1.48%) 2.28s 2.31s p=0.029 n=6
Check Time 40.04s (± 0.31%) 40.17s (± 0.52%) ~ 39.97s 40.56s p=0.199 n=6
Emit Time 3.11s (± 5.16%) 3.16s (± 3.35%) ~ 3.04s 3.28s p=0.230 n=6
Total Time 51.44s (± 0.33%) 51.79s (± 0.46%) +0.35s (+ 0.68%) 51.55s 52.24s p=0.013 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,225,496 1,225,496 ~ ~ ~ p=1.000 n=6
Types 261,459 261,459 ~ ~ ~ p=1.000 n=6
Memory used 2,414,962k (± 0.02%) 2,413,137k (± 0.04%) -1,826k (- 0.08%) 2,411,939k 2,414,821k p=0.013 n=6
Parse Time 6.27s (± 0.44%) 6.44s (± 0.57%) +0.17s (+ 2.74%) 6.38s 6.49s p=0.005 n=6
Bind Time 2.03s (± 0.65%) 2.07s (± 0.59%) +0.04s (+ 1.72%) 2.05s 2.08s p=0.006 n=6
Check Time 40.60s (± 0.35%) 40.72s (± 0.32%) ~ 40.50s 40.90s p=0.092 n=6
Emit Time 3.20s (± 2.84%) 3.28s (± 3.56%) ~ 3.17s 3.47s p=0.199 n=6
Total Time 52.12s (± 0.28%) 52.52s (± 0.20%) +0.40s (+ 0.76%) 52.34s 52.62s p=0.005 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 258,194 258,194 ~ ~ ~ p=1.000 n=6
Types 104,737 104,737 ~ ~ ~ p=1.000 n=6
Memory used 427,464k (± 0.00%) 426,830k (± 0.01%) -634k (- 0.15%) 426,795k 426,902k p=0.005 n=6
Parse Time 4.09s (± 0.53%) 4.09s (± 0.61%) ~ 4.06s 4.13s p=0.746 n=6
Bind Time 1.62s (± 1.35%) 1.58s (± 0.69%) -0.04s (- 2.47%) 1.57s 1.60s p=0.009 n=6
Check Time 21.99s (± 0.24%) 22.00s (± 0.46%) ~ 21.90s 22.12s p=1.000 n=6
Emit Time 1.54s (± 0.90%) 1.56s (± 2.03%) ~ 1.52s 1.61s p=0.121 n=6
Total Time 29.24s (± 0.25%) 29.24s (± 0.45%) ~ 29.10s 29.38s p=0.936 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 35 35 ~ ~ ~ p=1.000 n=6
Symbols 224,565 224,565 ~ ~ ~ p=1.000 n=6
Types 93,734 93,734 ~ ~ ~ p=1.000 n=6
Memory used 369,509k (± 0.02%) 368,966k (± 0.02%) -543k (- 0.15%) 368,863k 369,108k p=0.005 n=6
Parse Time 2.78s (± 0.70%) 2.80s (± 1.00%) ~ 2.76s 2.83s p=0.124 n=6
Bind Time 1.58s (± 0.40%) 1.59s (± 0.84%) ~ 1.57s 1.61s p=0.203 n=6
Check Time 15.48s (± 0.46%) 15.48s (± 0.36%) ~ 15.43s 15.55s p=0.872 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 19.85s (± 0.39%) 19.88s (± 0.32%) ~ 19.80s 19.96s p=0.415 n=6
vscode - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,881,128 2,881,128 ~ ~ ~ p=1.000 n=6
Types 975,510 975,510 ~ ~ ~ p=1.000 n=6
Memory used 3,044,000k (± 0.00%) 3,039,572k (± 0.00%) -4,428k (- 0.15%) 3,039,534k 3,039,626k p=0.005 n=6
Parse Time 13.73s (± 0.34%) 13.81s (± 0.39%) +0.08s (+ 0.58%) 13.75s 13.88s p=0.030 n=6
Bind Time 4.30s (± 2.78%) 4.20s (± 0.39%) ~ 4.18s 4.22s p=0.227 n=6
Check Time 74.76s (± 2.63%) 76.01s (± 2.05%) ~ 74.10s 77.69s p=0.128 n=6
Emit Time 22.97s (± 8.45%) 21.93s (± 7.14%) ~ 20.43s 23.73s p=0.173 n=6
Total Time 115.74s (± 0.16%) 115.94s (± 0.25%) ~ 115.56s 116.39s p=0.298 n=6
webpack - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 267,117 267,117 ~ ~ ~ p=1.000 n=6
Types 108,775 108,775 ~ ~ ~ p=1.000 n=6
Memory used 411,572k (± 0.02%) 411,076k (± 0.02%) -496k (- 0.12%) 410,999k 411,222k p=0.005 n=6
Parse Time 3.17s (± 0.37%) 3.14s (± 0.75%) -0.03s (- 1.00%) 3.11s 3.18s p=0.040 n=6
Bind Time 1.41s (± 0.37%) 1.40s (± 0.54%) -0.01s (- 0.83%) 1.39s 1.41s p=0.020 n=6
Check Time 14.22s (± 0.32%) 14.20s (± 0.37%) ~ 14.14s 14.28s p=0.630 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 18.80s (± 0.27%) 18.75s (± 0.37%) ~ 18.67s 18.82s p=0.377 n=6
xstate-main - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 525,251 525,251 ~ ~ ~ p=1.000 n=6
Types 178,574 178,574 ~ ~ ~ p=1.000 n=6
Memory used 462,632k (± 0.08%) 462,427k (± 0.08%) ~ 461,957k 462,784k p=0.810 n=6
Parse Time 3.92s (± 0.46%) 3.90s (± 0.43%) ~ 3.88s 3.92s p=0.105 n=6
Bind Time 1.46s (± 1.10%) 1.46s (± 1.62%) ~ 1.43s 1.49s p=0.935 n=6
Check Time 22.07s (± 0.29%) 22.20s (± 0.34%) +0.13s (+ 0.60%) 22.12s 22.30s p=0.010 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 27.45s (± 0.21%) 27.57s (± 0.27%) +0.11s (+ 0.41%) 27.47s 27.66s p=0.031 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Compiler-Unions - node (v18.15.0, x64)
  • angular-1 - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-build-src-public-api - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • ts-pre-modules - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate-main - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

tsserver

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,295ms (± 0.38%) 2,316ms (± 0.21%) +21ms (+ 0.90%) 2,308ms 2,320ms p=0.008 n=6
Req 2 - geterr 5,078ms (± 0.34%) 5,081ms (± 0.68%) ~ 5,049ms 5,145ms p=0.689 n=6
Req 3 - references 264ms (± 0.37%) 261ms (± 0.95%) ~ 259ms 264ms p=0.058 n=6
Req 4 - navto 228ms (± 0.36%) 229ms (± 1.51%) ~ 223ms 232ms p=1.000 n=6
Req 5 - completionInfo count 1,357 1,357 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 87ms (± 3.76%) 83ms (± 6.00%) ~ 79ms 93ms p=0.182 n=6
CompilerTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,978ms (± 4.45%) 3,060ms (± 8.83%) ~ 2,885ms 3,570ms p=1.000 n=6
Req 2 - geterr 4,687ms (± 8.78%) 5,544ms (± 0.44%) 🔻+858ms (+18.30%) 5,498ms 5,569ms p=0.008 n=6
Req 3 - references 402ms (± 8.12%) 400ms (± 8.47%) ~ 349ms 428ms p=0.518 n=6
Req 4 - navto 330ms (± 2.44%) 343ms (± 2.37%) +13ms (+ 3.99%) 336ms 359ms p=0.018 n=6
Req 5 - completionInfo count 1,519 1,519 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 101ms (±11.38%) 117ms (±10.11%) ~ 102ms 127ms p=0.127 n=6
xstate-main-1-tsserver - node (v18.15.0, x64)
Req 1 - updateOpen 6,355ms (± 4.60%) 6,231ms (± 0.35%) ~ 6,197ms 6,253ms p=0.689 n=6
Req 2 - geterr 1,699ms (± 0.78%) 1,572ms (±10.82%) 🟩-128ms (- 7.50%) 1,350ms 1,699ms p=0.031 n=6
Req 3 - references 116ms (± 5.05%) 111ms (± 0.50%) ~ 110ms 111ms p=0.090 n=6
Req 4 - navto 590ms (± 2.07%) 593ms (± 2.72%) ~ 577ms 623ms p=1.000 n=6
Req 5 - completionInfo count 3,413 3,413 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 1,271ms (± 3.03%) 1,250ms (± 1.49%) ~ 1,230ms 1,273ms p=0.375 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • CompilerTSServer - node (v18.15.0, x64)
  • Compiler-UnionsTSServer - node (v18.15.0, x64)
  • xstate-main-1-tsserver - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

startup

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
tsc-startup - node (v18.15.0, x64)
Execution time 157.51ms (± 0.16%) 157.56ms (± 0.18%) ~ 156.52ms 159.86ms p=0.234 n=600
tsserver-startup - node (v18.15.0, x64)
Execution time 230.55ms (± 0.15%) 230.61ms (± 0.12%) +0.06ms (+ 0.02%) 229.47ms 234.59ms p=0.003 n=600
tsserverlibrary-startup - node (v18.15.0, x64)
Execution time 277.28ms (± 0.28%) 277.29ms (± 0.29%) ~ 270.32ms 285.84ms p=0.990 n=600
typescript-startup - node (v18.15.0, x64)
Execution time 225.90ms (± 0.13%) 226.04ms (± 0.16%) +0.14ms (+ 0.06%) 224.64ms 231.15ms p=0.002 n=600
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • tsc-startup - node (v18.15.0, x64)
  • tsserver-startup - node (v18.15.0, x64)
  • tsserverlibrary-startup - node (v18.15.0, x64)
  • typescript-startup - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
@DanielRosenwasser
Copy link
Member

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jul 5, 2024

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
perf test this ✅ Started 👀 Results

@typescript-bot
Copy link
Collaborator

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

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 62,153 62,153 ~ ~ ~ p=1.000 n=6
Types 50,242 50,242 ~ ~ ~ p=1.000 n=6
Memory used 194,038k (± 0.98%) 193,109k (± 0.97%) ~ 191,838k 195,545k p=0.066 n=6
Parse Time 1.57s (± 0.33%) 1.59s (± 0.47%) +0.02s (+ 1.17%) 1.58s 1.60s p=0.006 n=6
Bind Time 0.86s (± 0.95%) 0.86s (± 0.95%) ~ 0.85s 0.87s p=1.000 n=6
Check Time 11.21s (± 0.43%) 11.19s (± 0.62%) ~ 11.14s 11.33s p=0.517 n=6
Emit Time 3.30s (± 0.49%) 3.24s (± 1.06%) -0.05s (- 1.62%) 3.21s 3.29s p=0.012 n=6
Total Time 16.94s (± 0.37%) 16.88s (± 0.32%) ~ 16.84s 16.98s p=0.146 n=6
angular-1 - node (v18.15.0, x64)
Errors 5 5 ~ ~ ~ p=1.000 n=6
Symbols 944,114 944,114 ~ ~ ~ p=1.000 n=6
Types 407,050 407,050 ~ ~ ~ p=1.000 n=6
Memory used 1,218,366k (± 0.00%) 1,216,432k (± 0.01%) -1,934k (- 0.16%) 1,216,276k 1,216,715k p=0.005 n=6
Parse Time 7.93s (± 0.55%) 7.94s (± 0.92%) ~ 7.86s 8.04s p=0.747 n=6
Bind Time 2.21s (± 0.66%) 2.21s (± 1.23%) ~ 2.16s 2.24s p=0.249 n=6
Check Time 35.66s (± 0.14%) 35.66s (± 0.63%) ~ 35.39s 36.08s p=0.468 n=6
Emit Time 16.17s (± 0.40%) 16.20s (± 0.14%) ~ 16.17s 16.23s p=0.333 n=6
Total Time 61.96s (± 0.15%) 62.01s (± 0.33%) ~ 61.69s 62.31s p=0.629 n=6
mui-docs - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,130,140 2,130,140 ~ ~ ~ p=1.000 n=6
Types 927,634 927,634 ~ ~ ~ p=1.000 n=6
Memory used 2,106,260k (± 0.01%) 2,104,385k (± 0.00%) -1,876k (- 0.09%) 2,104,255k 2,104,480k p=0.005 n=6
Parse Time 9.66s (± 0.58%) 9.62s (± 0.48%) ~ 9.58s 9.71s p=0.261 n=6
Bind Time 3.41s (± 1.02%) 3.36s (± 0.77%) -0.05s (- 1.52%) 3.32s 3.39s p=0.034 n=6
Check Time 100.53s (± 1.51%) 102.77s (± 0.16%) +2.23s (+ 2.22%) 102.56s 103.01s p=0.008 n=6
Emit Time 0.58s (±160.81%) 0.19s (± 2.13%) ~ 0.19s 0.20s p=0.073 n=6
Total Time 114.19s (± 1.31%) 115.94s (± 0.16%) +1.74s (+ 1.53%) 115.70s 116.17s p=0.013 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,225,497 1,225,497 ~ ~ ~ p=1.000 n=6
Types 261,459 261,459 ~ ~ ~ p=1.000 n=6
Memory used 2,340,932k (± 0.05%) 2,338,805k (± 0.02%) -2,127k (- 0.09%) 2,337,785k 2,339,313k p=0.005 n=6
Parse Time 5.03s (± 1.35%) 5.10s (± 0.84%) ~ 5.05s 5.15s p=0.078 n=6
Bind Time 1.91s (± 0.54%) 1.94s (± 0.54%) +0.03s (+ 1.49%) 1.92s 1.95s p=0.006 n=6
Check Time 34.19s (± 0.43%) 34.06s (± 0.59%) ~ 33.74s 34.25s p=0.521 n=6
Emit Time 2.65s (± 2.72%) 2.67s (± 1.99%) ~ 2.58s 2.72s p=0.378 n=6
Total Time 43.79s (± 0.50%) 43.77s (± 0.49%) ~ 43.44s 43.95s p=0.689 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,225,497 1,225,497 ~ ~ ~ p=1.000 n=6
Types 261,459 261,459 ~ ~ ~ p=1.000 n=6
Memory used 2,415,374k (± 0.04%) 2,412,339k (± 0.04%) -3,035k (- 0.13%) 2,410,856k 2,413,508k p=0.005 n=6
Parse Time 6.31s (± 0.28%) 6.44s (± 0.63%) +0.13s (+ 2.09%) 6.40s 6.49s p=0.005 n=6
Bind Time 2.02s (± 0.60%) 2.06s (± 0.50%) +0.04s (+ 1.98%) 2.05s 2.08s p=0.005 n=6
Check Time 40.75s (± 0.51%) 40.65s (± 0.47%) ~ 40.31s 40.85s p=0.810 n=6
Emit Time 3.24s (± 6.42%) 3.27s (± 2.88%) ~ 3.16s 3.39s p=0.378 n=6
Total Time 52.33s (± 0.63%) 52.45s (± 0.28%) ~ 52.19s 52.61s p=0.471 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 258,195 258,195 ~ ~ ~ p=1.000 n=6
Types 104,737 104,737 ~ ~ ~ p=1.000 n=6
Memory used 427,494k (± 0.01%) 426,883k (± 0.01%) -611k (- 0.14%) 426,856k 426,915k p=0.005 n=6
Parse Time 3.29s (± 0.83%) 3.29s (± 0.86%) ~ 3.26s 3.34s p=0.935 n=6
Bind Time 1.31s (± 1.60%) 1.29s (± 0.49%) ~ 1.28s 1.30s p=0.060 n=6
Check Time 17.82s (± 0.44%) 17.85s (± 0.30%) ~ 17.76s 17.92s p=0.521 n=6
Emit Time 1.26s (± 1.30%) 1.26s (± 1.27%) ~ 1.25s 1.29s p=0.623 n=6
Total Time 23.68s (± 0.36%) 23.70s (± 0.13%) ~ 23.65s 23.74s p=0.936 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 35 35 ~ ~ ~ p=1.000 n=6
Symbols 224,565 224,565 ~ ~ ~ p=1.000 n=6
Types 93,734 93,734 ~ ~ ~ p=1.000 n=6
Memory used 369,584k (± 0.03%) 368,971k (± 0.02%) -613k (- 0.17%) 368,851k 369,032k p=0.005 n=6
Parse Time 3.46s (± 0.24%) 3.47s (± 0.97%) ~ 3.43s 3.51s p=0.326 n=6
Bind Time 1.95s (± 1.50%) 1.94s (± 1.42%) ~ 1.90s 1.97s p=0.464 n=6
Check Time 19.14s (± 0.22%) 19.10s (± 0.28%) ~ 19.05s 19.18s p=0.226 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 24.55s (± 0.17%) 24.52s (± 0.25%) ~ 24.47s 24.62s p=0.334 n=6
vscode - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,882,038 2,882,038 ~ ~ ~ p=1.000 n=6
Types 975,696 975,696 ~ ~ ~ p=1.000 n=6
Memory used 3,045,237k (± 0.00%) 3,040,755k (± 0.00%) -4,482k (- 0.15%) 3,040,731k 3,040,784k p=0.005 n=6
Parse Time 11.45s (± 0.34%) 11.53s (± 0.52%) +0.08s (+ 0.71%) 11.48s 11.65s p=0.013 n=6
Bind Time 3.49s (± 0.31%) 3.48s (± 0.35%) ~ 3.46s 3.49s p=0.078 n=6
Check Time 65.97s (± 1.59%) 66.33s (± 2.12%) ~ 63.49s 67.15s p=0.423 n=6
Emit Time 18.00s (± 6.14%) 17.84s (± 7.70%) ~ 17.22s 20.64s p=0.689 n=6
Total Time 98.91s (± 0.16%) 99.17s (± 0.19%) +0.27s (+ 0.27%) 98.95s 99.45s p=0.037 n=6
webpack - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 267,117 267,117 ~ ~ ~ p=1.000 n=6
Types 108,775 108,775 ~ ~ ~ p=1.000 n=6
Memory used 411,600k (± 0.02%) 411,049k (± 0.01%) -552k (- 0.13%) 411,015k 411,116k p=0.005 n=6
Parse Time 3.82s (± 0.49%) 3.76s (± 0.68%) -0.06s (- 1.61%) 3.73s 3.79s p=0.005 n=6
Bind Time 1.70s (± 0.48%) 1.67s (± 1.28%) -0.03s (- 1.86%) 1.65s 1.71s p=0.033 n=6
Check Time 16.77s (± 0.49%) 16.75s (± 0.50%) ~ 16.65s 16.88s p=0.936 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 22.30s (± 0.41%) 22.19s (± 0.37%) ~ 22.08s 22.32s p=0.062 n=6
xstate-main - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 525,251 525,251 ~ ~ ~ p=1.000 n=6
Types 178,574 178,574 ~ ~ ~ p=1.000 n=6
Memory used 462,716k (± 0.08%) 462,269k (± 0.08%) ~ 461,937k 462,689k p=0.093 n=6
Parse Time 3.93s (± 0.49%) 3.90s (± 0.45%) -0.03s (- 0.81%) 3.87s 3.92s p=0.019 n=6
Bind Time 1.45s (± 1.04%) 1.46s (± 0.67%) ~ 1.45s 1.47s p=0.082 n=6
Check Time 22.20s (± 0.51%) 22.19s (± 0.15%) ~ 22.15s 22.23s p=0.688 n=6
Emit Time 0.01s (±109.43%) 0.00s ~ ~ ~ p=0.071 n=6
Total Time 27.58s (± 0.45%) 27.56s (± 0.09%) ~ 27.54s 27.60s p=0.372 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Compiler-Unions - node (v18.15.0, x64)
  • angular-1 - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-build-src-public-api - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • ts-pre-modules - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate-main - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

tsserver

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,292ms (± 0.82%) 2,301ms (± 0.60%) ~ 2,278ms 2,316ms p=0.470 n=6
Req 2 - geterr 5,086ms (± 0.51%) 5,098ms (± 0.71%) ~ 5,069ms 5,160ms p=1.000 n=6
Req 3 - references 266ms (± 1.56%) 261ms (± 0.71%) -5ms (- 1.82%) 259ms 263ms p=0.011 n=6
Req 4 - navto 227ms (± 1.16%) 228ms (± 1.02%) ~ 225ms 231ms p=0.743 n=6
Req 5 - completionInfo count 1,357 1,357 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 86ms (± 7.44%) 80ms (± 2.29%) ~ 79ms 83ms p=0.366 n=6
CompilerTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,426ms (± 1.07%) 2,413ms (± 0.57%) ~ 2,394ms 2,430ms p=0.378 n=6
Req 2 - geterr 3,796ms (± 0.26%) 3,796ms (± 0.29%) ~ 3,776ms 3,808ms p=0.810 n=6
Req 3 - references 277ms (± 0.53%) 275ms (± 1.00%) ~ 272ms 279ms p=0.196 n=6
Req 4 - navto 226ms (± 0.33%) 239ms (± 2.37%) 🔻+12ms (+ 5.45%) 227ms 241ms p=0.006 n=6
Req 5 - completionInfo count 1,519 1,519 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 74ms (± 7.87%) 72ms (± 7.70%) ~ 68ms 80ms p=0.571 n=6
xstate-main-1-tsserver - node (v18.15.0, x64)
Req 1 - updateOpen 6,220ms (± 0.25%) 6,360ms (± 4.62%) ~ 6,196ms 6,956ms p=0.229 n=6
Req 2 - geterr 1,689ms (± 0.79%) 1,634ms (± 8.39%) ~ 1,356ms 1,722ms p=0.575 n=6
Req 3 - references 114ms (± 4.51%) 113ms (± 3.26%) ~ 111ms 120ms p=0.461 n=6
Req 4 - navto 604ms (± 2.86%) 598ms (± 1.02%) ~ 588ms 606ms p=0.810 n=6
Req 5 - completionInfo count 3,413 3,413 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 1,266ms (± 1.71%) 1,261ms (± 1.97%) ~ 1,211ms 1,277ms p=0.689 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • CompilerTSServer - node (v18.15.0, x64)
  • Compiler-UnionsTSServer - node (v18.15.0, x64)
  • xstate-main-1-tsserver - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

startup

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
tsc-startup - node (v18.15.0, x64)
Execution time 230.12ms (± 0.18%) 230.03ms (± 0.17%) -0.09ms (- 0.04%) 228.28ms 232.96ms p=0.015 n=600
tsserver-startup - node (v18.15.0, x64)
Execution time 232.05ms (± 0.16%) 232.02ms (± 0.14%) ~ 230.48ms 237.80ms p=0.735 n=600
tsserverlibrary-startup - node (v18.15.0, x64)
Execution time 336.61ms (± 0.29%) 336.67ms (± 0.31%) ~ 328.08ms 346.96ms p=0.219 n=600
typescript-startup - node (v18.15.0, x64)
Execution time 276.82ms (± 0.29%) 276.45ms (± 0.30%) -0.37ms (- 0.13%) 268.85ms 283.83ms p=0.000 n=600
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • tsc-startup - node (v18.15.0, x64)
  • tsserver-startup - node (v18.15.0, x64)
  • tsserverlibrary-startup - node (v18.15.0, x64)
  • typescript-startup - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

Comment on lines -1177 to -1178
Debug.attachNodeArrayDebugInfo(elements);
return elements;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels bit scary to me; I do think we need to think about how we should be defining what this function is actually supposed to do, i.e. come up with create and update separately or something (what you mention in #59137).

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.

Scanner crash in services (TypeScript 5.5)
5 participants