Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[experiment] make tsc use the public API #57703

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

Conversation

jakebailey
Copy link
Member

@jakebailey jakebailey commented Mar 8, 2024

Wacky test built on #55326 which makes tsc use the public API. Curious how bad the perf of this is.

The below represents effectively the smallest our package is going to get without splitting it into multiple packages.

Overall package size

Before After Diff Diff (percent)
Packed 3.78 MiB 2.81 MiB -990.82 KiB -25.62%
Unpacked 20.43 MiB 14.85 MiB -5.58 MiB -27.31%

Files

Before After Diff Diff (percent)
lib/tsc.js 5.58 MiB 2.31 KiB -5.58 MiB -99.96%

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Mar 8, 2024
@jakebailey jakebailey changed the title Make tsserver a thin wrapper around tsserverlibrary [experiment] make tsc use the public API Mar 8, 2024
@jakebailey

This comment was marked as outdated.

@typescript-bot

This comment was marked as outdated.

@jakebailey
Copy link
Member Author

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 8, 2024

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

Command Status Results
perf test this ✅ Started 👀 Results

@typescript-bot
Copy link
Collaborator

@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
Angular - node (v18.15.0, x64)
Memory used 295,539k (± 0.00%) 288,678k (± 0.02%) -6,861k (- 2.32%) 288,618k 288,761k p=0.005 n=6
Parse Time 2.66s (± 0.00%) 2.71s (± 1.01%) +0.05s (+ 2.01%) 2.68s 2.74s p=0.003 n=6
Bind Time 0.83s (± 0.49%) 0.84s (± 0.49%) +0.01s (+ 1.21%) 0.83s 0.84s p=0.008 n=6
Check Time 8.22s (± 0.31%) 9.09s (± 0.33%) 🔻+0.86s (+10.48%) 9.05s 9.12s p=0.005 n=6
Emit Time 7.16s (± 0.41%) 7.94s (± 0.35%) 🔻+0.78s (+10.84%) 7.89s 7.97s p=0.005 n=6
Total Time 18.88s (± 0.16%) 20.57s (± 0.16%) 🔻+1.70s (+ 9.00%) 20.53s 20.62s p=0.005 n=6
Compiler-Unions - node (v18.15.0, x64)
Memory used 192,704k (± 0.94%) 195,225k (± 0.93%) ~ 193,466k 197,005k p=0.066 n=6
Parse Time 1.35s (± 1.01%) 1.39s (± 0.84%) +0.04s (+ 2.83%) 1.37s 1.40s p=0.006 n=6
Bind Time 0.72s (± 0.00%) 0.74s (± 0.00%) +0.02s (+ 2.78%) 0.74s 0.74s p=0.001 n=6
Check Time 9.38s (± 0.48%) 10.26s (± 0.39%) 🔻+0.88s (+ 9.36%) 10.20s 10.31s p=0.005 n=6
Emit Time 2.59s (± 0.20%) 2.96s (± 0.51%) 🔻+0.36s (+14.01%) 2.93s 2.97s p=0.004 n=6
Total Time 14.05s (± 0.40%) 15.35s (± 0.36%) 🔻+1.30s (+ 9.28%) 15.27s 15.41s p=0.005 n=6
Monaco - node (v18.15.0, x64)
Memory used 347,306k (± 0.00%) 332,609k (± 0.01%) 🟩-14,697k (- 4.23%) 332,578k 332,642k p=0.005 n=6
Parse Time 2.48s (± 0.47%) 2.38s (± 0.43%) 🟩-0.10s (- 3.96%) 2.37s 2.40s p=0.004 n=6
Bind Time 0.93s (± 0.44%) 1.14s (± 1.43%) 🔻+0.21s (+23.16%) 1.12s 1.17s p=0.003 n=6
Check Time 6.97s (± 0.38%) 7.77s (± 0.30%) 🔻+0.80s (+11.53%) 7.74s 7.81s p=0.005 n=6
Emit Time 4.06s (± 0.45%) 4.55s (± 0.11%) 🔻+0.49s (+12.11%) 4.55s 4.56s p=0.004 n=6
Total Time 14.44s (± 0.29%) 15.85s (± 0.16%) 🔻+1.41s (+ 9.79%) 15.82s 15.88s p=0.005 n=6
TFS - node (v18.15.0, x64)
Memory used 302,751k (± 0.01%) 295,160k (± 0.12%) -7,591k (- 2.51%) 294,702k 295,476k p=0.005 n=6
Parse Time 2.02s (± 1.03%) 2.01s (± 0.60%) ~ 1.99s 2.02s p=0.667 n=6
Bind Time 1.00s (± 1.22%) 1.06s (± 1.10%) 🔻+0.06s (+ 5.64%) 1.04s 1.07s p=0.004 n=6
Check Time 6.36s (± 0.22%) 7.15s (± 0.67%) 🔻+0.79s (+12.48%) 7.09s 7.20s p=0.005 n=6
Emit Time 3.61s (± 0.44%) 4.10s (± 0.22%) 🔻+0.49s (+13.52%) 4.09s 4.11s p=0.005 n=6
Total Time 12.99s (± 0.20%) 14.32s (± 0.45%) 🔻+1.33s (+10.26%) 14.24s 14.39s p=0.005 n=6
material-ui - node (v18.15.0, x64)
Memory used 511,226k (± 0.00%) 489,715k (± 0.02%) 🟩-21,512k (- 4.21%) 489,675k 489,876k p=0.005 n=6
Parse Time 2.64s (± 0.66%) 2.68s (± 1.32%) +0.04s (+ 1.45%) 2.65s 2.75s p=0.029 n=6
Bind Time 0.99s (± 0.83%) 1.08s (± 0.00%) 🔻+0.09s (+ 9.46%) 1.08s 1.08s p=0.003 n=6
Check Time 17.24s (± 0.35%) 18.55s (± 0.29%) 🔻+1.31s (+ 7.61%) 18.49s 18.62s 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 20.87s (± 0.27%) 22.31s (± 0.26%) 🔻+1.44s (+ 6.91%) 22.22s 22.37s p=0.005 n=6
mui-docs - node (v18.15.0, x64)
Memory used 1,789,578k (± 0.00%) 1,696,348k (± 0.00%) 🟩-93,230k (- 5.21%) 1,696,297k 1,696,419k p=0.005 n=6
Parse Time 6.64s (± 0.38%) 6.68s (± 0.58%) ~ 6.62s 6.73s p=0.091 n=6
Bind Time 2.39s (± 0.74%) 2.02s (± 0.60%) 🟩-0.37s (-15.44%) 2.00s 2.03s p=0.004 n=6
Check Time 59.01s (± 0.50%) 65.26s (± 0.31%) 🔻+6.24s (+10.58%) 64.89s 65.43s p=0.005 n=6
Emit Time 0.16s (± 3.16%) 0.17s (± 3.32%) ~ 0.16s 0.17s p=0.640 n=6
Total Time 68.19s (± 0.41%) 74.12s (± 0.32%) 🔻+5.92s (+ 8.69%) 73.68s 74.28s p=0.005 n=6
self-build-src - node (v18.15.0, x64)
Memory used 2,394,316k (± 0.03%) 2,359,404k (± 0.03%) -34,912k (- 1.46%) 2,358,598k 2,360,433k p=0.005 n=6
Parse Time 5.06s (± 0.53%) 5.22s (± 1.59%) +0.17s (+ 3.33%) 5.08s 5.32s p=0.008 n=6
Bind Time 1.90s (± 0.72%) 1.79s (± 1.06%) 🟩-0.11s (- 5.62%) 1.77s 1.82s p=0.005 n=6
Check Time 33.75s (± 0.20%) 36.58s (± 0.76%) 🔻+2.83s (+ 8.38%) 36.17s 36.94s p=0.005 n=6
Emit Time 2.65s (± 2.01%) 2.81s (± 2.75%) 🔻+0.16s (+ 5.97%) 2.69s 2.92s p=0.012 n=6
Total Time 43.36s (± 0.22%) 46.42s (± 0.58%) 🔻+3.06s (+ 7.05%) 46.02s 46.79s p=0.005 n=6
self-compiler - node (v18.15.0, x64)
Memory used 414,484k (± 0.01%) 405,142k (± 0.01%) -9,342k (- 2.25%) 405,098k 405,172k p=0.005 n=6
Parse Time 2.81s (± 0.95%) 2.72s (± 0.73%) 🟩-0.10s (- 3.55%) 2.69s 2.75s p=0.005 n=6
Bind Time 1.06s (± 0.77%) 1.29s (± 0.63%) 🔻+0.23s (+21.63%) 1.28s 1.30s p=0.004 n=6
Check Time 15.15s (± 0.34%) 16.39s (± 0.41%) 🔻+1.24s (+ 8.20%) 16.30s 16.47s p=0.005 n=6
Emit Time 1.09s (± 1.26%) 1.13s (± 1.80%) +0.04s (+ 3.35%) 1.11s 1.17s p=0.006 n=6
Total Time 20.13s (± 0.35%) 21.53s (± 0.32%) 🔻+1.41s (+ 6.98%) 21.43s 21.60s p=0.005 n=6
vscode - node (v18.15.0, x64)
Memory used 2,865,824k (± 0.00%) 2,726,798k (± 0.00%) 🟩-139,026k (- 4.85%) 2,726,680k 2,726,919k p=0.005 n=6
Parse Time 10.75s (± 0.33%) 10.90s (± 0.45%) +0.15s (+ 1.41%) 10.81s 10.95s p=0.005 n=6
Bind Time 3.45s (± 0.35%) 3.58s (± 0.27%) +0.13s (+ 3.72%) 3.57s 3.59s p=0.005 n=6
Check Time 61.20s (± 0.26%) 67.31s (± 0.68%) 🔻+6.11s (+ 9.98%) 66.79s 68.06s p=0.005 n=6
Emit Time 16.23s (± 0.86%) 17.99s (± 0.53%) 🔻+1.77s (+10.89%) 17.91s 18.16s p=0.005 n=6
Total Time 91.63s (± 0.30%) 99.79s (± 0.37%) 🔻+8.15s (+ 8.90%) 99.41s 100.39s p=0.005 n=6
webpack - node (v18.15.0, x64)
Memory used 397,064k (± 0.03%) 385,978k (± 0.03%) -11,086k (- 2.79%) 385,841k 386,115k p=0.005 n=6
Parse Time 3.13s (± 0.66%) 3.09s (± 0.99%) ~ 3.06s 3.14s p=0.086 n=6
Bind Time 1.39s (± 0.88%) 1.48s (± 1.16%) 🔻+0.10s (+ 6.98%) 1.46s 1.51s p=0.005 n=6
Check Time 13.96s (± 0.53%) 14.88s (± 0.33%) 🔻+0.92s (+ 6.61%) 14.83s 14.97s 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 18.47s (± 0.35%) 19.46s (± 0.28%) 🔻+0.99s (+ 5.33%) 19.38s 19.52s p=0.005 n=6
xstate - node (v18.15.0, x64)
Memory used 513,146k (± 0.01%) 506,008k (± 3.61%) ~ 494,121k 529,599k p=0.378 n=6
Parse Time 3.27s (± 0.27%) 3.31s (± 0.41%) +0.04s (+ 1.12%) 3.29s 3.32s p=0.005 n=6
Bind Time 1.54s (± 0.41%) 1.49s (± 0.37%) 🟩-0.05s (- 3.57%) 1.48s 1.49s p=0.004 n=6
Check Time 2.86s (± 0.61%) 3.12s (± 0.48%) 🔻+0.27s (+ 9.33%) 3.11s 3.15s p=0.005 n=6
Emit Time 0.08s (± 4.99%) 0.11s (± 3.76%) 🔻+0.03s (+32.65%) 0.10s 0.11s p=0.003 n=6
Total Time 7.75s (± 0.21%) 8.03s (± 0.17%) +0.28s (+ 3.63%) 8.01s 8.05s p=0.005 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Angular - node (v18.15.0, x64)
  • Compiler-Unions - node (v18.15.0, x64)
  • Monaco - node (v18.15.0, x64)
  • TFS - node (v18.15.0, x64)
  • material-ui - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate - 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,359ms (± 0.84%) 2,345ms (± 0.67%) ~ 2,324ms 2,361ms p=0.378 n=6
Req 2 - geterr 5,574ms (± 1.63%) 5,654ms (± 0.25%) ~ 5,641ms 5,673ms p=0.230 n=6
Req 3 - references 328ms (± 1.22%) 324ms (± 1.09%) ~ 322ms 331ms p=0.098 n=6
Req 4 - navto 274ms (± 0.90%) 271ms (± 0.19%) -3ms (- 1.03%) 271ms 272ms p=0.036 n=6
Req 5 - completionInfo count 1,357 (± 0.00%) 1,357 (± 0.00%) ~ 1,357 1,357 p=1.000 n=6
Req 5 - completionInfo 85ms (± 8.46%) 93ms (± 0.55%) ~ 93ms 94ms p=0.077 n=6
CompilerTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,498ms (± 0.87%) 2,507ms (± 0.61%) ~ 2,484ms 2,522ms p=0.471 n=6
Req 2 - geterr 4,185ms (± 1.55%) 4,276ms (± 0.27%) +91ms (+ 2.17%) 4,262ms 4,294ms p=0.031 n=6
Req 3 - references 337ms (± 1.54%) 336ms (± 1.26%) ~ 331ms 340ms p=0.331 n=6
Req 4 - navto 285ms (± 0.56%) 284ms (± 0.14%) ~ 283ms 284ms p=0.121 n=6
Req 5 - completionInfo count 1,519 (± 0.00%) 1,519 (± 0.00%) ~ 1,519 1,519 p=1.000 n=6
Req 5 - completionInfo 85ms (± 7.83%) 83ms (± 6.92%) ~ 76ms 88ms p=0.368 n=6
xstateTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,600ms (± 0.45%) 2,617ms (± 0.32%) +17ms (+ 0.67%) 2,606ms 2,626ms p=0.037 n=6
Req 2 - geterr 1,732ms (± 2.65%) 1,706ms (± 2.38%) ~ 1,674ms 1,783ms p=0.575 n=6
Req 3 - references 117ms (± 8.72%) 116ms (± 8.96%) ~ 106ms 126ms p=0.681 n=6
Req 4 - navto 371ms (± 0.22%) 371ms (± 0.72%) ~ 369ms 376ms p=0.230 n=6
Req 5 - completionInfo count 2,079 (± 0.00%) 2,079 (± 0.00%) ~ 2,079 2,079 p=1.000 n=6
Req 5 - completionInfo 309ms (± 1.13%) 305ms (± 1.11%) -5ms (- 1.51%) 301ms 311ms p=0.029 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)
  • xstateTSServer - 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 152.95ms (± 0.18%) 227.82ms (± 0.19%) 🔻+74.87ms (+48.95%) 226.46ms 235.61ms p=0.000 n=600
tsserver-startup - node (v18.15.0, x64)
Execution time 229.09ms (± 0.14%) 228.61ms (± 0.22%) -0.48ms (- 0.21%) 226.94ms 245.55ms p=0.000 n=600
tsserverlibrary-startup - node (v18.15.0, x64)
Execution time 221.77ms (± 0.15%) 222.60ms (± 0.16%) +0.83ms (+ 0.37%) 220.99ms 229.38ms p=0.000 n=600
typescript-startup - node (v18.15.0, x64)
Execution time 221.74ms (± 0.17%) 222.49ms (± 0.19%) +0.74ms (+ 0.34%) 221.01ms 234.82ms p=0.000 n=600
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • tsc-startup - node (v18.15.0, x64)
  • tsserver-startup - node (v18.15.0, x64)
  • tsserverlibrary-startup - node (v18.15.0, x64)
  • typescript-startup - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

@jakebailey
Copy link
Member Author

Wow, that's like 3-10% slower.

@fatcerberus
Copy link

fatcerberus commented Mar 9, 2024

👀
As someone who tried very hard to replicate tsc behavior using the compiler API, I don’t envy anyone else who has to do it. readDirectory was particularly fun to try to get right.

@jakebailey
Copy link
Member Author

Are you talking about not having the executeCommandLine function, or that you wanted tsc's perf characteristics?

@fatcerberus
Copy link

In my case I didn’t care about perf - just that the same tsconfig produces exactly the same behavior and compiled output as the same tsconfig provided to tsc. For any arbitrary config. I feel like I got close, but I’m sure there are a lot of edge cases I missed.

@jakebailey
Copy link
Member Author

Rebased this PR now that #55326 is in; to test out the services perf, this PR can be cherry-picked in elsewhere to run perf tests.

@jakebailey
Copy link
Member Author

#58045 is in, so retesting to gauge how much is left:

@typescript-bot perf test this faster

@typescript-bot
Copy link
Collaborator

typescript-bot commented Apr 5, 2024

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

Command Status Results
perf test this faster ✅ Started 👀 Results

@typescript-bot
Copy link
Collaborator

@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
Angular - node (v18.15.0, x64)
Memory used 295,774k (± 0.01%) 301,973k (± 0.01%) +6,200k (+ 2.10%) 301,910k 302,028k p=0.005 n=6
Parse Time 2.65s (± 0.82%) 2.72s (± 0.89%) +0.07s (+ 2.58%) 2.67s 2.74s p=0.006 n=6
Bind Time 0.82s (± 1.26%) 0.82s (± 0.92%) ~ 0.81s 0.83s p=0.664 n=6
Check Time 8.19s (± 0.30%) 8.29s (± 0.28%) +0.10s (+ 1.24%) 8.25s 8.31s p=0.004 n=6
Emit Time 7.04s (± 0.29%) 7.08s (± 0.42%) ~ 7.03s 7.11s p=0.076 n=6
Total Time 18.70s (± 0.24%) 18.90s (± 0.34%) +0.21s (+ 1.11%) 18.82s 18.98s p=0.005 n=6
Compiler-Unions - node (v18.15.0, x64)
Memory used 192,839k (± 0.95%) 198,438k (± 0.81%) +5,600k (+ 2.90%) 196,881k 201,601k p=0.005 n=6
Parse Time 2.03s (± 0.92%) 2.07s (± 1.57%) ~ 2.03s 2.11s p=0.061 n=6
Bind Time 1.07s (± 0.97%) 1.07s (± 0.70%) ~ 1.06s 1.08s p=0.437 n=6
Check Time 13.82s (± 0.28%) 13.87s (± 0.82%) ~ 13.68s 13.99s p=0.297 n=6
Emit Time 3.85s (± 0.62%) 3.81s (± 3.39%) ~ 3.73s 4.07s p=0.064 n=6
Total Time 20.76s (± 0.24%) 20.81s (± 0.45%) ~ 20.65s 20.92s p=0.227 n=6
Monaco - node (v18.15.0, x64)
Memory used 347,719k (± 0.01%) 353,644k (± 0.00%) +5,925k (+ 1.70%) 353,626k 353,663k p=0.005 n=6
Parse Time 3.68s (± 1.10%) 3.56s (± 0.84%) 🟩-0.12s (- 3.17%) 3.52s 3.60s p=0.005 n=6
Bind Time 1.32s (± 1.50%) 1.53s (± 0.58%) 🔻+0.21s (+16.35%) 1.52s 1.54s p=0.005 n=6
Check Time 10.09s (± 0.47%) 10.10s (± 0.34%) ~ 10.05s 10.15s p=0.687 n=6
Emit Time 6.01s (± 0.33%) 6.05s (± 0.21%) +0.04s (+ 0.61%) 6.04s 6.07s p=0.021 n=6
Total Time 21.10s (± 0.32%) 21.25s (± 0.08%) +0.15s (+ 0.72%) 21.23s 21.28s p=0.005 n=6
TFS - node (v18.15.0, x64)
Memory used 302,551k (± 0.00%) 308,234k (± 0.00%) +5,683k (+ 1.88%) 308,217k 308,244k p=0.005 n=6
Parse Time 2.96s (± 0.93%) 3.00s (± 0.71%) +0.05s (+ 1.58%) 2.96s 3.02s p=0.019 n=6
Bind Time 1.43s (± 0.53%) 1.46s (± 0.37%) +0.03s (+ 2.33%) 1.46s 1.47s p=0.004 n=6
Check Time 9.17s (± 0.36%) 9.18s (± 0.26%) ~ 9.15s 9.21s p=0.747 n=6
Emit Time 5.30s (± 0.56%) 5.34s (± 0.40%) +0.04s (+ 0.75%) 5.30s 5.36s p=0.036 n=6
Total Time 18.86s (± 0.31%) 18.99s (± 0.11%) +0.13s (+ 0.69%) 18.97s 19.02s p=0.005 n=6
material-ui - node (v18.15.0, x64)
Memory used 510,560k (± 0.00%) 517,595k (± 0.00%) +7,035k (+ 1.38%) 517,562k 517,622k p=0.005 n=6
Parse Time 3.95s (± 0.47%) 3.99s (± 0.43%) +0.05s (+ 1.18%) 3.97s 4.02s p=0.005 n=6
Bind Time 1.46s (± 0.94%) 1.50s (± 1.19%) +0.04s (+ 2.97%) 1.48s 1.53s p=0.006 n=6
Check Time 25.27s (± 0.59%) 25.31s (± 0.37%) ~ 25.21s 25.48s p=0.575 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 30.68s (± 0.51%) 30.80s (± 0.30%) ~ 30.68s 30.96s p=0.261 n=6
mui-docs - node (v18.15.0, x64)
Memory used 1,743,936k (± 0.00%) 1,749,619k (± 0.00%) +5,683k (+ 0.33%) 1,749,568k 1,749,684k p=0.005 n=6
Parse Time 7.78s (± 0.48%) 7.96s (± 0.29%) +0.18s (+ 2.31%) 7.93s 8.00s p=0.005 n=6
Bind Time 2.75s (± 0.58%) 2.21s (± 0.88%) 🟩-0.54s (-19.53%) 2.20s 2.25s p=0.005 n=6
Check Time 66.51s (± 0.29%) 68.74s (± 1.51%) +2.23s (+ 3.35%) 67.32s 70.48s p=0.005 n=6
Emit Time 0.15s (± 3.36%) 0.16s (± 2.58%) ~ 0.15s 0.16s p=0.112 n=6
Total Time 77.20s (± 0.27%) 79.07s (± 1.31%) +1.88s (+ 2.43%) 77.65s 80.80s p=0.005 n=6
self-build-src - node (v18.15.0, x64)
Memory used 2,299,624k (± 0.02%) 2,383,798k (± 0.05%) +84,174k (+ 3.66%) 2,382,033k 2,384,813k p=0.005 n=6
Parse Time 7.45s (± 0.81%) 7.74s (± 1.49%) +0.29s (+ 3.85%) 7.58s 7.90s p=0.005 n=6
Bind Time 2.71s (± 0.59%) 2.49s (± 1.09%) 🟩-0.22s (- 8.12%) 2.46s 2.53s p=0.005 n=6
Check Time 48.73s (± 0.52%) 49.32s (± 0.41%) +0.59s (+ 1.21%) 49.10s 49.70s p=0.008 n=6
Emit Time 3.81s (± 2.41%) 3.84s (± 1.99%) ~ 3.74s 3.93s p=0.575 n=6
Total Time 62.71s (± 0.35%) 63.39s (± 0.34%) +0.68s (+ 1.08%) 63.14s 63.72s p=0.005 n=6
self-build-src-public-api - node (v18.15.0, x64)
Memory used 2,374,309k (± 0.04%) 2,374,207k (± 0.04%) ~ 2,373,022k 2,375,170k p=0.936 n=6
Parse Time 7.74s (± 1.32%) 7.74s (± 1.22%) ~ 7.61s 7.86s p=1.000 n=6
Bind Time 2.46s (± 0.72%) 2.45s (± 0.65%) ~ 2.43s 2.47s p=0.686 n=6
Check Time 49.11s (± 0.25%) 49.25s (± 0.28%) ~ 49.03s 49.45s p=0.093 n=6
Emit Time 3.89s (± 1.63%) 3.92s (± 3.53%) ~ 3.74s 4.09s p=0.575 n=6
Total Time 63.22s (± 0.27%) 63.38s (± 0.49%) ~ 62.85s 63.74s p=0.298 n=6
self-compiler - node (v18.15.0, x64)
Memory used 418,048k (± 0.01%) 423,703k (± 0.01%) +5,655k (+ 1.35%) 423,605k 423,783k p=0.005 n=6
Parse Time 4.16s (± 0.48%) 4.14s (± 1.76%) ~ 4.02s 4.25s p=0.285 n=6
Bind Time 1.62s (± 0.61%) 1.63s (± 1.91%) ~ 1.60s 1.68s p=0.864 n=6
Check Time 21.98s (± 0.49%) 22.05s (± 0.12%) ~ 22.00s 22.07s p=0.378 n=6
Emit Time 1.71s (± 1.47%) 1.71s (± 1.68%) ~ 1.69s 1.77s p=0.567 n=6
Total Time 29.46s (± 0.38%) 29.53s (± 0.29%) ~ 29.38s 29.63s p=0.376 n=6
vscode - node (v18.15.0, x64)
Memory used 2,904,155k (± 0.00%) 2,906,129k (± 0.00%) +1,974k (+ 0.07%) 2,906,088k 2,906,168k p=0.005 n=6
Parse Time 15.97s (± 0.55%) 16.45s (± 0.54%) +0.48s (+ 3.03%) 16.35s 16.57s p=0.005 n=6
Bind Time 4.94s (± 0.64%) 5.07s (± 2.62%) ~ 4.88s 5.18s p=0.226 n=6
Check Time 86.77s (± 0.53%) 86.83s (± 0.51%) ~ 86.20s 87.41s p=1.000 n=6
Emit Time 23.82s (± 0.32%) 24.66s (± 7.97%) ~ 23.76s 28.67s p=0.575 n=6
Total Time 131.51s (± 0.32%) 133.02s (± 1.54%) +1.51s (+ 1.15%) 131.77s 137.15s p=0.031 n=6
webpack - node (v18.15.0, x64)
Memory used 408,616k (± 0.01%) 415,309k (± 0.01%) +6,693k (+ 1.64%) 415,250k 415,340k p=0.005 n=6
Parse Time 3.24s (± 0.49%) 3.33s (± 1.16%) +0.09s (+ 2.83%) 3.29s 3.39s p=0.005 n=6
Bind Time 1.38s (± 0.87%) 1.38s (± 0.96%) ~ 1.36s 1.39s p=0.591 n=6
Check Time 14.16s (± 0.21%) 14.31s (± 0.22%) +0.15s (+ 1.06%) 14.28s 14.37s 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 18.79s (± 0.17%) 19.02s (± 0.27%) +0.24s (+ 1.25%) 18.96s 19.09s p=0.005 n=6
xstate - node (v18.15.0, x64)
Memory used 514,380k (± 0.02%) 532,654k (± 0.03%) +18,274k (+ 3.55%) 532,437k 532,770k p=0.005 n=6
Parse Time 4.87s (± 0.44%) 4.96s (± 0.48%) +0.09s (+ 1.81%) 4.94s 5.00s p=0.005 n=6
Bind Time 2.31s (± 1.33%) 2.05s (± 1.14%) 🟩-0.25s (-10.91%) 2.02s 2.08s p=0.005 n=6
Check Time 4.24s (± 0.66%) 4.41s (± 1.12%) 🔻+0.17s (+ 4.13%) 4.35s 4.50s p=0.005 n=6
Emit Time 0.11s (± 7.27%) 0.11s (± 7.27%) ~ 0.10s 0.12s p=0.796 n=6
Total Time 11.54s (± 0.34%) 11.54s (± 0.73%) ~ 11.44s 11.67s p=0.873 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Angular - node (v18.15.0, x64)
  • Compiler-Unions - node (v18.15.0, x64)
  • Monaco - node (v18.15.0, x64)
  • TFS - node (v18.15.0, x64)
  • material-ui - 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)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

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

Successfully merging this pull request may close these issues.

None yet

3 participants