Use iterators to avoid calculating all properties of UnionOrIntersectionType
For #51188
Profiling gave me this big chunk:

getPropertiesOfUnionOrIntersectionType is the biggest chunk. What I noticed was that getReducedType didn't actually need all of the properties; all it wants to know is whether or not some property satisfies isNeverReducedProperty.
By fiddling with the code a bit, we can convert getPropertiesOfUnionOrIntersectionType into an iterator, allowing callers to stop calculating properties early if that benefits them. And, it turns out that most callers of getPropertiesOfUnionOrIntersectionType (all but one!) indeed don't actually care about every property, only whichever one matches some predicate.
After, the same code looks like:

hyperfine, for this test case:
Benchmark 1: main
Time (mean ± σ): 19.403 s ± 0.300 s [User: 16.662 s, System: 2.735 s]
Range (min … max): 18.933 s … 19.988 s 20 runs
Benchmark 2: new
Time (mean ± σ): 13.450 s ± 0.074 s [User: 11.974 s, System: 1.470 s]
Range (min … max): 13.341 s … 13.612 s 20 runs
Summary
'new' ran
1.44 ± 0.02 times faster than 'main'
aka 44% faster aka 1.44x faster aka 31% less time.
@typescript-bot perf test this
Heya @jakebailey, I've started to run the perf test suite on this PR at c53294b9fdad43274a4d12b99288fbe0d69d6fac. You can monitor the build here.
Update: The results are in!
@jakebailey The results of the perf run you requested are in!
Here they are:
Compiler
Comparison Report - main..53346| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v18.10.0, x64) | ||||||
| Memory used | 361,557k (± 0.01%) | 361,616k (± 0.01%) | +59k (+ 0.02%) | 361,563k | 361,643k | p=0.016 n=6 |
| Parse Time | 3.37s (± 0.35%) | 3.39s (± 0.48%) | +0.02s (+ 0.64%) | 3.37s | 3.41s | p=0.042 n=6 |
| Bind Time | 1.12s (± 0.49%) | 1.12s (± 1.08%) | ~ | 1.11s | 1.14s | p=0.855 n=6 |
| Check Time | 8.70s (± 0.37%) | 8.73s (± 0.60%) | ~ | 8.66s | 8.78s | p=0.375 n=6 |
| Emit Time | 7.42s (± 0.93%) | 7.45s (± 0.84%) | ~ | 7.39s | 7.56s | p=0.230 n=6 |
| Total Time | 20.60s (± 0.47%) | 20.68s (± 0.48%) | ~ | 20.56s | 20.82s | p=0.149 n=6 |
| Compiler-Unions - node (v18.10.0, x64) | ||||||
| Memory used | 192,647k (± 1.50%) | 185,819k (± 1.56%) | 🟩-6,829k (- 3.54%) | 183,879k | 189,673k | p=0.005 n=6 |
| Parse Time | 1.49s (± 0.89%) | 1.50s (± 1.24%) | ~ | 1.48s | 1.53s | p=0.931 n=6 |
| Bind Time | 0.77s (± 0.53%) | 0.77s (± 0.53%) | ~ | 0.76s | 0.77s | p=0.218 n=6 |
| Check Time | 9.36s (± 0.79%) | 9.34s (± 0.80%) | ~ | 9.21s | 9.42s | p=0.873 n=6 |
| Emit Time | 2.72s (± 0.79%) | 2.74s (± 0.68%) | ~ | 2.73s | 2.78s | p=0.052 n=6 |
| Total Time | 14.34s (± 0.55%) | 14.36s (± 0.63%) | ~ | 14.21s | 14.44s | p=0.689 n=6 |
| Monaco - node (v18.10.0, x64) | ||||||
| Memory used | 346,121k (± 0.01%) | 346,141k (± 0.01%) | ~ | 346,108k | 346,176k | p=0.378 n=6 |
| Parse Time | 2.58s (± 1.33%) | 2.58s (± 1.12%) | ~ | 2.54s | 2.63s | p=1.000 n=6 |
| Bind Time | 1.00s (± 0.98%) | 1.01s (± 0.63%) | +0.01s (+ 1.17%) | 1.00s | 1.02s | p=0.031 n=6 |
| Check Time | 6.97s (± 0.44%) | 7.00s (± 0.31%) | ~ | 6.97s | 7.02s | p=0.088 n=6 |
| Emit Time | 4.24s (± 0.38%) | 4.26s (± 0.94%) | ~ | 4.20s | 4.30s | p=0.332 n=6 |
| Total Time | 14.79s (± 0.32%) | 14.84s (± 0.42%) | ~ | 14.78s | 14.94s | p=0.090 n=6 |
| TFS - node (v18.10.0, x64) | ||||||
| Memory used | 300,454k (± 0.01%) | 300,440k (± 0.01%) | ~ | 300,407k | 300,483k | p=0.423 n=6 |
| Parse Time | 2.06s (± 0.95%) | 2.06s (± 0.94%) | ~ | 2.03s | 2.08s | p=1.000 n=6 |
| Bind Time | 1.13s (± 0.46%) | 1.14s (± 0.96%) | ~ | 1.12s | 1.15s | p=0.149 n=6 |
| Check Time | 6.47s (± 0.29%) | 6.50s (± 0.25%) | +0.03s (+ 0.46%) | 6.48s | 6.52s | p=0.023 n=6 |
| Emit Time | 3.86s (± 0.63%) | 3.85s (± 0.97%) | ~ | 3.81s | 3.91s | p=0.808 n=6 |
| Total Time | 13.52s (± 0.36%) | 13.55s (± 0.18%) | ~ | 13.52s | 13.58s | p=0.259 n=6 |
| material-ui - node (v18.10.0, x64) | ||||||
| Memory used | 478,171k (± 0.01%) | 478,428k (± 0.01%) | +258k (+ 0.05%) | 478,394k | 478,491k | p=0.005 n=6 |
| Parse Time | 2.98s (± 3.24%) | 3.03s (± 2.39%) | ~ | 2.94s | 3.09s | p=0.332 n=6 |
| Bind Time | 1.00s (± 7.39%) | 0.95s (± 8.14%) | ~ | 0.89s | 1.07s | p=0.253 n=6 |
| Check Time | 17.05s (± 0.70%) | 17.14s (± 0.48%) | ~ | 17.07s | 17.28s | p=0.173 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 21.03s (± 0.53%) | 21.13s (± 0.44%) | ~ | 21.04s | 21.29s | p=0.172 n=6 |
| xstate - node (v18.10.0, x64) | ||||||
| Memory used | 553,195k (± 0.01%) | 553,218k (± 0.02%) | ~ | 553,073k | 553,335k | p=0.810 n=6 |
| Parse Time | 3.75s (± 0.34%) | 3.76s (± 0.62%) | ~ | 3.73s | 3.80s | p=0.278 n=6 |
| Bind Time | 1.69s (± 0.71%) | 1.69s (± 0.53%) | ~ | 1.68s | 1.70s | p=0.676 n=6 |
| Check Time | 2.78s (± 0.85%) | 2.88s (± 1.31%) | +0.10s (+ 3.72%) | 2.84s | 2.93s | p=0.005 n=6 |
| Emit Time | 0.08s (± 0.00%) | 0.08s (± 4.99%) | ~ | 0.08s | 0.09s | p=0.405 n=6 |
| Total Time | 8.31s (± 0.35%) | 8.42s (± 0.42%) | +0.11s (+ 1.28%) | 8.38s | 8.47s | p=0.005 n=6 |
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 360,896k (± 0.01%) | 360,965k (± 0.00%) | +70k (+ 0.02%) | 360,940k | 360,988k | p=0.005 n=6 |
| Parse Time | 3.52s (± 0.69%) | 3.52s (± 0.64%) | ~ | 3.50s | 3.55s | p=1.000 n=6 |
| Bind Time | 1.18s (± 0.69%) | 1.19s (± 0.68%) | ~ | 1.18s | 1.20s | p=0.077 n=6 |
| Check Time | 9.46s (± 0.52%) | 9.49s (± 0.32%) | ~ | 9.44s | 9.53s | p=0.141 n=6 |
| Emit Time | 7.93s (± 0.68%) | 7.88s (± 0.44%) | ~ | 7.84s | 7.93s | p=0.172 n=6 |
| Total Time | 22.10s (± 0.38%) | 22.10s (± 0.24%) | ~ | 22.04s | 22.18s | p=0.810 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,531k (± 0.04%) | 186,690k (± 0.90%) | 🟩-5,842k (- 3.03%) | 185,564k | 188,994k | p=0.005 n=6 |
| Parse Time | 1.57s (± 1.64%) | 1.58s (± 1.48%) | ~ | 1.54s | 1.61s | p=0.618 n=6 |
| Bind Time | 0.82s (± 0.77%) | 0.83s (± 0.66%) | ~ | 0.82s | 0.83s | p=0.201 n=6 |
| Check Time | 10.08s (± 0.62%) | 10.04s (± 0.66%) | ~ | 9.96s | 10.12s | p=0.199 n=6 |
| Emit Time | 2.99s (± 0.63%) | 2.99s (± 0.35%) | ~ | 2.98s | 3.01s | p=0.744 n=6 |
| Total Time | 15.47s (± 0.30%) | 15.44s (± 0.58%) | ~ | 15.33s | 15.54s | p=0.687 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,434k (± 0.01%) | 345,448k (± 0.00%) | ~ | 345,431k | 345,461k | p=0.128 n=6 |
| Parse Time | 2.72s (± 0.36%) | 2.73s (± 0.50%) | ~ | 2.71s | 2.75s | p=0.138 n=6 |
| Bind Time | 1.09s (± 0.50%) | 1.09s (± 0.00%) | ~ | 1.09s | 1.09s | p=0.071 n=6 |
| Check Time | 7.66s (± 0.32%) | 7.71s (± 0.59%) | +0.05s (+ 0.67%) | 7.68s | 7.80s | p=0.024 n=6 |
| Emit Time | 4.42s (± 0.57%) | 4.46s (± 1.15%) | ~ | 4.38s | 4.53s | p=0.171 n=6 |
| Total Time | 15.89s (± 0.19%) | 16.00s (± 0.51%) | +0.11s (+ 0.67%) | 15.93s | 16.12s | p=0.006 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 299,792k (± 0.01%) | 299,792k (± 0.01%) | ~ | 299,751k | 299,824k | p=0.936 n=6 |
| Parse Time | 2.17s (± 0.48%) | 2.18s (± 0.84%) | ~ | 2.16s | 2.20s | p=0.249 n=6 |
| Bind Time | 1.24s (± 0.88%) | 1.24s (± 0.88%) | ~ | 1.22s | 1.25s | p=1.000 n=6 |
| Check Time | 7.17s (± 0.57%) | 7.16s (± 0.63%) | ~ | 7.11s | 7.22s | p=0.748 n=6 |
| Emit Time | 4.31s (± 0.70%) | 4.35s (± 0.70%) | +0.04s (+ 1.04%) | 4.31s | 4.39s | p=0.035 n=6 |
| Total Time | 14.88s (± 0.33%) | 14.93s (± 0.42%) | ~ | 14.86s | 15.03s | p=0.148 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 477,460k (± 0.02%) | 477,732k (± 0.01%) | +271k (+ 0.06%) | 477,648k | 477,769k | p=0.005 n=6 |
| Parse Time | 3.21s (± 0.36%) | 3.21s (± 0.91%) | ~ | 3.17s | 3.24s | p=0.513 n=6 |
| Bind Time | 0.95s (± 0.54%) | 0.95s (± 0.57%) | ~ | 0.95s | 0.96s | p=0.640 n=6 |
| Check Time | 17.96s (± 0.49%) | 18.18s (± 0.65%) | +0.23s (+ 1.26%) | 18.08s | 18.41s | p=0.005 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 22.12s (± 0.45%) | 22.35s (± 0.56%) | +0.23s (+ 1.03%) | 22.24s | 22.59s | p=0.008 n=6 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 550,802k (± 0.02%) | 550,846k (± 0.02%) | ~ | 550,728k | 550,927k | p=0.298 n=6 |
| Parse Time | 3.94s (± 0.35%) | 3.96s (± 0.68%) | ~ | 3.93s | 4.01s | p=0.088 n=6 |
| Bind Time | 1.80s (± 0.30%) | 1.79s (± 0.50%) | ~ | 1.78s | 1.80s | p=0.341 n=6 |
| Check Time | 3.03s (± 0.39%) | 3.10s (± 0.58%) | +0.07s (+ 2.25%) | 3.08s | 3.13s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 0.00%) | ~ | 0.09s | 0.09s | p=1.000 n=6 |
| Total Time | 8.86s (± 0.27%) | 8.94s (± 0.39%) | +0.08s (+ 0.96%) | 8.90s | 9.00s | p=0.006 n=6 |
| Angular - node (v14.15.1, x64) | ||||||
| Memory used | 354,718k (± 0.01%) | 354,742k (± 0.01%) | ~ | 354,697k | 354,773k | p=0.230 n=6 |
| Parse Time | 3.58s (± 0.55%) | 3.60s (± 0.71%) | ~ | 3.56s | 3.63s | p=0.169 n=6 |
| Bind Time | 1.23s (± 0.45%) | 1.23s (± 0.66%) | ~ | 1.22s | 1.24s | p=0.088 n=6 |
| Check Time | 9.70s (± 0.46%) | 9.74s (± 0.36%) | ~ | 9.70s | 9.80s | p=0.171 n=6 |
| Emit Time | 8.34s (± 0.90%) | 8.37s (± 0.94%) | ~ | 8.24s | 8.48s | p=0.689 n=6 |
| Total Time | 22.83s (± 0.49%) | 22.93s (± 0.32%) | ~ | 22.84s | 23.05s | p=0.172 n=6 |
| Compiler-Unions - node (v14.15.1, x64) | ||||||
| Memory used | 187,762k (± 0.01%) | 180,820k (± 0.02%) | 🟩-6,943k (- 3.70%) | 180,781k | 180,864k | p=0.005 n=6 |
| Parse Time | 1.60s (± 0.73%) | 1.60s (± 0.51%) | ~ | 1.59s | 1.61s | p=0.738 n=6 |
| Bind Time | 0.84s (± 0.65%) | 0.85s (± 0.48%) | ~ | 0.84s | 0.85s | p=0.282 n=6 |
| Check Time | 10.16s (± 0.53%) | 10.09s (± 0.49%) | ~ | 10.02s | 10.16s | p=0.054 n=6 |
| Emit Time | 3.13s (± 1.03%) | 3.12s (± 1.59%) | ~ | 3.03s | 3.16s | p=0.810 n=6 |
| Total Time | 15.73s (± 0.41%) | 15.66s (± 0.50%) | ~ | 15.57s | 15.76s | p=0.126 n=6 |
| Monaco - node (v14.15.1, x64) | ||||||
| Memory used | 340,407k (± 0.00%) | 340,410k (± 0.01%) | ~ | 340,355k | 340,449k | p=0.748 n=6 |
| Parse Time | 2.84s (± 0.75%) | 2.84s (± 0.52%) | ~ | 2.82s | 2.86s | p=0.869 n=6 |
| Bind Time | 1.10s (± 1.06%) | 1.11s (± 0.47%) | ~ | 1.10s | 1.11s | p=0.191 n=6 |
| Check Time | 8.04s (± 0.30%) | 8.04s (± 0.33%) | ~ | 7.99s | 8.07s | p=0.871 n=6 |
| Emit Time | 4.68s (± 0.63%) | 4.70s (± 0.63%) | ~ | 4.67s | 4.74s | p=0.294 n=6 |
| Total Time | 16.65s (± 0.21%) | 16.68s (± 0.23%) | ~ | 16.64s | 16.73s | p=0.169 n=6 |
| TFS - node (v14.15.1, x64) | ||||||
| Memory used | 294,862k (± 0.00%) | 294,871k (± 0.00%) | +9k (+ 0.00%) | 294,856k | 294,877k | p=0.045 n=6 |
| Parse Time | 2.40s (± 0.34%) | 2.40s (± 0.94%) | ~ | 2.37s | 2.42s | p=0.415 n=6 |
| Bind Time | 1.07s (± 0.48%) | 1.07s (± 0.51%) | ~ | 1.06s | 1.07s | p=0.640 n=6 |
| Check Time | 7.46s (± 0.60%) | 7.47s (± 0.65%) | ~ | 7.41s | 7.54s | p=0.747 n=6 |
| Emit Time | 4.29s (± 1.08%) | 4.29s (± 0.81%) | ~ | 4.24s | 4.34s | p=0.569 n=6 |
| Total Time | 15.21s (± 0.41%) | 15.23s (± 0.52%) | ~ | 15.13s | 15.34s | p=0.468 n=6 |
| material-ui - node (v14.15.1, x64) | ||||||
| Memory used | 472,968k (± 0.01%) | 473,254k (± 0.00%) | +286k (+ 0.06%) | 473,230k | 473,281k | p=0.005 n=6 |
| Parse Time | 3.33s (± 0.29%) | 3.35s (± 0.41%) | ~ | 3.33s | 3.37s | p=0.054 n=6 |
| Bind Time | 1.00s (± 0.41%) | 1.01s (± 0.51%) | ~ | 1.00s | 1.01s | p=0.112 n=6 |
| Check Time | 18.97s (± 0.46%) | 19.17s (± 0.66%) | +0.20s (+ 1.06%) | 19.03s | 19.36s | p=0.020 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 23.30s (± 0.41%) | 23.52s (± 0.60%) | +0.22s (+ 0.93%) | 23.36s | 23.73s | p=0.020 n=6 |
| xstate - node (v14.15.1, x64) | ||||||
| Memory used | 539,282k (± 0.01%) | 539,319k (± 0.00%) | ~ | 539,297k | 539,358k | p=0.054 n=6 |
| Parse Time | 4.22s (± 0.36%) | 4.26s (± 0.42%) | +0.04s (+ 0.87%) | 4.23s | 4.28s | p=0.014 n=6 |
| Bind Time | 1.68s (± 0.49%) | 1.68s (± 0.73%) | ~ | 1.66s | 1.69s | p=1.000 n=6 |
| Check Time | 3.19s (± 0.68%) | 3.25s (± 0.83%) | +0.06s (+ 1.72%) | 3.21s | 3.29s | p=0.010 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.10s (± 4.15%) | +0.01s (+ 9.26%) | 0.09s | 0.10s | p=0.007 n=6 |
| Total Time | 9.18s (± 0.23%) | 9.28s (± 0.57%) | +0.10s (+ 1.03%) | 9.23s | 9.37s | p=0.005 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v18.10.0, x64)
- node (v16.17.1, x64)
- node (v14.15.1, x64)
- Angular - node (v18.10.0, x64)
- Angular - node (v16.17.1, x64)
- Angular - node (v14.15.1, x64)
- Compiler-Unions - node (v18.10.0, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Compiler-Unions - node (v14.15.1, x64)
- Monaco - node (v18.10.0, x64)
- Monaco - node (v16.17.1, x64)
- Monaco - node (v14.15.1, x64)
- TFS - node (v18.10.0, x64)
- TFS - node (v16.17.1, x64)
- TFS - node (v14.15.1, x64)
- material-ui - node (v18.10.0, x64)
- material-ui - node (v16.17.1, x64)
- material-ui - node (v14.15.1, x64)
- xstate - node (v18.10.0, x64)
- xstate - node (v16.17.1, x64)
- xstate - node (v14.15.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
TSServer
Comparison Report - main..53346| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Compiler-UnionsTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 2,381ms (± 0.52%) | 2,392ms (± 0.71%) | ~ | 2,373ms | 2,411ms | p=0.230 n=6 |
| Req 2 - geterr | 5,340ms (± 0.54%) | 5,382ms (± 0.63%) | ~ | 5,334ms | 5,426ms | p=0.066 n=6 |
| Req 3 - references | 338ms (± 1.43%) | 338ms (± 0.83%) | ~ | 332ms | 340ms | p=1.000 n=6 |
| Req 4 - navto | 279ms (± 0.27%) | 280ms (± 0.58%) | ~ | 278ms | 282ms | p=0.117 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 80ms (± 6.30%) | 83ms (± 0.76%) | ~ | 82ms | 84ms | p=0.157 n=6 |
| CompilerTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 2,510ms (± 1.07%) | 2,517ms (± 0.89%) | ~ | 2,492ms | 2,544ms | p=0.575 n=6 |
| Req 2 - geterr | 4,012ms (± 0.58%) | 4,012ms (± 0.68%) | ~ | 3,979ms | 4,045ms | p=0.936 n=6 |
| Req 3 - references | 349ms (± 1.03%) | 349ms (± 0.97%) | ~ | 343ms | 353ms | p=0.936 n=6 |
| Req 4 - navto | 290ms (± 1.01%) | 294ms (± 1.03%) | ~ | 289ms | 298ms | p=0.102 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 79ms (± 6.67%) | 83ms (± 3.96%) | ~ | 79ms | 87ms | p=0.225 n=6 |
| xstateTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 3,025ms (± 0.89%) | 3,021ms (± 0.43%) | ~ | 3,009ms | 3,038ms | p=1.000 n=6 |
| Req 2 - geterr | 1,624ms (± 1.04%) | 1,645ms (± 0.87%) | ~ | 1,628ms | 1,662ms | p=0.128 n=6 |
| Req 3 - references | 108ms (± 1.98%) | 108ms (± 1.65%) | ~ | 105ms | 110ms | p=1.000 n=6 |
| Req 4 - navto | 359ms (± 1.22%) | 359ms (± 2.26%) | ~ | 354ms | 375ms | p=0.369 n=6 |
| Req 5 - completionInfo count | 2,861 (± 0.00%) | 2,861 (± 0.00%) | ~ | 2,861 | 2,861 | p=1.000 n=6 |
| Req 5 - completionInfo | 382ms (± 1.51%) | 374ms (± 1.68%) | -8ms (- 2.01%) | 362ms | 379ms | p=0.036 n=6 |
| Compiler-UnionsTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 2,507ms (± 0.63%) | 2,508ms (± 0.91%) | ~ | 2,474ms | 2,542ms | p=1.000 n=6 |
| Req 2 - geterr | 5,749ms (± 0.70%) | 5,791ms (± 0.76%) | ~ | 5,726ms | 5,836ms | p=0.149 n=6 |
| Req 3 - references | 348ms (± 0.85%) | 345ms (± 0.41%) | ~ | 343ms | 347ms | p=0.142 n=6 |
| Req 4 - navto | 279ms (± 1.05%) | 278ms (± 0.53%) | ~ | 277ms | 281ms | p=0.453 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 74ms (± 1.11%) | 73ms (± 1.11%) | ~ | 72ms | 74ms | p=0.389 n=6 |
| CompilerTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 2,702ms (± 1.36%) | 2,703ms (± 1.45%) | ~ | 2,669ms | 2,766ms | p=1.000 n=6 |
| Req 2 - geterr | 4,376ms (± 0.25%) | 4,374ms (± 0.26%) | ~ | 4,359ms | 4,390ms | p=0.936 n=6 |
| Req 3 - references | 359ms (± 0.43%) | 360ms (± 1.43%) | ~ | 352ms | 368ms | p=0.622 n=6 |
| Req 4 - navto | 289ms (± 0.51%) | 291ms (± 0.73%) | ~ | 289ms | 294ms | p=0.099 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 73ms (± 6.49%) | 73ms (± 6.91%) | ~ | 67ms | 80ms | p=1.000 n=6 |
| xstateTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 3,160ms (± 0.30%) | 3,167ms (± 0.25%) | ~ | 3,161ms | 3,182ms | p=0.336 n=6 |
| Req 2 - geterr | 1,763ms (± 0.77%) | 1,796ms (± 0.47%) | +33ms (+ 1.88%) | 1,785ms | 1,806ms | p=0.005 n=6 |
| Req 3 - references | 117ms (± 1.08%) | 117ms (± 1.37%) | ~ | 114ms | 118ms | p=1.000 n=6 |
| Req 4 - navto | 342ms (± 0.40%) | 341ms (± 0.44%) | ~ | 339ms | 343ms | p=0.190 n=6 |
| Req 5 - completionInfo count | 2,861 (± 0.00%) | 2,861 (± 0.00%) | ~ | 2,861 | 2,861 | p=1.000 n=6 |
| Req 5 - completionInfo | 404ms (± 5.37%) | 391ms (± 1.67%) | ~ | 380ms | 397ms | p=0.229 n=6 |
| Compiler-UnionsTSServer - node (v14.15.1, x64) | ||||||
| Req 1 - updateOpen | 2,584ms (± 0.58%) | 2,589ms (± 0.73%) | ~ | 2,564ms | 2,615ms | p=0.936 n=6 |
| Req 2 - geterr | 6,127ms (± 0.33%) | 6,161ms (± 0.91%) | ~ | 6,099ms | 6,238ms | p=0.471 n=6 |
| Req 3 - references | 366ms (± 1.45%) | 365ms (± 0.66%) | ~ | 362ms | 369ms | p=0.872 n=6 |
| Req 4 - navto | 276ms (± 1.01%) | 277ms (± 1.13%) | ~ | 275ms | 283ms | p=0.652 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 102ms (± 0.96%) | 101ms (± 2.75%) | ~ | 96ms | 104ms | p=0.868 n=6 |
| CompilerTSServer - node (v14.15.1, x64) | ||||||
| Req 1 - updateOpen | 2,808ms (± 0.34%) | 2,810ms (± 0.51%) | ~ | 2,786ms | 2,829ms | p=0.689 n=6 |
| Req 2 - geterr | 4,460ms (± 0.39%) | 4,542ms (± 2.74%) | ~ | 4,430ms | 4,707ms | p=0.298 n=6 |
| Req 3 - references | 421ms (± 4.79%) | 410ms (± 7.39%) | ~ | 369ms | 433ms | p=0.374 n=6 |
| Req 4 - navto | 289ms (± 0.99%) | 290ms (± 0.65%) | ~ | 287ms | 292ms | p=0.624 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 85ms (± 5.27%) | 84ms (± 9.10%) | ~ | 74ms | 92ms | p=0.849 n=6 |
| xstateTSServer - node (v14.15.1, x64) | ||||||
| Req 1 - updateOpen | 3,443ms (± 0.35%) | 3,456ms (± 0.53%) | ~ | 3,428ms | 3,477ms | p=0.229 n=6 |
| Req 2 - geterr | 1,857ms (± 0.61%) | 1,871ms (± 0.85%) | +14ms (+ 0.73%) | 1,840ms | 1,884ms | p=0.045 n=6 |
| Req 3 - references | 126ms (± 2.00%) | 125ms (± 0.82%) | ~ | 124ms | 127ms | p=0.503 n=6 |
| Req 4 - navto | 371ms (± 0.36%) | 370ms (± 0.28%) | ~ | 368ms | 371ms | p=0.098 n=6 |
| Req 5 - completionInfo count | 2,861 (± 0.00%) | 2,861 (± 0.00%) | ~ | 2,861 | 2,861 | p=1.000 n=6 |
| Req 5 - completionInfo | 412ms (± 1.42%) | 410ms (± 0.98%) | ~ | 407ms | 416ms | p=0.375 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v18.10.0, x64)
- node (v16.17.1, x64)
- node (v14.15.1, x64)
- Compiler-UnionsTSServer - node (v18.10.0, x64)
- Compiler-UnionsTSServer - node (v16.17.1, x64)
- Compiler-UnionsTSServer - node (v14.15.1, x64)
- CompilerTSServer - node (v18.10.0, x64)
- CompilerTSServer - node (v16.17.1, x64)
- CompilerTSServer - node (v14.15.1, x64)
- xstateTSServer - node (v18.10.0, x64)
- xstateTSServer - node (v16.17.1, x64)
- xstateTSServer - node (v14.15.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Startup
Comparison Report - main..53346| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| tsc-startup - node (v16.17.1, x64) | ||||||
| Execution time | 141.19ms (± 0.18%) | 141.82ms (± 0.21%) | +0.62ms (+ 0.44%) | 141.06ms | 145.67ms | p=0.000 n=600 |
| tsserver-startup - node (v16.17.1, x64) | ||||||
| Execution time | 226.11ms (± 0.18%) | 227.22ms (± 0.19%) | +1.11ms (+ 0.49%) | 226.20ms | 234.19ms | p=0.000 n=600 |
| tsserverlibrary-startup - node (v16.17.1, x64) | ||||||
| Execution time | 227.89ms (± 0.15%) | 229.05ms (± 0.17%) | +1.17ms (+ 0.51%) | 227.97ms | 234.32ms | p=0.000 n=600 |
| typescript-startup - node (v16.17.1, x64) | ||||||
| Execution time | 208.82ms (± 0.15%) | 209.64ms (± 0.18%) | +0.82ms (+ 0.39%) | 208.71ms | 216.39ms | p=0.000 n=600 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- tsc-startup - node (v16.17.1, x64)
- tsserver-startup - node (v16.17.1, x64)
- tsserverlibrary-startup - node (v16.17.1, x64)
- typescript-startup - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Developer Information:
@typescript-bot perf test this faster
Heya @jakebailey, I've started to run the abridged perf test suite on this PR at 8a6ba6dbe85ac4d3e9e1e196b981dc8c6790d169. You can monitor the build here.
@typescript-bot perf test this faster
Heya @jakebailey, I've started to run the abridged perf test suite on this PR at b8d36647f2166c32f16fd8d0730e04db2f29a947. You can monitor the build here.
Update: The results are in!
@jakebailey The results of the perf run you requested are in!
Here they are:
Comparison Report - main..53346
| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 361,130k (± 0.01%) | 361,113k (± 0.01%) | ~ | 361,069k | 361,155k | p=0.336 n=6 |
| Parse Time | 3.54s (± 0.64%) | 3.56s (± 0.41%) | ~ | 3.54s | 3.58s | p=0.120 n=6 |
| Bind Time | 1.18s (± 0.46%) | 1.19s (± 0.98%) | ~ | 1.18s | 1.21s | p=0.342 n=6 |
| Check Time | 9.50s (± 0.57%) | 9.56s (± 0.57%) | ~ | 9.49s | 9.62s | p=0.091 n=6 |
| Emit Time | 7.94s (± 0.74%) | 8.00s (± 0.63%) | ~ | 7.92s | 8.05s | p=0.170 n=6 |
| Total Time | 22.16s (± 0.40%) | 22.31s (± 0.45%) | +0.15s (+ 0.66%) | 22.16s | 22.41s | p=0.045 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,596k (± 0.02%) | 186,371k (± 0.74%) | 🟩-6,225k (- 3.23%) | 185,763k | 189,172k | p=0.005 n=6 |
| Parse Time | 1.56s (± 1.62%) | 1.58s (± 1.13%) | ~ | 1.55s | 1.60s | p=0.191 n=6 |
| Bind Time | 0.82s (± 0.92%) | 0.83s (± 0.49%) | +0.01s (+ 1.22%) | 0.82s | 0.83s | p=0.029 n=6 |
| Check Time | 10.08s (± 0.63%) | 10.06s (± 0.40%) | ~ | 9.99s | 10.10s | p=0.572 n=6 |
| Emit Time | 2.97s (± 0.72%) | 2.99s (± 1.46%) | ~ | 2.96s | 3.07s | p=0.570 n=6 |
| Total Time | 15.43s (± 0.56%) | 15.45s (± 0.13%) | ~ | 15.42s | 15.47s | p=0.518 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,520k (± 0.00%) | 345,578k (± 0.01%) | +58k (+ 0.02%) | 345,546k | 345,605k | p=0.005 n=6 |
| Parse Time | 2.73s (± 0.36%) | 2.75s (± 0.30%) | +0.02s (+ 0.67%) | 2.74s | 2.76s | p=0.008 n=6 |
| Bind Time | 1.09s (± 0.96%) | 1.09s (± 0.58%) | ~ | 1.08s | 1.10s | p=0.388 n=6 |
| Check Time | 7.67s (± 0.59%) | 7.75s (± 0.48%) | +0.08s (+ 1.00%) | 7.69s | 7.79s | p=0.020 n=6 |
| Emit Time | 4.44s (± 0.48%) | 4.47s (± 0.59%) | ~ | 4.44s | 4.50s | p=0.062 n=6 |
| Total Time | 15.93s (± 0.37%) | 16.06s (± 0.30%) | +0.13s (+ 0.82%) | 16.02s | 16.14s | p=0.005 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 299,823k (± 0.01%) | 299,815k (± 0.01%) | ~ | 299,777k | 299,853k | p=0.688 n=6 |
| Parse Time | 2.17s (± 0.45%) | 2.19s (± 0.48%) | +0.02s (+ 0.77%) | 2.17s | 2.20s | p=0.024 n=6 |
| Bind Time | 1.24s (± 0.79%) | 1.25s (± 0.94%) | ~ | 1.23s | 1.26s | p=0.157 n=6 |
| Check Time | 7.17s (± 0.43%) | 7.19s (± 0.39%) | ~ | 7.15s | 7.22s | p=0.331 n=6 |
| Emit Time | 4.36s (± 0.81%) | 4.36s (± 1.22%) | ~ | 4.30s | 4.45s | p=0.809 n=6 |
| Total Time | 14.93s (± 0.30%) | 14.98s (± 0.57%) | ~ | 14.89s | 15.11s | p=0.376 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 477,491k (± 0.01%) | 0k | ~ | 0k | 0k | p=1.000 n=6+0 |
| Parse Time | 3.22s (± 0.80%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Bind Time | 0.96s (± 0.57%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Check Time | 18.06s (± 0.47%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Emit Time | 0.00s (± 0.00%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Total Time | 22.23s (± 0.32%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 550,687k (± 0.01%) | 550,781k (± 0.02%) | ~ | 550,625k | 550,906k | p=0.173 n=6 |
| Parse Time | 3.94s (± 0.26%) | 3.96s (± 0.44%) | ~ | 3.95s | 3.99s | p=0.064 n=6 |
| Bind Time | 1.79s (± 0.65%) | 1.80s (± 0.76%) | ~ | 1.78s | 1.82s | p=0.117 n=6 |
| Check Time | 3.03s (± 0.94%) | 3.13s (± 1.23%) | +0.10s (+ 3.30%) | 3.08s | 3.19s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 0.00%) | ~ | 0.09s | 0.09s | p=1.000 n=6 |
| Total Time | 8.86s (± 0.29%) | 9.00s (± 0.59%) | +0.14s (+ 1.64%) | 8.92s | 9.07s | p=0.005 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- Angular - node (v16.17.1, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Monaco - node (v16.17.1, x64)
- TFS - node (v16.17.1, x64)
- material-ui - node (v16.17.1, x64)
- xstate - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Developer Information:
My latest version, while clearer, turns out to be worse than the previous iteration, so I guess I'll have to revert it. Really weird.
@typescript-bot perf test this faster
Heya @jakebailey, I've started to run the abridged perf test suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Update: The results are in!
@jakebailey The results of the perf run you requested are in!
Here they are:
Comparison Report - main..53346
| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 361,043k (± 0.01%) | 361,100k (± 0.01%) | +57k (+ 0.02%) | 361,076k | 361,139k | p=0.005 n=6 |
| Parse Time | 3.53s (± 0.87%) | 3.50s (± 0.55%) | ~ | 3.47s | 3.53s | p=0.071 n=6 |
| Bind Time | 1.18s (± 0.46%) | 1.18s (± 0.46%) | ~ | 1.18s | 1.19s | p=1.000 n=6 |
| Check Time | 9.48s (± 0.49%) | 9.51s (± 0.60%) | ~ | 9.47s | 9.62s | p=0.332 n=6 |
| Emit Time | 7.93s (± 0.82%) | 7.96s (± 1.30%) | ~ | 7.90s | 8.17s | p=0.688 n=6 |
| Total Time | 22.13s (± 0.53%) | 22.16s (± 0.76%) | ~ | 22.06s | 22.50s | p=0.687 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,558k (± 0.02%) | 185,691k (± 0.02%) | 🟩-6,867k (- 3.57%) | 185,644k | 185,767k | p=0.005 n=6 |
| Parse Time | 1.59s (± 0.86%) | 1.56s (± 1.22%) | -0.03s (- 2.09%) | 1.53s | 1.58s | p=0.012 n=6 |
| Bind Time | 0.82s (± 0.63%) | 0.82s (± 1.00%) | ~ | 0.81s | 0.83s | p=0.140 n=6 |
| Check Time | 10.15s (± 0.87%) | 9.97s (± 0.37%) | -0.18s (- 1.76%) | 9.92s | 10.02s | p=0.005 n=6 |
| Emit Time | 3.00s (± 0.25%) | 3.00s (± 1.14%) | ~ | 2.97s | 3.05s | p=0.418 n=6 |
| Total Time | 15.56s (± 0.51%) | 15.35s (± 0.43%) | -0.22s (- 1.39%) | 15.26s | 15.44s | p=0.005 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,570k (± 0.01%) | 345,577k (± 0.00%) | ~ | 345,560k | 345,591k | p=0.471 n=6 |
| Parse Time | 2.73s (± 0.60%) | 2.72s (± 0.28%) | ~ | 2.71s | 2.73s | p=0.216 n=6 |
| Bind Time | 1.09s (± 0.47%) | 1.09s (± 1.71%) | ~ | 1.08s | 1.13s | p=0.666 n=6 |
| Check Time | 7.70s (± 0.41%) | 7.71s (± 0.46%) | ~ | 7.68s | 7.77s | p=0.872 n=6 |
| Emit Time | 4.46s (± 0.49%) | 4.44s (± 0.69%) | ~ | 4.41s | 4.49s | p=0.226 n=6 |
| Total Time | 15.98s (± 0.35%) | 15.96s (± 0.33%) | ~ | 15.91s | 16.04s | p=0.630 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 299,817k (± 0.01%) | 299,821k (± 0.01%) | ~ | 299,771k | 299,860k | p=0.810 n=6 |
| Parse Time | 2.17s (± 0.54%) | 2.17s (± 0.48%) | ~ | 2.15s | 2.18s | p=0.406 n=6 |
| Bind Time | 1.24s (± 0.97%) | 1.25s (± 0.65%) | ~ | 1.24s | 1.26s | p=0.677 n=6 |
| Check Time | 7.17s (± 0.54%) | 7.16s (± 0.65%) | ~ | 7.09s | 7.21s | p=0.684 n=6 |
| Emit Time | 4.34s (± 0.63%) | 4.33s (± 0.34%) | ~ | 4.31s | 4.35s | p=0.250 n=6 |
| Total Time | 14.93s (± 0.24%) | 14.90s (± 0.40%) | ~ | 14.82s | 14.97s | p=0.421 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 476,408k (± 0.01%) | 0k | ~ | 0k | 0k | p=1.000 n=6+0 |
| Parse Time | 3.21s (± 0.61%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Bind Time | 0.95s (± 0.43%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Check Time | 17.91s (± 0.86%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Emit Time | 0.00s (± 0.00%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Total Time | 22.08s (± 0.62%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 550,624k (± 0.02%) | 550,798k (± 0.03%) | +175k (+ 0.03%) | 550,613k | 551,006k | p=0.031 n=6 |
| Parse Time | 3.95s (± 0.16%) | 3.94s (± 0.25%) | ~ | 3.93s | 3.95s | p=0.103 n=6 |
| Bind Time | 1.80s (± 0.29%) | 1.79s (± 0.93%) | ~ | 1.76s | 1.81s | p=0.437 n=6 |
| Check Time | 3.04s (± 0.34%) | 3.12s (± 0.59%) | +0.08s (+ 2.80%) | 3.10s | 3.14s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 0.00%) | ~ | 0.09s | 0.09s | p=1.000 n=6 |
| Total Time | 8.88s (± 0.17%) | 8.95s (± 0.13%) | +0.08s (+ 0.84%) | 8.94s | 8.97s | p=0.005 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- Angular - node (v16.17.1, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Monaco - node (v16.17.1, x64)
- TFS - node (v16.17.1, x64)
- material-ui - node (v16.17.1, x64)
- xstate - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Developer Information:
@typescript-bot test this @typescript-bot test top100 @typescript-bot user test this @typescript-bot run dt @typescript-bot perf test this faster
Heya @jakebailey, I've started to run the extended test suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Heya @jakebailey, I've started to run the diff-based top-repos suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Update: The results are in!
Heya @jakebailey, I've started to run the parallelized Definitely Typed test suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Update: The results are in!
Heya @jakebailey, I've started to run the abridged perf test suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Update: The results are in!
Heya @jakebailey, I've started to run the diff-based user code test suite on this PR at 21ccbb928af8e69fab48d04b5c164657231a4c31. You can monitor the build here.
Update: The results are in!
That being said, this may be DOA because it does seem to slow down xstate and upstream mui a little bit. Not sure.
@jakebailey Here are the results of running the user test suite comparing main and refs/pull/53346/merge:
Everything looks good!
@jakebailey The results of the perf run you requested are in!
Here they are:
Comparison Report - main..53346
| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 361,043k (± 0.01%) | 361,125k (± 0.01%) | +82k (+ 0.02%) | 361,078k | 361,158k | p=0.005 n=6 |
| Parse Time | 3.53s (± 0.87%) | 3.52s (± 0.43%) | ~ | 3.51s | 3.55s | p=1.000 n=6 |
| Bind Time | 1.18s (± 0.46%) | 1.18s (± 0.46%) | ~ | 1.18s | 1.19s | p=1.000 n=6 |
| Check Time | 9.48s (± 0.49%) | 9.52s (± 0.26%) | ~ | 9.49s | 9.55s | p=0.126 n=6 |
| Emit Time | 7.93s (± 0.82%) | 7.95s (± 0.87%) | ~ | 7.87s | 8.06s | p=0.520 n=6 |
| Total Time | 22.13s (± 0.53%) | 22.18s (± 0.46%) | ~ | 22.06s | 22.33s | p=0.470 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,558k (± 0.02%) | 185,698k (± 0.02%) | 🟩-6,860k (- 3.56%) | 185,658k | 185,770k | p=0.005 n=6 |
| Parse Time | 1.59s (± 0.86%) | 1.58s (± 0.69%) | ~ | 1.57s | 1.59s | p=0.090 n=6 |
| Bind Time | 0.82s (± 0.63%) | 0.82s (± 0.77%) | ~ | 0.81s | 0.83s | p=0.386 n=6 |
| Check Time | 10.15s (± 0.87%) | 10.01s (± 0.78%) | -0.14s (- 1.38%) | 9.87s | 10.07s | p=0.043 n=6 |
| Emit Time | 3.00s (± 0.25%) | 2.98s (± 0.99%) | ~ | 2.94s | 3.02s | p=0.141 n=6 |
| Total Time | 15.56s (± 0.51%) | 15.38s (± 0.56%) | -0.18s (- 1.17%) | 15.22s | 15.46s | p=0.005 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,570k (± 0.01%) | 345,578k (± 0.00%) | ~ | 345,557k | 345,591k | p=0.378 n=6 |
| Parse Time | 2.73s (± 0.60%) | 2.73s (± 0.57%) | ~ | 2.72s | 2.76s | p=0.742 n=6 |
| Bind Time | 1.09s (± 0.47%) | 1.09s (± 0.69%) | ~ | 1.08s | 1.10s | p=0.241 n=6 |
| Check Time | 7.70s (± 0.41%) | 7.71s (± 0.43%) | ~ | 7.67s | 7.76s | p=0.518 n=6 |
| Emit Time | 4.46s (± 0.49%) | 4.44s (± 0.37%) | ~ | 4.42s | 4.46s | p=0.466 n=6 |
| Total Time | 15.98s (± 0.35%) | 15.97s (± 0.27%) | ~ | 15.92s | 16.03s | p=0.936 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 299,817k (± 0.01%) | 299,833k (± 0.01%) | ~ | 299,786k | 299,875k | p=0.378 n=6 |
| Parse Time | 2.17s (± 0.54%) | 2.17s (± 0.71%) | ~ | 2.16s | 2.19s | p=0.666 n=6 |
| Bind Time | 1.24s (± 0.97%) | 1.24s (± 0.97%) | ~ | 1.23s | 1.26s | p=1.000 n=6 |
| Check Time | 7.17s (± 0.54%) | 7.14s (± 0.82%) | ~ | 7.07s | 7.21s | p=0.373 n=6 |
| Emit Time | 4.34s (± 0.63%) | 4.32s (± 0.97%) | ~ | 4.28s | 4.39s | p=0.226 n=6 |
| Total Time | 14.93s (± 0.24%) | 14.87s (± 0.75%) | ~ | 14.75s | 15.03s | p=0.423 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 476,408k (± 0.01%) | 0k | ~ | 0k | 0k | p=1.000 n=6+0 |
| Parse Time | 3.21s (± 0.61%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Bind Time | 0.95s (± 0.43%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Check Time | 17.91s (± 0.86%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Emit Time | 0.00s (± 0.00%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| Total Time | 22.08s (± 0.62%) | 0.00s | ~ | 0.00s | 0.00s | p=1.000 n=6+0 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 550,624k (± 0.02%) | 550,767k (± 0.03%) | ~ | 550,568k | 550,982k | p=0.128 n=6 |
| Parse Time | 3.95s (± 0.16%) | 3.95s (± 0.41%) | ~ | 3.93s | 3.97s | p=0.935 n=6 |
| Bind Time | 1.80s (± 0.29%) | 1.79s (± 0.30%) | ~ | 1.79s | 1.80s | p=0.640 n=6 |
| Check Time | 3.04s (± 0.34%) | 3.13s (± 1.12%) | +0.09s (+ 2.91%) | 3.06s | 3.15s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 0.00%) | ~ | 0.09s | 0.09s | p=1.000 n=6 |
| Total Time | 8.88s (± 0.17%) | 8.97s (± 0.46%) | +0.09s (+ 1.01%) | 8.90s | 9.02s | p=0.004 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- Angular - node (v16.17.1, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Monaco - node (v16.17.1, x64)
- TFS - node (v16.17.1, x64)
- material-ui - node (v16.17.1, x64)
- xstate - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Developer Information:
material-ui (the perf test) actually fails to compile in the above, uh oh.
>> TypeError: Generator is already running
>> at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
>> at iteratePropertiesOfUnionOrIntersectionType (/home/setup/vsts-agent/_work/9/s/built/local/tsc.js:53449:16)
>> at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
>> at someIterator (/home/setup/vsts-agent/_work/9/s/built/local/tsc.js:396:14)
eek! This implies that getPropertiesOfUnionOrIntersectionType depended on getPropertiesOfUnionOrIntersectionType for the same type. How was this working before?
Hey @jakebailey, the results of running the DT tests are ready. There were interesting changes:
Branch only errors:
Package: react-native/v0.70 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.66 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-google-signin Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-htmlview Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-modalbox Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-sortable-list Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-table-component Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-primitives Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.69 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.65 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-ad-manager Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-modals Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-popup-dialog Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-qrcode Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.68 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.64 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-charts-wrapper Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-material-ripple Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-snap-carousel Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.67 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native/v0.63 Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-settings-list Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
Package: react-native-signature-capture Error:
TypeError: Generator is already running
at iteratePropertiesOfUnionOrIntersectionTypeWorker.next (<anonymous>)
at iteratePropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55856:18)
at iteratePropertiesOfUnionOrIntersectionType.next (<anonymous>)
at getPropertiesOfUnionOrIntersectionType (/home/vsts/work/1/s/built/local/typescript.js:55835:20)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:63)
at forEachMappedTypePropertyKeyTypeAndIndexSignatureKeyType (/home/vsts/work/1/s/built/local/typescript.js:55623:26)
at resolveMappedTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55650:9)
at resolveStructuredTypeMembers (/home/vsts/work/1/s/built/local/typescript.js:55804:13)
at getPropertiesOfObjectType (/home/vsts/work/1/s/built/local/typescript.js:55820:16)
at getPropertiesOfType (/home/vsts/work/1/s/built/local/typescript.js:55887:110)
@jakebailey Here are the results of running the top-repos suite comparing main and refs/pull/53346/merge:
Everything looks good!
@typescript-bot perf test this faster @typescript-bot run dt
Heya @jakebailey, I've started to run the abridged perf test suite on this PR at e6be1d47f5a307af0a480142f4e4cd1326799e63. You can monitor the build here.
Update: The results are in!
Heya @jakebailey, I've started to run the parallelized Definitely Typed test suite on this PR at e6be1d47f5a307af0a480142f4e4cd1326799e63. You can monitor the build here.
Update: The results are in!
@jakebailey The results of the perf run you requested are in!
Here they are:
Comparison Report - main..53346
| Metric | main | 53346 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 361,043k (± 0.01%) | 361,132k (± 0.01%) | +89k (+ 0.02%) | 361,094k | 361,155k | p=0.005 n=6 |
| Parse Time | 3.53s (± 0.87%) | 3.51s (± 0.47%) | ~ | 3.49s | 3.52s | p=0.167 n=6 |
| Bind Time | 1.18s (± 0.46%) | 1.18s (± 0.76%) | ~ | 1.17s | 1.19s | p=0.341 n=6 |
| Check Time | 9.48s (± 0.49%) | 9.52s (± 0.27%) | ~ | 9.48s | 9.55s | p=0.108 n=6 |
| Emit Time | 7.93s (± 0.82%) | 7.96s (± 0.73%) | ~ | 7.87s | 8.03s | p=0.470 n=6 |
| Total Time | 22.13s (± 0.53%) | 22.16s (± 0.34%) | ~ | 22.05s | 22.25s | p=0.573 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,558k (± 0.02%) | 186,258k (± 0.74%) | 🟩-6,300k (- 3.27%) | 185,642k | 189,077k | p=0.005 n=6 |
| Parse Time | 1.59s (± 0.86%) | 1.59s (± 0.51%) | ~ | 1.58s | 1.60s | p=0.282 n=6 |
| Bind Time | 0.82s (± 0.63%) | 0.81s (± 0.63%) | -0.01s (- 1.21%) | 0.81s | 0.82s | p=0.018 n=6 |
| Check Time | 10.15s (± 0.87%) | 9.94s (± 0.56%) | -0.21s (- 2.07%) | 9.88s | 10.02s | p=0.005 n=6 |
| Emit Time | 3.00s (± 0.25%) | 2.98s (± 0.78%) | -0.02s (- 0.78%) | 2.95s | 3.00s | p=0.045 n=6 |
| Total Time | 15.56s (± 0.51%) | 15.32s (± 0.41%) | -0.25s (- 1.60%) | 15.25s | 15.40s | p=0.005 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,570k (± 0.01%) | 345,589k (± 0.01%) | ~ | 345,566k | 345,613k | p=0.128 n=6 |
| Parse Time | 2.73s (± 0.60%) | 2.72s (± 0.50%) | ~ | 2.70s | 2.74s | p=0.328 n=6 |
| Bind Time | 1.09s (± 0.47%) | 1.09s (± 0.00%) | ~ | 1.09s | 1.09s | p=0.174 n=6 |
| Check Time | 7.70s (± 0.41%) | 7.70s (± 0.52%) | ~ | 7.65s | 7.75s | p=0.872 n=6 |
| Emit Time | 4.46s (± 0.49%) | 4.43s (± 0.71%) | ~ | 4.41s | 4.49s | p=0.145 n=6 |
| Total Time | 15.98s (± 0.35%) | 15.95s (± 0.32%) | ~ | 15.87s | 16.00s | p=0.295 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 299,817k (± 0.01%) | 299,818k (± 0.01%) | ~ | 299,765k | 299,880k | p=0.936 n=6 |
| Parse Time | 2.17s (± 0.54%) | 2.16s (± 0.35%) | ~ | 2.15s | 2.17s | p=0.150 n=6 |
| Bind Time | 1.24s (± 0.97%) | 1.24s (± 0.85%) | ~ | 1.22s | 1.25s | p=0.282 n=6 |
| Check Time | 7.17s (± 0.54%) | 7.16s (± 0.45%) | ~ | 7.12s | 7.20s | p=0.747 n=6 |
| Emit Time | 4.34s (± 0.63%) | 4.33s (± 0.69%) | ~ | 4.29s | 4.36s | p=1.000 n=6 |
| Total Time | 14.93s (± 0.24%) | 14.89s (± 0.29%) | ~ | 14.84s | 14.95s | p=0.173 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 476,408k (± 0.01%) | 476,715k (± 0.01%) | +307k (+ 0.06%) | 476,653k | 476,774k | p=0.005 n=6 |
| Parse Time | 3.21s (± 0.61%) | 3.23s (± 0.54%) | ~ | 3.20s | 3.25s | p=0.243 n=6 |
| Bind Time | 0.95s (± 0.43%) | 0.95s (± 0.43%) | ~ | 0.95s | 0.96s | p=1.000 n=6 |
| Check Time | 17.91s (± 0.86%) | 18.04s (± 0.26%) | ~ | 18.00s | 18.11s | p=0.065 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 22.08s (± 0.62%) | 22.23s (± 0.24%) | ~ | 22.16s | 22.31s | p=0.065 n=6 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 550,624k (± 0.02%) | 550,735k (± 0.02%) | ~ | 550,634k | 550,963k | p=0.128 n=6 |
| Parse Time | 3.95s (± 0.16%) | 3.94s (± 0.35%) | ~ | 3.92s | 3.96s | p=0.073 n=6 |
| Bind Time | 1.80s (± 0.29%) | 1.79s (± 0.76%) | ~ | 1.77s | 1.81s | p=0.794 n=6 |
| Check Time | 3.04s (± 0.34%) | 3.12s (± 0.45%) | +0.08s (+ 2.74%) | 3.10s | 3.14s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 4.45%) | ~ | 0.09s | 0.10s | p=0.405 n=6 |
| Total Time | 8.88s (± 0.17%) | 8.94s (± 0.36%) | +0.07s (+ 0.75%) | 8.89s | 8.98s | p=0.008 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-135-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- Angular - node (v16.17.1, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Monaco - node (v16.17.1, x64)
- TFS - node (v16.17.1, x64)
- material-ui - node (v16.17.1, x64)
- xstate - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 53346 | 6 |
| Baseline | main | 6 |
Developer Information:
Hey @jakebailey, the results of running the DT tests are ready. Everything looks the same! You can check the log here.