Skip to content

Add a default PGO profile for the compiler - #64986

Merged
Jake Bailey (jakebailey) merged 8 commits into
microsoft:mainfrom
jakebailey:pgo
Oct 28, 2026
Merged

Jake Bailey (jakebailey) merged 8 commits into
microsoft:mainfrom
jakebailey:pgo

Conversation

@jakebailey

@jakebailey Jake Bailey (jakebailey) commented Oct 27, 2026 •

Copy link
Copy Markdown
Member

Let's give this a try again.

PGO training

default.pgo is generated by the Generate PGO profile workflow in microsoft/typescript-benchmarking; this one came from run 40764058553 against TypeScript main (equivalent to 050fb369ee1, which this branch has merged).

The workflow builds a non-PGO noembed compiler, then profiles one emit-enabled compilation of each compiler scenario that perf test this faster benchmarks, with diagnostic reporting disabled to avoid profiling forced garbage collections. The CPU profiles are merged with go tool pprof -proto, without normalization.

Scenarios: Compiler-Unions, angular-1, arktype, class-transformer, effect, mui-docs, sentry, social-app, strada-build-src, strada-compiler, t3code-server, tanstack-router, ts-pre-modules, vscode, webpack, xstate-main.

Scenario setup and configs are in cases/scenarios; the emit overrides are in scripts/src/generatePgo.ts.

Optimize the compiler for real-world checking and emit workloads by
making a representative CPU profile available to Go's default PGO build.

The training workload is one emit-enabled compilation each of VS Code,
Sentry, Bluesky, t3code server, t3code web, and Material UI docs from
jakebailey/TypeScript-blog-benchmarks, using the default four checkers.
Profiles were collected at 4163ca1 with Go 1.27.3 on linux/amd64.

Following golang/go's src/cmd/compile/profile.sh, merge the six CPU
profiles with go tool pprof -proto, retaining their CPU-sample weights.
Copilot AI balanced review requested due to automatic review settings October 27, 2026 21:46
@github-project-automation github-project-automation Bot moved this to Not started in PR Backlog Oct 27, 2026
@typescript-automation typescript-automation Bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Oct 27, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.

@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

Provisional hosted-runner results: these VMs are not the dedicated benchmark machines. Results may be noisier and are not comparable to the historical series. For comparisons, both revisions of each scenario ran on the same VM.

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=12
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=12
Types 79,607 79,607 ~ ~ ~ p=1.000 n=12
Memory Used 104,188k (± 0.02%) 104,126k (± 0.03%) -63k (- 0.06%) 104,041k 104,214k p=0.004 n=12
Memory Allocs 2,200,666 (± 0.00%) 2,029,582 (± 0.00%) 🟩-171,084 (- 7.77%) 2,029,351 2,029,830 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.032s (± 3.56%) 0.032s (± 4.16%) ~ 0.028s 0.034s p=0.677 n=12
Bind Time 0.012s (± 4.64%) 0.012s (± 9.27%) ~ 0.010s 0.016s p=0.878 n=12
Check Time 0.340s (± 0.70%) 0.341s (± 1.37%) ~ 0.331s 0.352s p=0.830 n=12
Emit Time 0.211s (± 1.62%) 0.208s (± 2.50%) ~ 0.194s 0.220s p=0.433 n=12
Total Time 0.600s (± 0.70%) 0.598s (± 1.63%) ~ 0.581s 0.620s p=0.640 n=12
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=12
Symbols 586,513 (± 0.02%) 586,570 (± 0.01%) ~ 586,389 586,750 p=0.298 n=12
Types 241,693 (± 0.00%) 241,691 (± 0.00%) ~ 241,690 241,693 p=0.055 n=12
Memory Used 517,800k (± 0.02%) 517,908k (± 0.02%) ~ 517,589k 518,278k p=0.219 n=12
Memory Allocs 13,117,484 (± 0.07%) 12,267,305 (± 0.07%) 🟩-850,179 (- 6.48%) 12,258,369 12,307,842 p=0.000 n=12
Config Time 0.017s (± 1.07%) 0.017s ~ ~ ~ p=1.000 n=12
Parse Time 0.188s (± 2.62%) 0.183s (± 3.24%) ~ 0.172s 0.209s p=0.053 n=12
Bind Time 0.054s (±11.73%) 0.052s (± 7.39%) ~ 0.050s 0.072s p=0.255 n=12
Check Time 0s 0s ~ ~ ~ p=1.000 n=12
Emit Time 1.130s (± 1.27%) 1.130s (± 1.56%) ~ 1.081s 1.177s p=0.989 n=12
Total Time 1.403s (± 0.68%) 1.394s (± 1.34%) ~ 1.338s 1.447s p=0.385 n=12
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 685,943 685,943 ~ ~ ~ p=1.000 n=12
Types 939,490 939,490 ~ ~ ~ p=1.000 n=12
Memory Used 497,263k (± 0.01%) 497,236k (± 0.02%) ~ 497,056k 497,411k p=0.713 n=12
Memory Allocs 12,803,992 (± 0.02%) 12,735,560 (± 0.01%) -68,432 (- 0.53%) 12,732,810 12,740,481 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.058s (± 3.26%) 0.057s (± 2.35%) ~ 0.054s 0.062s p=0.352 n=12
Bind Time 0.017s (±11.48%) 0.019s (± 9.88%) 🔻+0.002s (+12.20%) 0.015s 0.025s p=0.046 n=12
Check Time 1.371s (± 0.68%) 1.396s (± 0.52%) +0.024s (+ 1.76%) 1.378s 1.412s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.488s (± 0.70%) 1.516s (± 0.70%) +0.028s (+ 1.90%) 1.493s 1.541s p=0.000 n=12
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=12
Symbols 3,784,027 3,784,027 ~ ~ ~ p=1.000 n=12
Types 1,355,982 1,355,982 ~ ~ ~ p=1.000 n=12
Memory Used 1,831,344k (± 0.10%) 1,830,307k (± 0.09%) ~ 1,826,188k 1,835,497k p=0.378 n=12
Memory Allocs 26,706,258 (± 0.07%) 25,560,195 (± 0.09%) 🟩-1,146,063 (- 4.29%) 25,513,915 25,605,192 p=0.000 n=12
Config Time 0.014s (± 2.00%) 0.014s (± 2.00%) ~ 0.014s 0.015s p=1.000 n=12
Parse Time 0.488s (± 2.88%) 0.496s (± 3.03%) ~ 0.449s 0.541s p=0.599 n=12
Bind Time 0.001s (±23.23%) 0.001s (±16.76%) ~ 0.001s 0.002s p=0.317 n=12
Check Time 4.507s (± 0.39%) 4.354s (± 0.47%) 🟩-0.152s (- 3.38%) 4.304s 4.440s p=0.000 n=12
Emit Time 0.419s (± 5.24%) 0.389s (± 7.90%) 🟩-0.030s (- 7.17%) 0.329s 0.467s p=0.046 n=12
Total Time 6.218s (± 0.59%) 6.094s (± 0.78%) -0.123s (- 1.98%) 5.985s 6.202s p=0.000 n=12
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=12
Symbols 4,793,249 4,793,249 ~ ~ ~ p=1.000 n=12
Types 2,607,051 2,607,051 ~ ~ ~ p=1.000 n=12
Memory Used 2,879,163k (± 0.06%) 2,878,144k (± 0.03%) ~ 2,876,566k 2,880,230k p=0.767 n=12
Memory Allocs 75,984,467 (± 0.08%) 75,168,151 (± 0.19%) -816,317 (- 1.07%) 74,876,845 75,648,528 p=0.000 n=12
Config Time 0.044s (± 0.70%) 0.045s (± 0.81%) ~ 0.044s 0.046s p=0.073 n=12
Parse Time 0.704s (± 3.69%) 0.694s (± 3.13%) ~ 0.642s 0.745s p=0.744 n=12
Bind Time 0.185s (±14.05%) 0.214s (±15.03%) 🔻+0.029s (+15.71%) 0.172s 0.298s p=0.003 n=12
Check Time 9.119s (± 0.38%) 9.139s (± 0.41%) ~ 9.074s 9.277s p=0.478 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 10.107s (± 0.48%) 10.147s (± 0.40%) ~ 10.067s 10.292s p=0.285 n=12
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,883,075 1,883,075 ~ ~ ~ p=1.000 n=12
Types 1,158,171 1,158,171 ~ ~ ~ p=1.000 n=12
Memory Used 971,652k (± 0.02%) 971,738k (± 0.03%) ~ 971,107k 972,461k p=0.932 n=12
Memory Allocs 13,713,815 (± 0.17%) 13,573,054 (± 0.19%) -140,761 (- 1.03%) 13,523,148 13,667,521 p=0.000 n=12
Config Time 0.015s (± 1.93%) 0.015s (± 1.65%) ~ 0.014s 0.015s p=1.000 n=12
Parse Time 0.246s (± 3.56%) 0.242s (± 2.88%) ~ 0.227s 0.269s p=0.599 n=12
Bind Time 0.052s (±13.19%) 0.054s (± 9.65%) 🔻+0.002s (+ 4.65%) 0.048s 0.080s p=0.043 n=12
Check Time 2.119s (± 0.44%) 2.106s (± 0.66%) ~ 2.071s 2.158s p=0.097 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 2.452s (± 0.42%) 2.435s (± 0.62%) ~ 2.397s 2.478s p=0.086 n=12
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,184,976 1,184,976 ~ ~ ~ p=1.000 n=12
Types 438,967 438,967 ~ ~ ~ p=1.000 n=12
Memory Used 1,168,665k (± 0.38%) 1,166,772k (± 0.29%) ~ 1,159,022k 1,175,972k p=0.410 n=12
Memory Allocs 77,390,458 (± 0.14%) 76,201,933 (± 0.15%) -1,188,526 (- 1.54%) 75,969,201 76,601,679 p=0.000 n=12
Config Time 0.004s (±17.94%) 0.004s (±16.90%) ~ 0.002s 0.006s p=0.733 n=12
Parse Time 0.188s (± 2.75%) 0.181s (± 1.92%) 🟩-0.007s (- 3.90%) 0.172s 0.188s p=0.043 n=12
Bind Time 0.000s 0.000s (±217.90%) ~ 0.000s 0.002s p=1.000 n=12
Check Time 1.183s (± 0.92%) 1.180s (± 0.47%) ~ 1.162s 1.191s p=1.000 n=12
Emit Time 0.217s (± 1.58%) 0.210s (± 2.03%) 🟩-0.007s (- 3.38%) 0.197s 0.223s p=0.010 n=12
Total Time 14.075s (± 0.97%) 13.828s (± 0.55%) -0.247s (- 1.76%) 13.605s 14.000s p=0.004 n=12
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 263,513 263,513 ~ ~ ~ p=1.000 n=12
Types 196,118 196,118 ~ ~ ~ p=1.000 n=12
Memory Used 224,587k (± 0.03%) 224,573k (± 0.02%) ~ 224,468k 224,701k p=0.977 n=12
Memory Allocs 4,303,416 (± 0.01%) 4,239,811 (± 0.01%) -63,605 (- 1.48%) 4,238,838 4,240,521 p=0.000 n=12
Config Time 0.001s (±19.81%) 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.071s (± 3.95%) 0.068s (± 4.08%) ~ 0.061s 0.075s p=0.153 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.595s (± 0.69%) 0.590s (± 0.62%) ~ 0.582s 0.598s p=0.173 n=12
Emit Time 0.092s (± 4.13%) 0.092s (± 2.20%) ~ 0.087s 0.097s p=0.765 n=12
Total Time 0.793s (± 1.03%) 0.786s (± 0.73%) ~ 0.773s 0.804s p=0.247 n=12
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 4,350,705 4,350,705 ~ ~ ~ p=1.000 n=12
Types 3,040,691 3,040,691 ~ ~ ~ p=1.000 n=12
Memory Used 2,432,850k (± 0.02%) 2,433,078k (± 0.03%) ~ 2,431,597k 2,434,940k p=0.630 n=12
Memory Allocs 37,892,311 (± 0.04%) 37,513,057 (± 0.11%) -379,254 (- 1.00%) 37,443,245 37,663,958 p=0.000 n=12
Config Time 0.005s 0.005s ~ ~ ~ p=1.000 n=12
Parse Time 0.361s (± 2.77%) 0.361s (± 1.87%) ~ 0.348s 0.382s p=0.660 n=12
Bind Time 0.118s (±13.06%) 0.108s (± 7.45%) ~ 0.099s 0.147s p=0.416 n=12
Check Time 10.979s (± 0.89%) 10.758s (± 0.45%) -0.222s (- 2.02%) 10.654s 10.918s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 11.477s (± 0.86%) 11.245s (± 0.43%) -0.231s (- 2.02%) 11.163s 11.404s p=0.000 n=12
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=12
Symbols 231,617 231,617 ~ ~ ~ p=1.000 n=12
Types 181,196 181,196 ~ ~ ~ p=1.000 n=12
Memory Used 193,541k (± 0.02%) 193,504k (± 0.03%) ~ 193,369k 193,630k p=0.198 n=12
Memory Allocs 1,372,719 (± 0.02%) 1,317,818 (± 0.02%) 🟩-54,901 (- 4.00%) 1,317,068 1,318,469 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.061s (± 3.96%) 0.059s (± 4.35%) ~ 0.053s 0.066s p=0.268 n=12
Bind Time 0.026s (± 5.17%) 0.027s (± 7.10%) ~ 0.022s 0.032s p=0.554 n=12
Check Time 0.459s (± 0.80%) 0.451s (± 0.83%) -0.007s (- 1.60%) 0.442s 0.460s p=0.009 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.556s (± 0.56%) 0.546s (± 0.79%) -0.010s (- 1.81%) 0.535s 0.554s p=0.001 n=12
vscode - native
Errors 10 10 ~ ~ ~ p=1.000 n=12
Symbols 7,304,211 7,304,211 ~ ~ ~ p=1.000 n=12
Types 4,304,434 4,304,434 ~ ~ ~ p=1.000 n=12
Memory Used 5,086,949k (± 0.02%) 5,086,496k (± 0.01%) ~ 5,085,076k 5,088,316k p=0.478 n=12
Memory Allocs 64,311,898 (± 0.01%) 56,094,174 (± 0.03%) 🟩-8,217,725 (-12.78%) 56,062,698 56,134,425 p=0.000 n=12
Config Time 0.070s (± 0.75%) 0.071s (± 1.41%) ~ 0.069s 0.075s p=0.181 n=12
Parse Time 1.352s (± 2.00%) 1.322s (± 2.19%) -0.030s (- 2.22%) 1.251s 1.404s p=0.050 n=12
Bind Time 0.417s (±10.47%) 0.406s (± 3.16%) ~ 0.378s 0.448s p=0.541 n=12
Check Time 10.724s (± 0.67%) 10.843s (± 0.68%) +0.118s (+ 1.10%) 10.661s 11.035s p=0.025 n=12
Emit Time 3.868s (± 4.95%) 3.442s (± 4.00%) 🟩-0.426s (-11.01%) 3.304s 4.114s p=0.000 n=12
Total Time 16.504s (± 1.09%) 16.156s (± 1.05%) -0.349s (- 2.11%) 15.926s 16.934s p=0.001 n=12
webpack - native
Errors 619 619 ~ ~ ~ p=1.000 n=12
Symbols 918,308 918,308 ~ ~ ~ p=1.000 n=12
Types 638,248 638,248 ~ ~ ~ p=1.000 n=12
Memory Used 691,232k (± 0.02%) 691,082k (± 0.02%) ~ 690,813k 691,488k p=0.178 n=12
Memory Allocs 6,612,636 (± 0.01%) 6,500,597 (± 0.05%) -112,039 (- 1.69%) 6,496,104 6,514,896 p=0.000 n=12
Config Time 0.007s (± 4.22%) 0.008s (± 4.38%) ~ 0.007s 0.008s p=0.680 n=12
Parse Time 0.207s (± 5.61%) 0.208s (± 4.22%) ~ 0.172s 0.227s p=0.787 n=12
Bind Time 0.063s (±11.60%) 0.061s (±12.37%) ~ 0.053s 0.090s p=0.466 n=12
Check Time 1.731s (± 0.29%) 1.681s (± 0.42%) -0.050s (- 2.87%) 1.662s 1.707s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 2.043s (± 0.52%) 1.993s (± 0.91%) -0.050s (- 2.44%) 1.942s 2.049s p=0.000 n=12
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 640,494 640,494 ~ ~ ~ p=1.000 n=12
Types 387,992 387,992 ~ ~ ~ p=1.000 n=12
Memory Used 350,846k (± 0.03%) 350,779k (± 0.04%) ~ 350,498k 351,187k p=0.319 n=12
Memory Allocs 4,067,693 (± 0.05%) 4,009,858 (± 0.03%) -57,835 (- 1.42%) 4,007,247 4,015,155 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.089s (± 2.66%) 0.087s (± 2.36%) ~ 0.083s 0.095s p=0.243 n=12
Bind Time 0.024s (± 8.00%) 0.025s (± 9.10%) ~ 0.022s 0.033s p=0.155 n=12
Check Time 0.607s (± 0.73%) 0.629s (± 0.75%) +0.022s (+ 3.65%) 0.615s 0.642s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.727s (± 0.76%) 0.749s (± 0.66%) +0.022s (+ 3.04%) 0.732s 0.761s p=0.000 n=12
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 12
Baseline baseline 12

Developer Information:

Download Benchmarks

The initial profile mostly represents large TypeScript applications.
Broaden it to include checker-heavy library code, declaration emit,
JavaScript checking, and project-reference builds.

Add one emit-enabled CPU profile each from ArkType, Webpack, and the
TypeScript strada source build, using the same non-PGO seed compiler.
Retain the original six profiles and merge all nine with pprof -proto,
without reweighting their CPU samples. XState is excluded from training
and reserved as an independent evaluation workload.

Additional input revisions:
ArkType: c34bf69b3371f63ae383ac533e63ad9311452a8b
Webpack: 573ed5e52662f6c82ad0b6025ea13ccc2e6ba3a9
TypeScript strada: b465fdb

ArkType emits JavaScript and declarations; Webpack checks and emits
JavaScript with its existing diagnostics; the strada build uses
-b src --force and emits declarations for the project-reference graph.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started ❌ Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey), the perf run you requested failed. You can check the log here.

Coverage builds with PGO exhaust the default temporary filesystem quota
on the Linux ARM64 runner. Use the runner's temporary storage so tests
and benchmarks can retain PGO without running out of temporary space.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

Provisional hosted-runner results: these VMs are not the dedicated benchmark machines. Results may be noisier and are not comparable to the historical series. For comparisons, both revisions of each scenario ran on the same VM.

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=12
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=12
Types 79,607 79,607 ~ ~ ~ p=1.000 n=12
Memory Used 104,166k (± 0.04%) 104,145k (± 0.04%) ~ 104,067k 104,245k p=0.443 n=12
Memory Allocs 2,200,566 (± 0.01%) 2,029,703 (± 0.00%) 🟩-170,863 (- 7.76%) 2,029,481 2,029,846 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.032s (± 3.02%) 0.031s (± 3.24%) ~ 0.028s 0.033s p=0.134 n=12
Bind Time 0.011s (± 5.19%) 0.011s (± 6.47%) ~ 0.009s 0.013s p=0.704 n=12
Check Time 0.338s (± 0.49%) 0.324s (± 0.65%) 🟩-0.015s (- 4.33%) 0.319s 0.330s p=0.000 n=12
Emit Time 0.208s (± 1.67%) 0.197s (± 1.97%) 🟩-0.011s (- 5.33%) 0.181s 0.206s p=0.000 n=12
Total Time 0.595s (± 0.71%) 0.567s (± 0.70%) 🟩-0.027s (- 4.60%) 0.556s 0.580s p=0.000 n=12
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=12
Symbols 586,591 (± 0.02%) 586,630 (± 0.02%) ~ 586,212 586,945 p=0.630 n=12
Types 241,691 (± 0.00%) 241,693 (± 0.00%) ~ 241,690 241,695 p=0.068 n=12
Memory Used 517,697k (± 0.02%) 517,846k (± 0.03%) ~ 517,493k 518,332k p=0.203 n=12
Memory Allocs 13,113,478 (± 0.02%) 12,265,574 (± 0.07%) 🟩-847,903 (- 6.47%) 12,257,644 12,308,996 p=0.000 n=12
Config Time 0.017s 0.017s (± 1.06%) ~ 0.017s 0.018s p=1.000 n=12
Parse Time 0.190s (± 3.18%) 0.185s (± 2.10%) ~ 0.174s 0.194s p=0.324 n=12
Bind Time 0.052s (± 7.38%) 0.052s (± 4.32%) ~ 0.049s 0.063s p=0.052 n=12
Check Time 0s 0s ~ ~ ~ p=1.000 n=12
Emit Time 1.151s (± 1.19%) 1.139s (± 1.77%) ~ 1.096s 1.196s p=0.298 n=12
Total Time 1.423s (± 0.65%) 1.406s (± 1.35%) ~ 1.355s 1.455s p=0.147 n=12
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 685,943 685,943 ~ ~ ~ p=1.000 n=12
Types 939,490 939,490 ~ ~ ~ p=1.000 n=12
Memory Used 497,187k (± 0.02%) 497,200k (± 0.01%) ~ 497,034k 497,336k p=0.640 n=12
Memory Allocs 12,804,864 (± 0.02%) 12,734,703 (± 0.02%) -70,161 (- 0.55%) 12,731,844 12,745,931 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.062s (± 4.53%) 0.061s (± 5.22%) ~ 0.057s 0.073s p=0.430 n=12
Bind Time 0.018s (± 7.40%) 0.018s (±11.73%) ~ 0.016s 0.026s p=0.749 n=12
Check Time 1.394s (± 0.67%) 1.395s (± 0.57%) ~ 1.371s 1.414s p=0.875 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.515s (± 0.72%) 1.518s (± 0.91%) ~ 1.488s 1.556s p=0.810 n=12
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=12
Symbols 3,784,027 3,784,027 ~ ~ ~ p=1.000 n=12
Types 1,355,982 1,355,982 ~ ~ ~ p=1.000 n=12
Memory Used 1,829,545k (± 0.07%) 1,829,315k (± 0.07%) ~ 1,826,553k 1,834,197k p=0.590 n=12
Memory Allocs 26,680,351 (± 0.06%) 25,583,478 (± 0.13%) 🟩-1,096,873 (- 4.11%) 25,518,510 25,718,569 p=0.000 n=12
Config Time 0.014s (± 1.29%) 0.014s (± 1.73%) ~ 0.014s 0.015s p=1.000 n=12
Parse Time 0.489s (± 2.11%) 0.494s (± 3.04%) ~ 0.453s 0.533s p=0.504 n=12
Bind Time 0.002s (±21.90%) 0.001s (±16.76%) ~ 0.001s 0.002s p=0.069 n=12
Check Time 4.385s (± 0.57%) 4.222s (± 0.63%) 🟩-0.162s (- 3.70%) 4.150s 4.283s p=0.000 n=12
Emit Time 0.391s (± 7.53%) 0.377s (± 3.38%) ~ 0.331s 0.389s p=0.080 n=12
Total Time 6.080s (± 0.84%) 5.925s (± 0.76%) -0.155s (- 2.54%) 5.834s 6.107s p=0.000 n=12
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=12
Symbols 4,793,249 4,793,249 ~ ~ ~ p=1.000 n=12
Types 2,607,051 2,607,051 ~ ~ ~ p=1.000 n=12
Memory Used 2,879,330k (± 0.07%) 2,879,036k (± 0.03%) ~ 2,876,756k 2,882,859k p=0.977 n=12
Memory Allocs 76,021,267 (± 0.08%) 75,051,837 (± 0.21%) -969,430 (- 1.28%) 74,703,986 75,630,238 p=0.000 n=12
Config Time 0.045s (± 0.69%) 0.045s (± 0.60%) ~ 0.044s 0.046s p=0.199 n=12
Parse Time 0.707s (± 2.83%) 0.726s (± 3.20%) ~ 0.676s 0.815s p=0.081 n=12
Bind Time 0.198s (±15.07%) 0.217s (±13.62%) 🔻+0.019s (+ 9.70%) 0.170s 0.312s p=0.050 n=12
Check Time 9.282s (± 0.38%) 9.227s (± 0.34%) -0.055s (- 0.59%) 9.140s 9.309s p=0.028 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 10.289s (± 0.52%) 10.280s (± 0.43%) ~ 10.139s 10.393s p=0.966 n=12
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,883,075 1,883,075 ~ ~ ~ p=1.000 n=12
Types 1,158,171 1,158,171 ~ ~ ~ p=1.000 n=12
Memory Used 971,741k (± 0.02%) 971,976k (± 0.02%) ~ 971,680k 972,541k p=0.097 n=12
Memory Allocs 13,712,574 (± 0.15%) 13,625,807 (± 0.38%) -86,767 (- 0.63%) 13,557,070 13,800,761 p=0.005 n=12
Config Time 0.014s (± 2.16%) 0.015s (± 1.93%) ~ 0.014s 0.015s p=0.100 n=12
Parse Time 0.237s (± 3.16%) 0.257s (± 3.59%) 🔻+0.020s (+ 8.39%) 0.235s 0.287s p=0.001 n=12
Bind Time 0.050s (±10.84%) 0.064s (±14.78%) 🔻+0.013s (+26.70%) 0.050s 0.097s p=0.001 n=12
Check Time 2.086s (± 0.39%) 2.137s (± 0.87%) +0.051s (+ 2.46%) 2.085s 2.194s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 2.407s (± 0.50%) 2.494s (± 1.05%) +0.087s (+ 3.61%) 2.427s 2.568s p=0.000 n=12
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,184,976 1,184,976 ~ ~ ~ p=1.000 n=12
Types 438,967 438,967 ~ ~ ~ p=1.000 n=12
Memory Used 1,170,186k (± 0.27%) 1,170,769k (± 0.56%) ~ 1,151,190k 1,193,928k p=0.843 n=12
Memory Allocs 77,330,278 (± 0.15%) 76,265,563 (± 0.20%) -1,064,716 (- 1.38%) 75,852,187 76,556,513 p=0.000 n=12
Config Time 0.006s (±10.93%) 0.006s (±13.36%) ~ 0.003s 0.007s p=0.958 n=12
Parse Time 0.229s (± 3.11%) 0.233s (± 2.19%) ~ 0.222s 0.250s p=0.325 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 1.487s (± 0.69%) 1.507s (± 0.71%) +0.020s (+ 1.33%) 1.466s 1.525s p=0.007 n=12
Emit Time 0.278s (± 7.84%) 0.270s (± 3.36%) ~ 0.255s 0.305s p=0.599 n=12
Total Time 17.682s (± 1.27%) 17.778s (± 0.93%) ~ 17.389s 18.216s p=0.291 n=12
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 263,513 263,513 ~ ~ ~ p=1.000 n=12
Types 196,118 196,118 ~ ~ ~ p=1.000 n=12
Memory Used 224,659k (± 0.03%) 224,586k (± 0.01%) ~ 224,493k 224,666k p=0.071 n=12
Memory Allocs 4,304,087 (± 0.01%) 4,240,029 (± 0.01%) -64,058 (- 1.49%) 4,239,314 4,241,151 p=0.000 n=12
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.074s (± 3.79%) 0.074s (± 4.32%) ~ 0.065s 0.081s p=0.786 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.595s (± 0.45%) 0.585s (± 0.55%) -0.010s (- 1.68%) 0.575s 0.594s p=0.000 n=12
Emit Time 0.096s (± 3.92%) 0.091s (± 4.99%) 🟩-0.005s (- 5.37%) 0.085s 0.113s p=0.007 n=12
Total Time 0.801s (± 0.85%) 0.784s (± 0.71%) -0.016s (- 2.03%) 0.765s 0.798s p=0.000 n=12
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 4,350,705 4,350,705 ~ ~ ~ p=1.000 n=12
Types 3,040,691 3,040,691 ~ ~ ~ p=1.000 n=12
Memory Used 2,433,743k (± 0.04%) 2,433,128k (± 0.03%) ~ 2,431,638k 2,436,330k p=0.291 n=12
Memory Allocs 37,872,149 (± 0.05%) 37,488,502 (± 0.09%) -383,646 (- 1.01%) 37,438,732 37,647,155 p=0.000 n=12
Config Time 0.005s 0.005s ~ ~ ~ p=1.000 n=12
Parse Time 0.355s (± 2.39%) 0.352s (± 2.47%) ~ 0.339s 0.389s p=0.284 n=12
Bind Time 0.114s (±11.66%) 0.114s (±11.56%) ~ 0.100s 0.168s p=0.898 n=12
Check Time 10.758s (± 0.45%) 10.342s (± 0.35%) 🟩-0.416s (- 3.86%) 10.248s 10.426s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 11.244s (± 0.42%) 10.827s (± 0.33%) 🟩-0.417s (- 3.71%) 10.745s 10.896s p=0.000 n=12
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=12
Symbols 231,617 231,617 ~ ~ ~ p=1.000 n=12
Types 181,196 181,196 ~ ~ ~ p=1.000 n=12
Memory Used 193,540k (± 0.02%) 193,506k (± 0.01%) ~ 193,420k 193,569k p=0.080 n=12
Memory Allocs 1,372,446 (± 0.01%) 1,317,765 (± 0.01%) 🟩-54,681 (- 3.98%) 1,317,389 1,318,437 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.065s (± 3.68%) 0.059s (± 3.08%) 🟩-0.005s (- 8.01%) 0.054s 0.064s p=0.003 n=12
Bind Time 0.027s (± 5.59%) 0.026s (± 7.80%) ~ 0.022s 0.033s p=0.348 n=12
Check Time 0.463s (± 0.63%) 0.451s (± 0.73%) -0.012s (- 2.49%) 0.444s 0.461s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.564s (± 0.56%) 0.546s (± 0.68%) 🟩-0.018s (- 3.18%) 0.536s 0.556s p=0.000 n=12
vscode - native
Errors 10 10 ~ ~ ~ p=1.000 n=12
Symbols 7,332,462 7,332,462 ~ ~ ~ p=1.000 n=12
Types 4,311,168 4,311,168 ~ ~ ~ p=1.000 n=12
Memory Used 5,098,576k (± 0.02%) 5,097,836k (± 0.02%) ~ 5,096,154k 5,100,193k p=0.291 n=12
Memory Allocs 64,450,648 (± 0.06%) 56,180,146 (± 0.02%) 🟩-8,270,502 (-12.83%) 56,165,339 56,234,430 p=0.000 n=12
Config Time 0.069s (± 0.61%) 0.069s (± 0.65%) ~ 0.068s 0.070s p=0.081 n=12
Parse Time 1.322s (± 1.97%) 1.299s (± 1.78%) ~ 1.257s 1.383s p=0.124 n=12
Bind Time 0.389s (± 2.16%) 0.421s (±10.03%) ~ 0.382s 0.579s p=0.202 n=12
Check Time 11.325s (± 0.68%) 11.426s (± 0.75%) +0.102s (+ 0.90%) 11.232s 11.650s p=0.025 n=12
Emit Time 3.734s (± 2.71%) 3.438s (± 6.86%) 🟩-0.296s (- 7.94%) 3.164s 4.218s p=0.006 n=12
Total Time 16.909s (± 0.96%) 16.725s (± 1.63%) ~ 16.208s 17.636s p=0.089 n=12
webpack - native
Errors 619 619 ~ ~ ~ p=1.000 n=12
Symbols 925,044 925,044 ~ ~ ~ p=1.000 n=12
Types 647,695 647,695 ~ ~ ~ p=1.000 n=12
Memory Used 697,574k (± 0.02%) 697,619k (± 0.01%) ~ 697,363k 697,949k p=0.478 n=12
Memory Allocs 6,677,291 (± 0.03%) 6,558,825 (± 0.01%) -118,466 (- 1.77%) 6,556,973 6,561,571 p=0.000 n=12
Config Time 0.007s 0.007s ~ ~ ~ p=1.000 n=12
Parse Time 0.202s (± 4.73%) 0.196s (± 3.66%) ~ 0.179s 0.212s p=0.451 n=12
Bind Time 0.061s (±15.54%) 0.056s (± 7.76%) ~ 0.050s 0.076s p=0.989 n=12
Check Time 1.692s (± 0.75%) 1.608s (± 0.87%) 🟩-0.084s (- 4.95%) 1.584s 1.647s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.997s (± 1.04%) 1.904s (± 0.85%) 🟩-0.093s (- 4.64%) 1.868s 1.953s p=0.000 n=12
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 640,494 640,494 ~ ~ ~ p=1.000 n=12
Types 387,992 387,992 ~ ~ ~ p=1.000 n=12
Memory Used 350,803k (± 0.02%) 350,911k (± 0.03%) ~ 350,679k 351,223k p=0.128 n=12
Memory Allocs 4,066,067 (± 0.05%) 4,009,218 (± 0.08%) -56,849 (- 1.40%) 3,999,705 4,016,740 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.090s (± 4.09%) 0.089s (± 3.11%) ~ 0.082s 0.096s p=0.579 n=12
Bind Time 0.026s (±11.68%) 0.026s (±11.00%) ~ 0.022s 0.034s p=0.875 n=12
Check Time 0.603s (± 0.91%) 0.614s (± 0.70%) +0.011s (+ 1.85%) 0.606s 0.627s p=0.002 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.728s (± 0.86%) 0.738s (± 0.63%) +0.010s (+ 1.32%) 0.726s 0.752s p=0.004 n=12
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 12
Baseline baseline 12

Developer Information:

Download Benchmarks

Extended diagnostics force two garbage collections after compilation,
which biases the training profile toward work normal builds do not do.
Train on the same nine emit-enabled workloads without diagnostic
reporting so PGO reflects ordinary compiler execution.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

Provisional hosted-runner results: these VMs are not the dedicated benchmark machines. Results may be noisier and are not comparable to the historical series. For comparisons, both revisions of each scenario ran on the same VM.

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=12
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=12
Types 79,607 79,607 ~ ~ ~ p=1.000 n=12
Memory Used 104,144k (± 0.04%) 104,151k (± 0.04%) ~ 104,057k 104,291k p=1.000 n=12
Memory Allocs 2,200,568 (± 0.01%) 1,266,280 (± 0.01%) 🟩-934,288 (-42.46%) 1,265,964 1,266,809 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.032s (± 3.21%) 0.031s (± 2.70%) ~ 0.029s 0.033s p=0.206 n=12
Bind Time 0.011s (± 7.44%) 0.012s (± 5.26%) ~ 0.011s 0.014s p=0.088 n=12
Check Time 0.305s (± 0.49%) 0.295s (± 1.21%) 🟩-0.010s (- 3.14%) 0.289s 0.306s p=0.000 n=12
Emit Time 0.202s (± 1.98%) 0.179s (± 1.64%) 🟩-0.023s (-11.48%) 0.169s 0.185s p=0.000 n=12
Total Time 0.556s (± 0.85%) 0.522s (± 1.01%) 🟩-0.034s (- 6.15%) 0.511s 0.539s p=0.000 n=12
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=12
Symbols 586,552 (± 0.01%) 586,497 (± 0.02%) ~ 586,173 586,817 p=0.671 n=12
Types 241,692 (± 0.00%) 241,692 (± 0.00%) ~ 241,690 241,692 p=1.000 n=12
Memory Used 517,907k (± 0.03%) 517,766k (± 0.02%) ~ 517,523k 518,017k p=0.160 n=12
Memory Allocs 13,111,317 (± 0.01%) 7,807,689 (± 0.21%) 🟩-5,303,628 (-40.45%) 7,797,329 7,889,710 p=0.000 n=12
Config Time 0.017s (± 1.45%) 0.017s (± 1.07%) ~ 0.016s 0.017s p=1.000 n=12
Parse Time 0.187s (± 2.44%) 0.191s (± 3.96%) ~ 0.175s 0.216s p=0.599 n=12
Bind Time 0.052s (±11.67%) 0.051s (± 2.78%) -0.001s (- 0.97%) 0.050s 0.058s p=0.004 n=12
Check Time 0s 0s ~ ~ ~ p=1.000 n=12
Emit Time 1.153s (± 1.73%) 1.049s (± 1.12%) 🟩-0.104s (- 9.03%) 1.027s 1.086s p=0.000 n=12
Total Time 1.419s (± 1.35%) 1.319s (± 1.33%) 🟩-0.100s (- 7.04%) 1.289s 1.394s p=0.000 n=12
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 685,943 685,943 ~ ~ ~ p=1.000 n=12
Types 939,490 939,490 ~ ~ ~ p=1.000 n=12
Memory Used 497,162k (± 0.01%) 497,250k (± 0.02%) ~ 497,108k 497,497k p=0.143 n=12
Memory Allocs 12,803,172 (± 0.02%) 12,096,831 (± 0.01%) 🟩-706,341 (- 5.52%) 12,094,085 12,101,125 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.059s (± 4.06%) 0.058s (± 4.17%) ~ 0.050s 0.066s p=0.538 n=12
Bind Time 0.016s (± 3.90%) 0.017s (± 6.50%) ~ 0.015s 0.020s p=0.542 n=12
Check Time 1.354s (± 0.67%) 1.351s (± 0.52%) ~ 1.333s 1.369s p=0.723 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.466s (± 0.71%) 1.463s (± 0.50%) ~ 1.443s 1.479s p=0.854 n=12
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=12
Symbols 3,784,027 3,784,027 ~ ~ ~ p=1.000 n=12
Types 1,355,982 1,355,982 ~ ~ ~ p=1.000 n=12
Memory Used 1,830,236k (± 0.08%) 1,831,474k (± 0.09%) ~ 1,828,656k 1,836,701k p=0.272 n=12
Memory Allocs 26,689,729 (± 0.07%) 25,988,353 (± 0.07%) -701,376 (- 2.63%) 25,958,428 26,054,055 p=0.000 n=12
Config Time 0.014s (± 1.29%) 0.014s (± 1.29%) ~ 0.014s 0.015s p=1.000 n=12
Parse Time 0.501s (± 2.63%) 0.495s (± 2.69%) ~ 0.452s 0.518s p=0.523 n=12
Bind Time 0.002s (±35.77%) 0.001s 🟩-0.001s (-36.84%) ~ ~ p=0.037 n=12
Check Time 4.319s (± 0.57%) 4.203s (± 0.68%) -0.116s (- 2.69%) 4.140s 4.283s p=0.000 n=12
Emit Time 0.399s (± 8.56%) 0.404s (± 5.30%) ~ 0.383s 0.468s p=0.966 n=12
Total Time 6.024s (± 0.85%) 5.920s (± 0.92%) -0.104s (- 1.72%) 5.811s 6.079s p=0.010 n=12
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=12
Symbols 4,793,249 4,793,249 ~ ~ ~ p=1.000 n=12
Types 2,607,051 2,607,051 ~ ~ ~ p=1.000 n=12
Memory Used 2,879,080k (± 0.05%) 2,880,864k (± 0.07%) ~ 2,876,169k 2,887,401k p=0.160 n=12
Memory Allocs 75,978,704 (± 0.18%) 75,035,355 (± 0.09%) -943,349 (- 1.24%) 74,843,633 75,230,501 p=0.000 n=12
Config Time 0.044s (± 1.28%) 0.044s (± 0.95%) ~ 0.044s 0.046s p=1.000 n=12
Parse Time 0.730s (± 5.03%) 0.707s (± 4.00%) ~ 0.644s 0.784s p=0.242 n=12
Bind Time 0.176s (± 7.74%) 0.215s (±13.90%) 🔻+0.039s (+22.10%) 0.179s 0.304s p=0.001 n=12
Check Time 9.180s (± 0.54%) 8.974s (± 0.18%) -0.206s (- 2.25%) 8.928s 9.000s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 10.189s (± 0.71%) 9.998s (± 0.21%) -0.191s (- 1.88%) 9.954s 10.052s p=0.000 n=12
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,883,075 1,883,075 ~ ~ ~ p=1.000 n=12
Types 1,158,171 1,158,171 ~ ~ ~ p=1.000 n=12
Memory Used 971,566k (± 0.02%) 971,551k (± 0.02%) ~ 971,075k 971,894k p=0.977 n=12
Memory Allocs 13,712,219 (± 0.23%) 13,545,522 (± 0.13%) -166,697 (- 1.22%) 13,507,829 13,601,852 p=0.000 n=12
Config Time 0.015s (± 1.22%) 0.015s (± 2.11%) ~ 0.014s 0.015s p=0.317 n=12
Parse Time 0.240s (± 2.58%) 0.239s (± 3.08%) ~ 0.225s 0.264s p=0.638 n=12
Bind Time 0.054s (±17.96%) 0.067s (±13.76%) 🔻+0.013s (+24.85%) 0.052s 0.089s p=0.006 n=12
Check Time 2.137s (± 0.27%) 2.080s (± 0.70%) -0.057s (- 2.67%) 2.047s 2.115s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 2.465s (± 0.47%) 2.421s (± 0.78%) -0.043s (- 1.76%) 2.377s 2.474s p=0.000 n=12
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,184,976 1,184,976 ~ ~ ~ p=1.000 n=12
Types 438,967 438,967 ~ ~ ~ p=1.000 n=12
Memory Used 1,168,815k (± 0.42%) 1,157,376k (± 0.35%) -11,438k (- 0.98%) 1,150,015k 1,174,201k p=0.002 n=12
Memory Allocs 77,347,843 (± 0.20%) 47,547,898 (± 0.12%) 🟩-29,799,945 (-38.53%) 47,426,207 47,699,251 p=0.000 n=12
Config Time 0.005s (±20.66%) 0.004s (± 7.59%) ~ 0.003s 0.004s p=0.094 n=12
Parse Time 0.188s (± 2.86%) 0.184s (± 3.08%) ~ 0.170s 0.205s p=0.173 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 1.137s (± 1.53%) 1.136s (± 0.77%) ~ 1.116s 1.159s p=0.660 n=12
Emit Time 0.220s (± 2.76%) 0.172s (± 2.13%) 🟩-0.047s (-21.56%) 0.166s 0.184s p=0.000 n=12
Total Time 13.682s (± 1.29%) 12.998s (± 0.84%) 🟩-0.684s (- 5.00%) 12.755s 13.280s p=0.000 n=12
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 263,513 263,513 ~ ~ ~ p=1.000 n=12
Types 196,118 196,118 ~ ~ ~ p=1.000 n=12
Memory Used 224,653k (± 0.02%) 224,609k (± 0.02%) ~ 224,546k 224,740k p=0.068 n=12
Memory Allocs 4,303,511 (± 0.01%) 2,403,345 (± 0.01%) 🟩-1,900,166 (-44.15%) 2,402,507 2,403,853 p=0.000 n=12
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.077s (± 4.93%) 0.070s (± 5.84%) 🟩-0.007s (- 9.24%) 0.063s 0.082s p=0.012 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.560s (± 0.76%) 0.549s (± 0.58%) -0.011s (- 1.95%) 0.540s 0.556s p=0.000 n=12
Emit Time 0.093s (± 3.19%) 0.057s (± 5.54%) 🟩-0.035s (-37.98%) 0.051s 0.065s p=0.000 n=12
Total Time 0.766s (± 0.92%) 0.713s (± 0.89%) 🟩-0.053s (- 6.92%) 0.699s 0.734s p=0.000 n=12
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 4,350,705 4,350,705 ~ ~ ~ p=1.000 n=12
Types 3,040,691 3,040,691 ~ ~ ~ p=1.000 n=12
Memory Used 2,433,559k (± 0.04%) 2,433,251k (± 0.03%) ~ 2,431,333k 2,435,296k p=0.590 n=12
Memory Allocs 37,889,742 (± 0.05%) 37,344,534 (± 0.07%) -545,208 (- 1.44%) 37,287,478 37,392,501 p=0.000 n=12
Config Time 0.005s (± 3.57%) 0.005s ~ ~ ~ p=1.000 n=12
Parse Time 0.361s (± 2.84%) 0.353s (± 4.08%) ~ 0.316s 0.379s p=0.640 n=12
Bind Time 0.114s (±10.07%) 0.127s (±14.15%) ~ 0.099s 0.172s p=0.787 n=12
Check Time 10.797s (± 0.49%) 10.284s (± 0.33%) 🟩-0.513s (- 4.75%) 10.207s 10.389s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 11.292s (± 0.52%) 10.784s (± 0.27%) 🟩-0.508s (- 4.50%) 10.691s 10.857s p=0.000 n=12
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=12
Symbols 231,617 231,617 ~ ~ ~ p=1.000 n=12
Types 181,196 181,196 ~ ~ ~ p=1.000 n=12
Memory Used 193,532k (± 0.01%) 193,544k (± 0.02%) ~ 193,487k 193,697k p=0.832 n=12
Memory Allocs 1,372,819 (± 0.02%) 1,320,107 (± 0.02%) 🟩-52,712 (- 3.84%) 1,319,654 1,320,627 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.063s (± 3.72%) 0.062s (± 4.53%) ~ 0.055s 0.067s p=0.764 n=12
Bind Time 0.028s (± 6.58%) 0.027s (± 5.26%) ~ 0.022s 0.030s p=0.483 n=12
Check Time 0.433s (± 0.64%) 0.423s (± 0.73%) -0.011s (- 2.48%) 0.416s 0.432s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.534s (± 0.69%) 0.520s (± 0.80%) -0.014s (- 2.54%) 0.509s 0.529s p=0.000 n=12
vscode - native
Errors 10 10 ~ ~ ~ p=1.000 n=12
Symbols 7,332,462 7,332,462 ~ ~ ~ p=1.000 n=12
Types 4,311,168 4,311,168 ~ ~ ~ p=1.000 n=12
Memory Used 5,099,170k (± 0.04%) 5,098,593k (± 0.02%) ~ 5,096,384k 5,101,491k p=0.932 n=12
Memory Allocs 64,441,018 (± 0.03%) 55,954,037 (± 0.01%) 🟩-8,486,981 (-13.17%) 55,944,735 55,971,163 p=0.000 n=12
Config Time 0.068s (± 0.48%) 0.069s (± 0.73%) ~ 0.067s 0.070s p=1.000 n=12
Parse Time 1.293s (± 1.21%) 1.210s (± 2.08%) 🟩-0.083s (- 6.45%) 1.132s 1.258s p=0.000 n=12
Bind Time 0.394s (± 7.11%) 0.435s (±14.15%) ~ 0.368s 0.629s p=0.190 n=12
Check Time 11.053s (± 0.58%) 11.156s (± 0.34%) +0.103s (+ 0.93%) 11.068s 11.269s p=0.001 n=12
Emit Time 3.693s (± 4.50%) 3.419s (± 7.36%) 🟩-0.274s (- 7.41%) 3.140s 4.108s p=0.033 n=12
Total Time 16.571s (± 1.28%) 16.356s (± 1.67%) -0.215s (- 1.30%) 15.974s 17.048s p=0.033 n=12
webpack - native
Errors 619 619 ~ ~ ~ p=1.000 n=12
Symbols 925,044 925,044 ~ ~ ~ p=1.000 n=12
Types 647,695 647,695 ~ ~ ~ p=1.000 n=12
Memory Used 697,581k (± 0.03%) 697,577k (± 0.02%) ~ 697,340k 698,057k p=0.630 n=12
Memory Allocs 6,676,737 (± 0.02%) 6,566,583 (± 0.02%) -110,154 (- 1.65%) 6,563,705 6,571,823 p=0.000 n=12
Config Time 0.007s (± 5.39%) 0.007s (± 5.59%) ~ 0.007s 0.009s p=0.932 n=12
Parse Time 0.207s (± 4.04%) 0.202s (± 4.41%) ~ 0.185s 0.228s p=0.385 n=12
Bind Time 0.068s (±12.73%) 0.062s (±11.81%) ~ 0.051s 0.091s p=0.213 n=12
Check Time 1.689s (± 0.75%) 1.611s (± 0.85%) 🟩-0.078s (- 4.63%) 1.580s 1.651s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 2.006s (± 0.70%) 1.920s (± 1.02%) 🟩-0.086s (- 4.30%) 1.878s 1.985s p=0.000 n=12
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 640,494 640,494 ~ ~ ~ p=1.000 n=12
Types 387,992 387,992 ~ ~ ~ p=1.000 n=12
Memory Used 350,845k (± 0.03%) 350,816k (± 0.02%) ~ 350,645k 351,039k p=0.887 n=12
Memory Allocs 4,063,633 (± 0.09%) 3,980,333 (± 0.07%) -83,300 (- 2.05%) 3,974,805 3,987,670 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.096s (± 4.63%) 0.090s (± 3.41%) 🟩-0.006s (- 6.52%) 0.082s 0.099s p=0.020 n=12
Bind Time 0.026s (± 8.96%) 0.030s (±16.95%) ~ 0.023s 0.046s p=0.480 n=12
Check Time 0.611s (± 0.82%) 0.642s (± 1.53%) 🔻+0.032s (+ 5.17%) 0.615s 0.677s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.741s (± 1.03%) 0.769s (± 1.89%) +0.028s (+ 3.84%) 0.730s 0.816s p=0.001 n=12
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 12
Baseline baseline 12

Developer Information:

Download Benchmarks

Refresh training against the current compiler so the profile reflects
recent checker and symbol-table optimizations.
The previous profile predates recent checker optimizations and lacks
coverage of the newly added benchmark scenarios. Refresh the training
corpus to cover Effect, TanStack Router, and decorator-heavy
class-transformer alongside the existing workloads.

Keep diagnostic reporting disabled so forced collections do not skew
the CPU samples.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

Provisional hosted-runner results: these VMs are not the dedicated benchmark machines. Results may be noisier and are not comparable to the historical series. For comparisons, both revisions of each scenario ran on the same VM.

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=12
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=12
Types 79,607 79,607 ~ ~ ~ p=1.000 n=12
Memory Used 104,150k (± 0.03%) 104,114k (± 0.03%) ~ 104,038k 104,202k p=0.164 n=12
Memory Allocs 2,200,911 (± 0.00%) 1,262,567 (± 0.01%) 🟩-938,343 (-42.63%) 1,262,017 1,262,893 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.023s (± 3.62%) 0.021s (± 3.81%) 🟩-0.001s (- 6.25%) 0.020s 0.024s p=0.014 n=12
Bind Time 0.009s (± 9.99%) 0.009s (± 5.65%) ~ 0.008s 0.010s p=0.861 n=12
Check Time 0.234s (± 1.01%) 0.222s (± 0.98%) 🟩-0.012s (- 5.23%) 0.216s 0.229s p=0.000 n=12
Emit Time 0.160s (± 1.20%) 0.146s (± 2.01%) 🟩-0.014s (- 8.66%) 0.139s 0.156s p=0.000 n=12
Total Time 0.429s (± 0.95%) 0.401s (± 1.09%) 🟩-0.028s (- 6.47%) 0.394s 0.417s p=0.000 n=12
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=12
Symbols 586,603 (± 0.02%) 586,481 (± 0.02%) ~ 586,222 586,779 p=0.101 n=12
Types 241,693 (± 0.00%) 241,694 (± 0.00%) ~ 241,690 241,703 p=0.655 n=12
Memory Used 517,948k (± 0.03%) 518,113k (± 0.02%) +165k (+ 0.03%) 517,874k 518,385k p=0.024 n=12
Memory Allocs 13,120,043 (± 0.10%) 7,848,639 (± 0.08%) 🟩-5,271,404 (-40.18%) 7,841,084 7,879,813 p=0.000 n=12
Config Time 0.009s 0.009s (± 2.00%) ~ 0.009s 0.010s p=1.000 n=12
Parse Time 0.136s (± 4.53%) 0.126s (± 3.04%) 🟩-0.009s (- 6.87%) 0.117s 0.137s p=0.016 n=12
Bind Time 0.040s (± 6.29%) 0.045s (±14.61%) 🔻+0.005s (+12.71%) 0.038s 0.068s p=0.047 n=12
Check Time 0s 0s ~ ~ ~ p=1.000 n=12
Emit Time 0.915s (± 1.32%) 0.859s (± 1.91%) 🟩-0.056s (- 6.07%) 0.829s 0.907s p=0.000 n=12
Total Time 1.113s (± 1.09%) 1.050s (± 1.89%) 🟩-0.063s (- 5.67%) 1.020s 1.108s p=0.000 n=12
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 685,943 685,943 ~ ~ ~ p=1.000 n=12
Types 939,490 939,490 ~ ~ ~ p=1.000 n=12
Memory Used 497,248k (± 0.01%) 497,313k (± 0.01%) ~ 497,095k 497,444k p=0.052 n=12
Memory Allocs 12,804,546 (± 0.01%) 12,114,051 (± 0.02%) 🟩-690,496 (- 5.39%) 12,110,647 12,121,630 p=0.000 n=12
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.043s (± 4.96%) 0.042s (± 3.02%) ~ 0.039s 0.045s p=0.414 n=12
Bind Time 0.013s (±14.38%) 0.014s (±12.66%) ~ 0.011s 0.020s p=0.445 n=12
Check Time 0.980s (± 0.56%) 0.962s (± 0.79%) -0.018s (- 1.85%) 0.946s 0.986s p=0.001 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.068s (± 0.31%) 1.050s (± 0.60%) -0.018s (- 1.71%) 1.037s 1.067s p=0.000 n=12
class-transformer - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 45,376 45,376 ~ ~ ~ p=1.000 n=12
Types 7,573 7,573 ~ ~ ~ p=1.000 n=12
Memory Used 27,845k (± 0.02%) 27,835k (± 0.02%) -10k (- 0.04%) 27,818k 27,845k p=0.006 n=12
Memory Allocs 323,351 (± 0.05%) 248,530 (± 0.06%) 🟩-74,821 (-23.14%) 248,071 249,058 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.009s (± 6.65%) 0.009s (± 3.08%) ~ 0.009s 0.010s p=0.736 n=12
Bind Time 0.003s (±18.36%) 0.003s (±14.42%) ~ 0.002s 0.004s p=0.386 n=12
Check Time 0.008s (± 5.31%) 0.008s (± 5.05%) ~ 0.007s 0.009s p=0.699 n=12
Emit Time 0.010s (± 2.68%) 0.008s (± 7.45%) 🟩-0.002s (-15.83%) 0.007s 0.010s p=0.000 n=12
Total Time 0.031s (± 1.50%) 0.029s (± 2.30%) 🟩-0.002s (- 5.38%) 0.028s 0.031s p=0.001 n=12
effect - native
Errors 12 12 ~ ~ ~ p=1.000 n=12
Symbols 1,235,117 1,235,117 ~ ~ ~ p=1.000 n=12
Types 894,115 894,115 ~ ~ ~ p=1.000 n=12
Memory Used 940,555k (± 0.03%) 940,749k (± 0.02%) ~ 940,381k 941,331k p=0.266 n=12
Memory Allocs 15,751,436 (± 0.02%) 12,639,252 (± 0.02%) 🟩-3,112,184 (-19.76%) 12,632,278 12,646,700 p=0.000 n=12
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=12
Parse Time 0.156s (± 1.49%) 0.151s (± 3.10%) 🟩-0.005s (- 3.41%) 0.141s 0.167s p=0.016 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.994s (± 1.23%) 0.954s (± 1.11%) 🟩-0.040s (- 4.06%) 0.918s 0.980s p=0.000 n=12
Emit Time 0.518s (± 1.51%) 0.512s (± 2.31%) ~ 0.475s 0.534s p=0.639 n=12
Total Time 1.768s (± 0.75%) 1.718s (± 1.27%) -0.050s (- 2.81%) 1.661s 1.768s p=0.001 n=12
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=12
Symbols 3,784,027 3,784,027 ~ ~ ~ p=1.000 n=12
Types 1,355,982 1,355,982 ~ ~ ~ p=1.000 n=12
Memory Used 1,835,990k (± 0.09%) 1,836,335k (± 0.11%) ~ 1,830,522k 1,839,385k p=0.551 n=12
Memory Allocs 26,741,172 (± 0.10%) 26,054,234 (± 0.08%) -686,938 (- 2.57%) 26,005,605 26,114,524 p=0.000 n=12
Config Time 0.008s 0.008s (± 2.25%) ~ 0.008s 0.009s p=1.000 n=12
Parse Time 0.286s (± 3.39%) 0.283s (± 3.32%) ~ 0.271s 0.316s p=0.311 n=12
Bind Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Check Time 3.250s (± 0.69%) 3.040s (± 0.74%) 🟩-0.210s (- 6.46%) 2.979s 3.090s p=0.000 n=12
Emit Time 0.244s (± 1.39%) 0.242s (± 2.53%) ~ 0.232s 0.271s p=0.102 n=12
Total Time 4.264s (± 0.54%) 4.057s (± 0.72%) 🟩-0.207s (- 4.86%) 3.986s 4.132s p=0.000 n=12
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=12
Symbols 4,793,249 4,793,249 ~ ~ ~ p=1.000 n=12
Types 2,607,051 2,607,051 ~ ~ ~ p=1.000 n=12
Memory Used 2,881,450k (± 0.05%) 2,881,431k (± 0.05%) ~ 2,878,799k 2,885,250k p=0.932 n=12
Memory Allocs 75,933,076 (± 0.08%) 75,286,130 (± 0.06%) -646,946 (- 0.85%) 75,171,177 75,382,556 p=0.000 n=12
Config Time 0.025s (± 1.55%) 0.025s (± 1.27%) ~ 0.025s 0.026s p=0.371 n=12
Parse Time 0.486s (± 2.28%) 0.457s (± 2.18%) 🟩-0.030s (- 6.13%) 0.430s 0.478s p=0.000 n=12
Bind Time 0.142s (± 9.40%) 0.188s (±13.21%) 🔻+0.046s (+32.59%) 0.144s 0.244s p=0.000 n=12
Check Time 6.891s (± 0.54%) 6.636s (± 0.72%) 🟩-0.256s (- 3.71%) 6.556s 6.812s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 7.594s (± 0.38%) 7.361s (± 0.47%) 🟩-0.233s (- 3.07%) 7.303s 7.494s p=0.000 n=12
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,883,075 1,883,075 ~ ~ ~ p=1.000 n=12
Types 1,158,171 1,158,171 ~ ~ ~ p=1.000 n=12
Memory Used 972,713k (± 0.02%) 972,402k (± 0.02%) ~ 971,752k 972,979k p=0.060 n=12
Memory Allocs 13,702,887 (± 0.13%) 13,603,130 (± 0.17%) -99,756 (- 0.73%) 13,566,419 13,659,331 p=0.000 n=12
Config Time 0.008s 0.008s ~ ~ ~ p=1.000 n=12
Parse Time 0.158s (± 2.32%) 0.162s (± 4.08%) ~ 0.147s 0.175s p=0.541 n=12
Bind Time 0.040s (±12.21%) 0.051s (±11.76%) 🔻+0.011s (+27.48%) 0.039s 0.066s p=0.001 n=12
Check Time 1.531s (± 0.51%) 1.482s (± 0.46%) 🟩-0.049s (- 3.19%) 1.461s 1.495s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.754s (± 0.72%) 1.723s (± 0.76%) -0.031s (- 1.74%) 1.686s 1.750s p=0.001 n=12
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 1,184,976 1,184,976 ~ ~ ~ p=1.000 n=12
Types 438,967 438,967 ~ ~ ~ p=1.000 n=12
Memory Used 1,172,557k (± 0.20%) 1,167,481k (± 0.43%) -5,076k (- 0.43%) 1,152,335k 1,184,773k p=0.045 n=12
Memory Allocs 77,355,750 (± 0.13%) 47,614,029 (± 0.13%) 🟩-29,741,721 (-38.45%) 47,466,934 47,764,365 p=0.000 n=12
Config Time 0.002s (± 8.72%) 0.002s (±20.19%) ~ 0.001s 0.003s p=0.784 n=12
Parse Time 0.139s (± 1.49%) 0.133s (± 1.90%) 🟩-0.006s (- 4.32%) 0.125s 0.138s p=0.001 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.830s (± 0.48%) 0.813s (± 0.78%) -0.017s (- 2.10%) 0.791s 0.827s p=0.000 n=12
Emit Time 0.175s (± 1.90%) 0.140s (± 2.16%) 🟩-0.035s (-19.71%) 0.133s 0.153s p=0.000 n=12
Total Time 10.013s (± 0.37%) 9.422s (± 0.56%) 🟩-0.591s (- 5.90%) 9.274s 9.555s p=0.000 n=12
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 263,513 263,513 ~ ~ ~ p=1.000 n=12
Types 196,118 196,118 ~ ~ ~ p=1.000 n=12
Memory Used 224,612k (± 0.03%) 224,623k (± 0.02%) ~ 224,497k 224,742k p=0.810 n=12
Memory Allocs 4,304,398 (± 0.01%) 2,394,411 (± 0.01%) 🟩-1,909,986 (-44.37%) 2,393,702 2,395,171 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.050s (± 3.74%) 0.049s (± 4.14%) ~ 0.044s 0.054s p=0.448 n=12
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Check Time 0.393s (± 0.83%) 0.384s (± 1.83%) -0.008s (- 2.10%) 0.372s 0.402s p=0.029 n=12
Emit Time 0.077s (± 3.13%) 0.048s (± 7.06%) 🟩-0.029s (-38.10%) 0.042s 0.056s p=0.000 n=12
Total Time 0.550s (± 0.71%) 0.509s (± 1.78%) 🟩-0.041s (- 7.41%) 0.495s 0.539s p=0.000 n=12
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 4,350,705 4,350,705 ~ ~ ~ p=1.000 n=12
Types 3,040,691 3,040,691 ~ ~ ~ p=1.000 n=12
Memory Used 2,433,600k (± 0.03%) 2,435,043k (± 0.04%) +1,443k (+ 0.06%) 2,433,454k 2,438,741k p=0.014 n=12
Memory Allocs 37,869,434 (± 0.06%) 37,343,828 (± 0.04%) -525,607 (- 1.39%) 37,304,733 37,381,019 p=0.000 n=12
Config Time 0.003s 0.003s ~ ~ ~ p=1.000 n=12
Parse Time 0.271s (± 3.43%) 0.252s (± 1.73%) 🟩-0.019s (- 7.09%) 0.239s 0.265s p=0.001 n=12
Bind Time 0.079s (± 2.42%) 0.079s (± 3.68%) ~ 0.076s 0.092s p=0.334 n=12
Check Time 7.631s (± 1.00%) 7.194s (± 0.66%) 🟩-0.437s (- 5.73%) 7.094s 7.338s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 7.995s (± 0.99%) 7.538s (± 0.63%) 🟩-0.457s (- 5.71%) 7.437s 7.687s p=0.000 n=12
tanstack-router - native
Errors 1 1 ~ ~ ~ p=1.000 n=12
Symbols 571,760 571,760 ~ ~ ~ p=1.000 n=12
Types 397,693 397,693 ~ ~ ~ p=1.000 n=12
Memory Used 331,393k (± 0.02%) 331,385k (± 0.01%) ~ 331,282k 331,526k p=0.887 n=12
Memory Allocs 5,094,220 (± 0.11%) 4,400,123 (± 0.40%) 🟩-694,097 (-13.63%) 4,385,302 4,485,663 p=0.000 n=12
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.041s (± 3.11%) 0.041s (± 6.03%) ~ 0.035s 0.046s p=0.809 n=12
Bind Time 0.012s (± 3.39%) 0.014s (±15.82%) ~ 0.012s 0.021s p=0.464 n=12
Check Time 0.610s (± 1.06%) 0.592s (± 1.01%) -0.018s (- 2.95%) 0.580s 0.614s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.690s (± 0.63%) 0.669s (± 1.14%) 🟩-0.021s (- 3.09%) 0.653s 0.697s p=0.000 n=12
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=12
Symbols 231,617 231,617 ~ ~ ~ p=1.000 n=12
Types 181,196 181,196 ~ ~ ~ p=1.000 n=12
Memory Used 193,549k (± 0.02%) 193,522k (± 0.02%) ~ 193,409k 193,640k p=0.409 n=12
Memory Allocs 1,373,126 (± 0.02%) 1,322,082 (± 0.02%) 🟩-51,044 (- 3.72%) 1,321,602 1,322,685 p=0.000 n=12
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Parse Time 0.043s (± 2.73%) 0.041s (± 4.25%) 🟩-0.003s (- 5.95%) 0.036s 0.045s p=0.015 n=12
Bind Time 0.022s (± 6.90%) 0.021s (± 9.58%) ~ 0.017s 0.028s p=0.351 n=12
Check Time 0.308s (± 2.17%) 0.298s (± 2.30%) ~ 0.285s 0.318s p=0.053 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.381s (± 1.52%) 0.366s (± 1.84%) 🟩-0.014s (- 3.74%) 0.349s 0.387s p=0.003 n=12
vscode - native
Errors 10 10 ~ ~ ~ p=1.000 n=12
Symbols 7,331,315 7,331,315 ~ ~ ~ p=1.000 n=12
Types 4,311,190 4,311,190 ~ ~ ~ p=1.000 n=12
Memory Used 5,100,721k (± 0.02%) 5,100,682k (± 0.02%) ~ 5,097,532k 5,102,373k p=0.755 n=12
Memory Allocs 64,433,862 (± 0.01%) 56,021,536 (± 0.01%) 🟩-8,412,326 (-13.06%) 56,006,236 56,058,764 p=0.000 n=12
Config Time 0.034s (± 2.00%) 0.034s (± 1.77%) ~ 0.033s 0.036s p=0.640 n=12
Parse Time 0.910s (± 1.09%) 0.896s (± 3.43%) -0.013s (- 1.48%) 0.845s 1.032s p=0.028 n=12
Bind Time 0.315s (± 9.88%) 0.295s (± 1.13%) 🟩-0.020s (- 6.22%) 0.288s 0.303s p=0.037 n=12
Check Time 8.045s (± 0.65%) 7.899s (± 0.53%) -0.145s (- 1.80%) 7.816s 8.058s p=0.001 n=12
Emit Time 2.938s (± 4.37%) 2.638s (± 4.58%) 🟩-0.300s (-10.22%) 2.530s 3.096s p=0.002 n=12
Total Time 12.300s (± 0.96%) 11.818s (± 1.24%) 🟩-0.482s (- 3.92%) 11.624s 12.296s p=0.001 n=12
webpack - native
Errors 619 619 ~ ~ ~ p=1.000 n=12
Symbols 925,044 925,044 ~ ~ ~ p=1.000 n=12
Types 647,695 647,695 ~ ~ ~ p=1.000 n=12
Memory Used 697,780k (± 0.02%) 697,636k (± 0.02%) ~ 697,290k 697,989k p=0.114 n=12
Memory Allocs 6,680,750 (± 0.02%) 6,568,944 (± 0.01%) -111,807 (- 1.67%) 6,566,479 6,571,750 p=0.000 n=12
Config Time 0.004s 0.004s ~ ~ ~ p=1.000 n=12
Parse Time 0.145s (± 4.39%) 0.138s (± 3.53%) ~ 0.128s 0.151s p=0.065 n=12
Bind Time 0.048s (±16.26%) 0.048s (±15.81%) ~ 0.038s 0.073s p=0.679 n=12
Check Time 1.214s (± 1.17%) 1.133s (± 0.70%) 🟩-0.080s (- 6.63%) 1.119s 1.165s p=0.000 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 1.434s (± 1.49%) 1.347s (± 1.12%) 🟩-0.087s (- 6.05%) 1.320s 1.392s p=0.000 n=12
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=12
Symbols 640,494 640,494 ~ ~ ~ p=1.000 n=12
Types 387,992 387,992 ~ ~ ~ p=1.000 n=12
Memory Used 350,874k (± 0.02%) 350,953k (± 0.03%) ~ 350,760k 351,446k p=0.285 n=12
Memory Allocs 4,065,403 (± 0.10%) 3,979,536 (± 0.07%) -85,867 (- 2.11%) 3,972,680 3,989,309 p=0.000 n=12
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=12
Parse Time 0.061s (± 4.59%) 0.060s (± 3.83%) ~ 0.054s 0.066s p=0.398 n=12
Bind Time 0.019s (±15.03%) 0.021s (±16.81%) ~ 0.017s 0.034s p=0.109 n=12
Check Time 0.427s (± 2.44%) 0.421s (± 1.98%) ~ 0.404s 0.452s p=0.434 n=12
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=12
Total Time 0.513s (± 2.21%) 0.508s (± 1.84%) ~ 0.489s 0.542s p=0.619 n=12
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • class-transformer - native
  • effect - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • tanstack-router - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 12
Baseline baseline 12

Developer Information:

Download Benchmarks

@jakebailey Jake Bailey (jakebailey) added the Domain: Performance Reports of unusually slow behavior label Oct 28, 2026
Profiles were previously trained by hand on a local machine, which
made them hard to reproduce or refresh. The benchmarking repo now
generates the profile from the same compiler scenarios the perf bot
measures, so take its output from a run against current main.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
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 - native
Errors 41 41 ~ ~ ~ p=1.000 n=20
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=20
Types 79,607 79,607 ~ ~ ~ p=1.000 n=20
Memory Used 104,147k (± 0.03%) 104,151k (± 0.03%) ~ 104,028k 104,273k p=0.931 n=20
Memory Allocs 2,200,577 (± 0.00%) 1,263,609 (± 0.01%) 🟩-936,968 (-42.58%) 1,263,241 1,264,066 p=0.000 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.024s (± 5.20%) 0.021s (± 2.54%) 🟩-0.003s (-11.46%) 0.019s 0.023s p=0.000 n=20
Bind Time 0.010s (±10.85%) 0.008s (± 4.81%) 🟩-0.001s (-15.38%) 0.007s 0.010s p=0.011 n=20
Check Time 0.239s (± 2.84%) 0.213s (± 0.76%) 🟩-0.026s (-10.90%) 0.206s 0.221s p=0.000 n=20
Emit Time 0.162s (± 2.14%) 0.142s (± 1.21%) 🟩-0.020s (-12.54%) 0.137s 0.151s p=0.000 n=20
Total Time 0.438s (± 2.61%) 0.387s (± 0.73%) 🟩-0.051s (-11.56%) 0.374s 0.398s p=0.000 n=20
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=20
Symbols 586,483 (± 0.02%) 586,507 (± 0.02%) ~ 586,192 586,943 p=0.846 n=20
Types 241,688 (± 0.00%) 241,687 (± 0.00%) ~ 241,683 241,697 p=0.440 n=20
Memory Used 517,924k (± 0.01%) 517,958k (± 0.02%) ~ 517,525k 518,329k p=0.482 n=20
Memory Allocs 13,115,322 (± 0.03%) 7,801,539 (± 0.14%) 🟩-5,313,783 (-40.52%) 7,786,691 7,867,540 p=0.000 n=20
Config Time 0.009s (± 5.64%) 0.009s (± 1.87%) ~ 0.009s 0.010s p=0.605 n=20
Parse Time 0.130s (± 3.22%) 0.129s (± 4.10%) ~ 0.114s 0.166s p=0.614 n=20
Bind Time 0.050s (±10.23%) 0.053s (±11.44%) ~ 0.040s 0.080s p=0.783 n=20
Check Time 0s 0s ~ ~ ~ p=1.000 n=20
Emit Time 0.957s (± 2.39%) 0.892s (± 1.75%) 🟩-0.065s (- 6.78%) 0.852s 0.986s p=0.000 n=20
Total Time 1.159s (± 1.98%) 1.096s (± 1.64%) 🟩-0.062s (- 5.38%) 1.047s 1.189s p=0.000 n=20
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 685,920 685,920 ~ ~ ~ p=1.000 n=20
Types 939,467 939,467 ~ ~ ~ p=1.000 n=20
Memory Used 497,248k (± 0.01%) 497,268k (± 0.01%) ~ 497,096k 497,579k p=0.579 n=20
Memory Allocs 12,804,659 (± 0.01%) 12,108,220 (± 0.01%) 🟩-696,439 (- 5.44%) 12,103,238 12,114,984 p=0.000 n=20
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=20
Parse Time 0.041s (± 2.72%) 0.041s (± 2.89%) ~ 0.037s 0.047s p=0.867 n=20
Bind Time 0.013s (± 9.23%) 0.012s (± 6.63%) 🟩-0.001s (- 8.61%) 0.011s 0.018s p=0.028 n=20
Check Time 0.998s (± 0.52%) 0.988s (± 0.67%) -0.010s (- 1.01%) 0.964s 1.008s p=0.029 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.085s (± 0.47%) 1.071s (± 0.55%) -0.013s (- 1.24%) 1.052s 1.089s p=0.001 n=20
class-transformer - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 45,376 45,376 ~ ~ ~ p=1.000 n=20
Types 7,573 7,573 ~ ~ ~ p=1.000 n=20
Memory Used 27,838k (± 0.02%) 27,835k (± 0.02%) ~ 27,818k 27,861k p=0.116 n=20
Memory Allocs 323,288 (± 0.04%) 248,526 (± 0.03%) 🟩-74,762 (-23.13%) 248,032 248,859 p=0.000 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.009s (± 2.24%) 0.009s (± 2.34%) 🟩-0.000s (- 3.78%) 0.008s 0.010s p=0.039 n=20
Bind Time 0.003s (±13.34%) 0.003s (±13.12%) ~ 0.002s 0.004s p=0.777 n=20
Check Time 0.008s (± 5.35%) 0.008s (± 3.78%) ~ 0.007s 0.009s p=0.840 n=20
Emit Time 0.010s (± 3.66%) 0.008s (± 5.34%) 🟩-0.001s (-15.10%) 0.007s 0.010s p=0.000 n=20
Total Time 0.031s (± 1.23%) 0.029s (± 1.57%) 🟩-0.002s (- 6.81%) 0.027s 0.031s p=0.000 n=20
effect - native
Errors 12 12 ~ ~ ~ p=1.000 n=20
Symbols 1,235,115 1,235,115 ~ ~ ~ p=1.000 n=20
Types 894,113 894,113 ~ ~ ~ p=1.000 n=20
Memory Used 940,570k (± 0.02%) 940,412k (± 0.02%) ~ 939,770k 941,057k p=0.265 n=20
Memory Allocs 15,751,999 (± 0.01%) 12,670,061 (± 0.02%) 🟩-3,081,939 (-19.57%) 12,660,856 12,686,338 p=0.000 n=20
Config Time 0.002s 0.002s (± 6.84%) ~ 0.002s 0.003s p=0.487 n=20
Parse Time 0.156s (± 1.89%) 0.148s (± 1.45%) 🟩-0.009s (- 5.44%) 0.139s 0.157s p=0.000 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.955s (± 0.75%) 0.928s (± 0.67%) -0.027s (- 2.84%) 0.906s 0.948s p=0.000 n=20
Emit Time 0.524s (± 2.08%) 0.500s (± 2.07%) 🟩-0.025s (- 4.70%) 0.471s 0.546s p=0.002 n=20
Total Time 1.731s (± 0.60%) 1.669s (± 0.59%) 🟩-0.062s (- 3.57%) 1.627s 1.720s p=0.000 n=20
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=20
Symbols 3,784,019 3,784,019 ~ ~ ~ p=1.000 n=20
Types 1,355,974 1,355,974 ~ ~ ~ p=1.000 n=20
Memory Used 1,837,525k (± 0.06%) 1,837,046k (± 0.09%) ~ 1,829,164k 1,843,077k p=0.758 n=20
Memory Allocs 26,753,732 (± 0.06%) 25,988,176 (± 0.11%) -765,557 (- 2.86%) 25,860,479 26,134,573 p=0.000 n=20
Config Time 0.009s (± 1.61%) 0.009s ~ ~ ~ p=0.487 n=20
Parse Time 0.305s (± 2.23%) 0.310s (± 2.08%) ~ 0.284s 0.349s p=0.324 n=20
Bind Time 0.001s 0.001s (±23.93%) ~ 0.001s 0.003s p=0.487 n=20
Check Time 3.384s (± 0.51%) 3.211s (± 0.48%) 🟩-0.173s (- 5.12%) 3.172s 3.269s p=0.000 n=20
Emit Time 0.261s (± 0.78%) 0.254s (± 1.03%) -0.007s (- 2.53%) 0.245s 0.262s p=0.000 n=20
Total Time 4.459s (± 0.47%) 4.298s (± 0.47%) 🟩-0.161s (- 3.61%) 4.245s 4.418s p=0.000 n=20
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=20
Symbols 4,793,245 4,793,245 ~ ~ ~ p=1.000 n=20
Types 2,607,047 2,607,047 ~ ~ ~ p=1.000 n=20
Memory Used 2,880,506k (± 0.03%) 2,880,400k (± 0.03%) ~ 2,878,209k 2,885,974k p=0.640 n=20
Memory Allocs 75,891,280 (± 0.07%) 75,204,662 (± 0.17%) -686,617 (- 0.90%) 74,804,693 75,917,241 p=0.000 n=20
Config Time 0.027s (± 1.19%) 0.027s (± 0.91%) ~ 0.026s 0.028s p=0.369 n=20
Parse Time 0.509s (± 7.75%) 0.502s (± 4.72%) ~ 0.450s 0.630s p=0.984 n=20
Bind Time 0.170s (±11.35%) 0.176s (±10.66%) ~ 0.140s 0.246s p=0.256 n=20
Check Time 7.380s (± 1.11%) 7.174s (± 0.85%) -0.206s (- 2.79%) 6.927s 7.499s p=0.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 8.139s (± 1.22%) 7.932s (± 0.90%) -0.207s (- 2.55%) 7.672s 8.302s p=0.002 n=20
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 1,883,074 1,883,074 ~ ~ ~ p=1.000 n=20
Types 1,158,170 1,158,170 ~ ~ ~ p=1.000 n=20
Memory Used 972,391k (± 0.01%) 972,480k (± 0.02%) ~ 971,733k 972,902k p=0.208 n=20
Memory Allocs 13,699,413 (± 0.10%) 13,567,039 (± 0.14%) -132,374 (- 0.97%) 13,519,912 13,659,174 p=0.000 n=20
Config Time 0.008s (± 1.89%) 0.008s (± 2.98%) ~ 0.008s 0.010s p=0.304 n=20
Parse Time 0.165s (± 3.37%) 0.171s (± 4.81%) ~ 0.148s 0.203s p=0.351 n=20
Bind Time 0.045s (± 8.27%) 0.052s (± 9.87%) 🔻+0.007s (+15.47%) 0.041s 0.077s p=0.002 n=20
Check Time 1.697s (± 1.64%) 1.681s (± 2.80%) ~ 1.537s 1.824s p=0.578 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.935s (± 1.64%) 1.931s (± 2.69%) ~ 1.769s 2.094s p=0.805 n=20
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 1,184,972 1,184,972 ~ ~ ~ p=1.000 n=20
Types 438,963 438,963 ~ ~ ~ p=1.000 n=20
Memory Used 1,173,400k (± 0.34%) 1,168,703k (± 0.37%) -4,697k (- 0.40%) 1,154,051k 1,186,973k p=0.038 n=20
Memory Allocs 77,405,015 (± 0.12%) 47,722,634 (± 0.12%) 🟩-29,682,381 (-38.35%) 47,463,855 47,931,318 p=0.000 n=20
Config Time 0.002s (±12.21%) 0.002s (± 8.97%) ~ 0.001s 0.003s p=0.730 n=20
Parse Time 0.140s (± 1.60%) 0.134s (± 1.42%) 🟩-0.007s (- 4.71%) 0.127s 0.142s p=0.000 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.846s (± 0.41%) 0.820s (± 0.60%) 🟩-0.026s (- 3.09%) 0.806s 0.849s p=0.000 n=20
Emit Time 0.180s (± 1.82%) 0.141s (± 2.02%) 🟩-0.038s (-21.36%) 0.133s 0.157s p=0.000 n=20
Total Time 10.204s (± 0.45%) 9.459s (± 0.44%) 🟩-0.744s (- 7.30%) 9.296s 9.706s p=0.000 n=20
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 263,511 263,511 ~ ~ ~ p=1.000 n=20
Types 196,116 196,116 ~ ~ ~ p=1.000 n=20
Memory Used 224,593k (± 0.02%) 224,559k (± 0.02%) ~ 224,413k 224,696k p=0.176 n=20
Memory Allocs 4,303,994 (± 0.01%) 2,401,015 (± 0.01%) 🟩-1,902,979 (-44.21%) 2,400,104 2,402,044 p=0.000 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.051s (± 4.24%) 0.048s (± 3.08%) 🟩-0.003s (- 5.80%) 0.043s 0.054s p=0.021 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.407s (± 1.09%) 0.389s (± 1.63%) 🟩-0.018s (- 4.48%) 0.376s 0.439s p=0.000 n=20
Emit Time 0.076s (± 2.37%) 0.049s (± 4.99%) 🟩-0.027s (-35.25%) 0.042s 0.057s p=0.000 n=20
Total Time 0.562s (± 1.17%) 0.514s (± 1.41%) 🟩-0.047s (- 8.44%) 0.497s 0.569s p=0.000 n=20
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 4,350,661 4,350,661 ~ ~ ~ p=1.000 n=20
Types 3,040,647 3,040,647 ~ ~ ~ p=1.000 n=20
Memory Used 2,433,964k (± 0.03%) 2,433,700k (± 0.02%) ~ 2,431,599k 2,436,906k p=0.659 n=20
Memory Allocs 37,884,196 (± 0.03%) 37,379,265 (± 0.09%) -504,931 (- 1.33%) 37,305,838 37,602,323 p=0.000 n=20
Config Time 0.003s 0.003s ~ ~ ~ p=1.000 n=20
Parse Time 0.265s (± 1.80%) 0.259s (± 5.18%) -0.006s (- 2.25%) 0.220s 0.372s p=0.007 n=20
Bind Time 0.084s (± 5.48%) 0.085s (± 7.93%) ~ 0.077s 0.134s p=0.384 n=20
Check Time 7.879s (± 0.51%) 7.441s (± 0.50%) 🟩-0.438s (- 5.56%) 7.311s 7.607s p=0.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 8.241s (± 0.52%) 7.799s (± 0.52%) 🟩-0.442s (- 5.36%) 7.669s 7.988s p=0.000 n=20
tanstack-router - native
Errors 1 1 ~ ~ ~ p=1.000 n=20
Symbols 571,756 571,756 ~ ~ ~ p=1.000 n=20
Types 397,689 397,689 ~ ~ ~ p=1.000 n=20
Memory Used 331,424k (± 0.02%) 331,456k (± 0.01%) ~ 331,260k 331,589k p=0.365 n=20
Memory Allocs 5,093,364 (± 0.07%) 4,387,795 (± 0.14%) 🟩-705,569 (-13.85%) 4,375,913 4,429,943 p=0.000 n=20
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=20
Parse Time 0.041s (± 4.06%) 0.039s (± 3.51%) ~ 0.034s 0.043s p=0.143 n=20
Bind Time 0.013s (± 8.60%) 0.013s (±10.08%) ~ 0.011s 0.021s p=0.197 n=20
Check Time 0.588s (± 1.00%) 0.574s (± 0.83%) -0.015s (- 2.52%) 0.547s 0.589s p=0.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.669s (± 0.83%) 0.645s (± 0.83%) 🟩-0.024s (- 3.52%) 0.625s 0.665s p=0.000 n=20
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=20
Symbols 231,616 231,616 ~ ~ ~ p=1.000 n=20
Types 181,195 181,195 ~ ~ ~ p=1.000 n=20
Memory Used 193,547k (± 0.01%) 193,528k (± 0.01%) ~ 193,435k 193,674k p=0.199 n=20
Memory Allocs 1,373,330 (± 0.02%) 1,317,978 (± 0.01%) 🟩-55,353 (- 4.03%) 1,317,575 1,319,115 p=0.000 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.045s (± 2.50%) 0.042s (± 2.46%) 🟩-0.002s (- 4.93%) 0.039s 0.047s p=0.006 n=20
Bind Time 0.023s (± 4.90%) 0.022s (± 4.31%) ~ 0.017s 0.024s p=0.363 n=20
Check Time 0.330s (± 3.43%) 0.310s (± 0.95%) 🟩-0.020s (- 5.96%) 0.301s 0.319s p=0.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.403s (± 2.89%) 0.380s (± 0.83%) 🟩-0.023s (- 5.63%) 0.371s 0.393s p=0.000 n=20
vscode - native
Errors 11 11 ~ ~ ~ p=1.000 n=20
Symbols 7,392,589 7,392,589 ~ ~ ~ p=1.000 n=20
Types 4,362,298 4,362,298 ~ ~ ~ p=1.000 n=20
Memory Used 5,145,940k (± 0.01%) 5,146,366k (± 0.02%) ~ 5,143,350k 5,150,642k p=0.547 n=20
Memory Allocs 65,003,916 (± 0.00%) 56,388,757 (± 0.02%) 🟩-8,615,159 (-13.25%) 56,367,191 56,443,325 p=0.000 n=20
Config Time 0.039s (± 0.92%) 0.038s (± 0.91%) -0.001s (- 2.20%) 0.037s 0.039s p=0.002 n=20
Parse Time 0.948s (± 1.26%) 0.920s (± 1.09%) -0.028s (- 2.95%) 0.891s 0.970s p=0.000 n=20
Bind Time 0.329s (± 1.28%) 0.317s (± 1.73%) 🟩-0.011s (- 3.46%) 0.296s 0.334s p=0.004 n=20
Check Time 8.421s (± 0.43%) 8.157s (± 0.34%) 🟩-0.264s (- 3.14%) 8.027s 8.220s p=0.000 n=20
Emit Time 2.942s (± 3.55%) 2.701s (± 2.67%) 🟩-0.241s (- 8.19%) 2.624s 3.340s p=0.000 n=20
Total Time 12.739s (± 0.62%) 12.190s (± 0.52%) 🟩-0.549s (- 4.31%) 11.988s 12.676s p=0.000 n=20
webpack - native
Errors 619 619 ~ ~ ~ p=1.000 n=20
Symbols 917,280 917,280 ~ ~ ~ p=1.000 n=20
Types 632,992 632,992 ~ ~ ~ p=1.000 n=20
Memory Used 690,391k (± 0.02%) 690,417k (± 0.01%) ~ 690,037k 690,664k p=0.351 n=20
Memory Allocs 6,604,963 (± 0.04%) 6,485,443 (± 0.05%) -119,520 (- 1.81%) 6,480,613 6,506,892 p=0.000 n=20
Config Time 0.004s 0.004s ~ ~ ~ p=1.000 n=20
Parse Time 0.151s (± 6.30%) 0.143s (± 4.06%) ~ 0.125s 0.178s p=0.279 n=20
Bind Time 0.048s (± 9.23%) 0.046s (± 6.76%) ~ 0.038s 0.062s p=0.524 n=20
Check Time 1.189s (± 0.66%) 1.110s (± 0.67%) 🟩-0.079s (- 6.66%) 1.084s 1.145s p=0.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.415s (± 0.77%) 1.327s (± 0.63%) 🟩-0.089s (- 6.27%) 1.299s 1.371s p=0.000 n=20
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 640,490 640,490 ~ ~ ~ p=1.000 n=20
Types 387,988 387,988 ~ ~ ~ p=1.000 n=20
Memory Used 350,922k (± 0.03%) 350,947k (± 0.03%) ~ 350,511k 351,732k p=0.673 n=20
Memory Allocs 4,067,240 (± 0.08%) 3,990,637 (± 0.10%) -76,603 (- 1.88%) 3,979,972 4,008,673 p=0.000 n=20
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=20
Parse Time 0.069s (± 8.97%) 0.064s (± 2.88%) ~ 0.058s 0.072s p=0.054 n=20
Bind Time 0.021s (± 6.00%) 0.022s (± 8.97%) ~ 0.019s 0.034s p=0.159 n=20
Check Time 0.456s (± 2.05%) 0.452s (± 1.42%) ~ 0.437s 0.485s p=0.551 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.552s (± 2.30%) 0.545s (± 1.24%) ~ 0.526s 0.577s p=0.344 n=20
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • class-transformer - native
  • effect - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • tanstack-router - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 20
Baseline baseline 20

Developer Information:

Download Benchmarks

Comment thread tsc/cmd/tsc/default.pgo

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Feels funny to commit in the pgo artifact but it makes sense.

@github-project-automation github-project-automation Bot moved this from Not started to Needs merge in PR Backlog Oct 28, 2026
@jakebailey
Jake Bailey (jakebailey) added this pull request to the merge queue Oct 28, 2026
Merged via the queue into microsoft:main with commit 25f823d Oct 28, 2026
29 checks passed
@github-project-automation github-project-automation Bot moved this from Needs merge to Done in PR Backlog Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Author: Team Domain: Performance Reports of unusually slow behavior For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants