Make typed arrays generic over ArrayBufferLike
by rbuckton · Pull Request #59417 · microsoft/TypeScript (original) (raw)
@rbuckton
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,340 | +187 (+ 0.30%) | ~ | ~ | p=0.001 n=6 |
Types | 50,242 | 50,378 | +136 (+ 0.27%) | ~ | ~ | p=0.001 n=6 |
Memory used | 193,558k (± 0.96%) | 194,577k (± 0.98%) | ~ | 192,700k | 196,334k | p=0.066 n=6 |
Parse Time | 1.57s (± 0.80%) | 1.57s (± 1.04%) | ~ | 1.55s | 1.59s | p=0.742 n=6 |
Bind Time | 0.86s (± 0.87%) | 0.86s (± 1.14%) | ~ | 0.85s | 0.87s | p=1.000 n=6 |
Check Time | 11.40s (± 0.31%) | 11.26s (± 0.48%) | -0.14s (- 1.24%) | 11.20s | 11.34s | p=0.005 n=6 |
Emit Time | 3.25s (± 0.45%) | 3.23s (± 1.75%) | ~ | 3.14s | 3.28s | p=0.935 n=6 |
Total Time | 17.08s (± 0.26%) | 16.92s (± 0.49%) | -0.16s (- 0.97%) | 16.78s | 17.00s | p=0.005 n=6 |
angular-1 - node (v18.15.0, x64) | ||||||
Errors | 7 | 7 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 945,753 | 947,121 | +1,368 (+ 0.14%) | ~ | ~ | p=0.001 n=6 |
Types | 410,067 | 410,756 | +689 (+ 0.17%) | ~ | ~ | p=0.001 n=6 |
Memory used | 1,222,691k (± 0.00%) | 1,223,915k (± 0.00%) | +1,224k (+ 0.10%) | 1,223,889k | 1,223,942k | p=0.005 n=6 |
Parse Time | 7.90s (± 0.89%) | 8.03s (± 0.25%) | +0.13s (+ 1.60%) | 8.00s | 8.06s | p=0.037 n=6 |
Bind Time | 2.23s (± 0.46%) | 2.24s (± 0.18%) | ~ | 2.23s | 2.24s | p=0.257 n=6 |
Check Time | 36.37s (± 0.42%) | 36.36s (± 0.40%) | ~ | 36.14s | 36.54s | p=0.873 n=6 |
Emit Time | 17.83s (± 0.23%) | 17.78s (± 0.37%) | ~ | 17.73s | 17.90s | p=0.198 n=6 |
Total Time | 64.34s (± 0.17%) | 64.42s (± 0.27%) | ~ | 64.23s | 64.68s | p=0.518 n=6 |
mui-docs - node (v18.15.0, x64) | ||||||
Errors | 0 | 0 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 2,532,236 | 2,532,408 | +172 (+ 0.01%) | ~ | ~ | p=0.001 n=6 |
Types | 996,125 | 996,162 | +37 (+ 0.00%) | ~ | ~ | p=0.001 n=6 |
Memory used | 2,460,050k (± 0.00%) | 2,460,350k (± 0.00%) | +300k (+ 0.01%) | 2,460,298k | 2,460,395k | p=0.005 n=6 |
Parse Time | 11.19s (± 0.13%) | 11.20s (± 0.26%) | ~ | 11.18s | 11.26s | p=0.289 n=6 |
Bind Time | 2.68s (± 0.44%) | 2.68s (± 0.50%) | ~ | 2.66s | 2.69s | p=1.000 n=6 |
Check Time | 88.57s (± 0.33%) | 88.86s (± 0.46%) | ~ | 88.33s | 89.48s | p=0.199 n=6 |
Emit Time | 0.33s (± 2.71%) | 0.33s (± 3.10%) | ~ | 0.32s | 0.34s | p=0.541 n=6 |
Total Time | 102.76s (± 0.30%) | 103.07s (± 0.42%) | ~ | 102.54s | 103.75s | p=0.229 n=6 |
self-build-src - node (v18.15.0, x64) | ||||||
Errors | 0 | 0 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 1,231,981 | 1,235,302 | +3,321 (+ 0.27%) | ~ | ~ | p=0.001 n=6 |
Types | 264,568 | 265,092 | +524 (+ 0.20%) | ~ | ~ | p=0.001 n=6 |
Memory used | 2,353,861k (± 0.01%) | 2,419,232k (± 6.01%) | +65,372k (+ 2.78%) | 2,358,537k | 2,716,330k | p=0.005 n=6 |
Parse Time | 6.00s (± 1.11%) | 6.00s (± 0.89%) | ~ | 5.94s | 6.09s | p=0.748 n=6 |
Bind Time | 2.25s (± 1.03%) | 2.26s (± 0.78%) | ~ | 2.23s | 2.28s | p=0.872 n=6 |
Check Time | 41.08s (± 0.52%) | 40.99s (± 0.59%) | ~ | 40.59s | 41.26s | p=0.810 n=6 |
Emit Time | 4.00s (± 0.90%) | 4.03s (± 3.49%) | ~ | 3.88s | 4.30s | p=1.000 n=6 |
Total Time | 53.36s (± 0.54%) | 53.30s (± 0.73%) | ~ | 52.84s | 53.96s | 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,231,981 | 1,235,302 | +3,321 (+ 0.27%) | ~ | ~ | p=0.001 n=6 |
Types | 264,568 | 265,092 | +524 (+ 0.20%) | ~ | ~ | p=0.001 n=6 |
Memory used | 2,428,356k (± 0.04%) | 2,551,481k (±11.37%) | 🔻+123,124k (+ 5.07%) | 2,432,180k | 3,144,355k | p=0.005 n=6 |
Parse Time | 6.22s (± 0.86%) | 6.26s (± 1.11%) | ~ | 6.16s | 6.36s | p=0.378 n=6 |
Bind Time | 2.05s (± 0.96%) | 2.23s (± 5.08%) | ~ | 2.01s | 2.32s | p=0.063 n=6 |
Check Time | 41.76s (± 0.79%) | 41.27s (± 0.62%) | -0.48s (- 1.16%) | 41.05s | 41.76s | p=0.020 n=6 |
Emit Time | 4.07s (± 2.35%) | 4.11s (± 2.77%) | ~ | 4.00s | 4.33s | p=0.261 n=6 |
Total Time | 54.10s (± 0.44%) | 53.90s (± 0.54%) | ~ | 53.69s | 54.35s | p=0.230 n=6 |
self-compiler - node (v18.15.0, x64) | ||||||
Errors | 0 | 0 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 257,004 | 257,764 | +760 (+ 0.30%) | ~ | ~ | p=0.001 n=6 |
Types | 105,760 | 105,824 | +64 (+ 0.06%) | ~ | ~ | p=0.001 n=6 |
Memory used | 429,798k (± 0.02%) | 430,318k (± 0.02%) | +520k (+ 0.12%) | 430,200k | 430,458k | p=0.005 n=6 |
Parse Time | 4.15s (± 0.66%) | 4.16s (± 0.54%) | ~ | 4.14s | 4.20s | p=0.625 n=6 |
Bind Time | 1.59s (± 0.65%) | 1.58s (± 1.01%) | ~ | 1.57s | 1.61s | p=0.406 n=6 |
Check Time | 22.45s (± 0.49%) | 22.43s (± 0.25%) | ~ | 22.37s | 22.53s | p=0.872 n=6 |
Emit Time | 2.05s (± 0.94%) | 2.04s (± 0.48%) | ~ | 2.03s | 2.05s | p=0.508 n=6 |
Total Time | 30.24s (± 0.44%) | 30.22s (± 0.25%) | ~ | 30.11s | 30.33s | p=1.000 n=6 |
ts-pre-modules - node (v18.15.0, x64) | ||||||
Errors | 68 | 68 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 225,018 | 226,050 | +1,032 (+ 0.46%) | ~ | ~ | p=0.001 n=6 |
Types | 94,249 | 94,510 | +261 (+ 0.28%) | ~ | ~ | p=0.001 n=6 |
Memory used | 370,221k (± 0.02%) | 371,087k (± 0.03%) | +867k (+ 0.23%) | 370,917k | 371,206k | p=0.005 n=6 |
Parse Time | 3.45s (± 0.61%) | 3.47s (± 0.81%) | ~ | 3.42s | 3.50s | p=0.197 n=6 |
Bind Time | 1.93s (± 0.63%) | 1.92s (± 1.26%) | ~ | 1.89s | 1.96s | p=0.742 n=6 |
Check Time | 19.45s (± 0.22%) | 19.46s (± 0.30%) | ~ | 19.41s | 19.57s | p=1.000 n=6 |
Emit Time | 0.00s | 0.00s | ~ | ~ | ~ | p=1.000 n=6 |
Total Time | 24.82s (± 0.12%) | 24.86s (± 0.35%) | ~ | 24.74s | 24.98s | p=0.334 n=6 |
vscode - node (v18.15.0, x64) | ||||||
Errors | 66 | 67 | +1 (+ 1.52%) | ~ | ~ | p=0.001 n=6 |
Symbols | 3,019,401 | 3,021,914 | +2,513 (+ 0.08%) | ~ | ~ | p=0.001 n=6 |
Types | 1,038,975 | 1,040,412 | +1,437 (+ 0.14%) | ~ | ~ | p=0.001 n=6 |
Memory used | 3,140,462k (± 0.01%) | 3,142,860k (± 0.00%) | +2,398k (+ 0.08%) | 3,142,785k | 3,142,902k | p=0.005 n=6 |
Parse Time | 14.01s (± 0.23%) | 14.01s (± 0.45%) | ~ | 13.94s | 14.09s | p=0.936 n=6 |
Bind Time | 4.36s (± 2.49%) | 4.30s (± 0.32%) | ~ | 4.28s | 4.32s | p=0.627 n=6 |
Check Time | 80.32s (± 0.52%) | 79.87s (± 0.34%) | -0.45s (- 0.56%) | 79.45s | 80.18s | p=0.031 n=6 |
Emit Time | 20.64s (± 0.54%) | 20.40s (± 0.56%) | -0.24s (- 1.15%) | 20.19s | 20.52s | p=0.016 n=6 |
Total Time | 119.32s (± 0.49%) | 118.57s (± 0.24%) | -0.74s (- 0.62%) | 118.19s | 118.88s | p=0.008 n=6 |
webpack - node (v18.15.0, x64) | ||||||
Errors | 0 | 0 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 275,311 | 277,230 | +1,919 (+ 0.70%) | ~ | ~ | p=0.001 n=6 |
Types | 112,431 | 113,256 | +825 (+ 0.73%) | ~ | ~ | p=0.001 n=6 |
Memory used | 424,218k (± 0.03%) | 425,762k (± 0.02%) | +1,544k (+ 0.36%) | 425,688k | 425,880k | p=0.005 n=6 |
Parse Time | 3.98s (± 0.62%) | 3.95s (± 0.55%) | ~ | 3.93s | 3.99s | p=0.088 n=6 |
Bind Time | 1.72s (± 0.82%) | 1.72s (± 0.30%) | ~ | 1.71s | 1.72s | p=0.667 n=6 |
Check Time | 17.52s (± 0.43%) | 17.59s (± 0.67%) | ~ | 17.41s | 17.77s | p=0.421 n=6 |
Emit Time | 0.00s | 0.00s | ~ | ~ | ~ | p=1.000 n=6 |
Total Time | 23.22s (± 0.35%) | 23.26s (± 0.54%) | ~ | 23.06s | 23.43s | p=0.575 n=6 |
xstate-main - node (v18.15.0, x64) | ||||||
Errors | 0 | 0 | ~ | ~ | ~ | p=1.000 n=6 |
Symbols | 535,757 | 535,876 | +119 (+ 0.02%) | ~ | ~ | p=0.001 n=6 |
Types | 177,028 | 177,045 | +17 (+ 0.01%) | ~ | ~ | p=0.001 n=6 |
Memory used | 480,451k (± 0.01%) | 480,823k (± 0.01%) | +372k (+ 0.08%) | 480,758k | 480,919k | p=0.005 n=6 |
Parse Time | 2.84s (± 0.68%) | 2.83s (± 0.43%) | ~ | 2.82s | 2.85s | p=0.934 n=6 |
Bind Time | 1.05s | 1.04s (± 1.16%) | ~ | 1.03s | 1.06s | p=0.293 n=6 |
Check Time | 15.34s (± 0.30%) | 15.37s (± 0.16%) | ~ | 15.33s | 15.39s | p=0.105 n=6 |
Emit Time | 0.00s | 0.00s | ~ | ~ | ~ | p=1.000 n=6 |
Total Time | 19.22s (± 0.30%) | 19.25s (± 0.14%) | ~ | 19.22s | 19.29s | p=0.747 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,296ms (± 0.57%) | 2,296ms (± 0.25%) | ~ | 2,286ms | 2,304ms | p=0.470 n=6 |
Req 2 - geterr | 5,155ms (± 0.40%) | 5,173ms (± 0.41%) | ~ | 5,150ms | 5,203ms | p=0.199 n=6 |
Req 3 - references | 261ms (± 0.96%) | 262ms (± 0.20%) | ~ | 262ms | 263ms | p=0.242 n=6 |
Req 4 - navto | 228ms (± 0.55%) | 227ms (± 0.24%) | -2ms (- 0.66%) | 226ms | 227ms | p=0.025 n=6 |
Req 5 - completionInfo count | 1,357 | 1,357 | ~ | ~ | ~ | p=1.000 n=6 |
Req 5 - completionInfo | 85ms (± 3.85%) | 81ms (± 8.62%) | ~ | 75ms | 92ms | p=0.288 n=6 |
CompilerTSServer - node (v18.15.0, x64) | ||||||
Req 1 - updateOpen | 2,395ms (± 0.66%) | 2,407ms (± 1.50%) | ~ | 2,371ms | 2,449ms | p=1.000 n=6 |
Req 2 - geterr | 3,912ms (± 0.35%) | 3,932ms (± 0.20%) | +20ms (+ 0.52%) | 3,921ms | 3,943ms | p=0.016 n=6 |
Req 3 - references | 274ms (± 0.38%) | 273ms (± 0.73%) | ~ | 270ms | 275ms | p=1.000 n=6 |
Req 4 - navto | 228ms (± 0.37%) | 228ms (± 3.06%) | ~ | 223ms | 237ms | p=0.367 n=6 |
Req 5 - completionInfo count | 1,519 | 1,519 | ~ | ~ | ~ | p=1.000 n=6 |
Req 5 - completionInfo | 79ms (± 6.48%) | 75ms (± 8.08%) | ~ | 69ms | 86ms | p=0.252 n=6 |
xstate-main-1-tsserver - node (v18.15.0, x64) | ||||||
Req 1 - updateOpen | 5,194ms (± 0.12%) | 5,181ms (± 0.39%) | ~ | 5,160ms | 5,215ms | p=0.090 n=6 |
Req 2 - geterr | 1,126ms (± 0.68%) | 1,130ms (± 0.86%) | ~ | 1,118ms | 1,141ms | p=0.630 n=6 |
Req 3 - references | 87ms (± 5.34%) | 87ms (± 2.75%) | ~ | 86ms | 92ms | p=0.858 n=6 |
Req 4 - navto | 442ms (± 0.44%) | 442ms (± 0.30%) | ~ | 440ms | 443ms | p=0.738 n=6 |
Req 5 - completionInfo count | 3,444 | 3,444 | ~ | ~ | ~ | p=1.000 n=6 |
Req 5 - completionInfo | 820ms (± 1.11%) | 826ms (± 1.45%) | ~ | 812ms | 840ms | p=0.336 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 | 158.89ms (± 0.16%) | 158.83ms (± 0.19%) | -0.06ms (- 0.04%) | 157.82ms | 163.49ms | p=0.000 n=600 |
tsserver-startup - node (v18.15.0, x64) | ||||||
Execution time | 232.63ms (± 0.15%) | 232.51ms (± 0.13%) | -0.12ms (- 0.05%) | 231.11ms | 236.48ms | p=0.001 n=600 |
tsserverlibrary-startup - node (v18.15.0, x64) | ||||||
Execution time | 227.53ms (± 0.15%) | 227.44ms (± 0.16%) | -0.09ms (- 0.04%) | 226.25ms | 233.20ms | p=0.002 n=600 |
typescript-startup - node (v18.15.0, x64) | ||||||
Execution time | 227.55ms (± 0.15%) | 227.63ms (± 0.14%) | +0.08ms (+ 0.03%) | 226.27ms | 232.71ms | p=0.008 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: