Skip to content

Move indirect call substitution to printer #43555

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

Closed
wants to merge 1 commit into from

Conversation

rbuckton
Copy link
Contributor

@rbuckton rbuckton commented Apr 6, 2021

An alternative to #43543 to estimate the performance implications of performing the substitution in the printer.

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Apr 6, 2021
@rbuckton
Copy link
Contributor Author

rbuckton commented Apr 6, 2021

@typescript-bot perf test

@typescript-bot
Copy link
Collaborator

typescript-bot commented Apr 6, 2021

Heya @rbuckton, I've started to run the perf test suite on this PR at 13eff9c. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..43555

Metric master 43555 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 344,904k (± 0.02%) 344,958k (± 0.03%) +55k (+ 0.02%) 344,788k 345,106k
Parse Time 1.93s (± 0.41%) 1.95s (± 0.49%) +0.03s (+ 1.35%) 1.93s 1.97s
Bind Time 0.83s (± 0.87%) 0.84s (± 0.66%) +0.01s (+ 0.72%) 0.83s 0.85s
Check Time 5.09s (± 0.26%) 5.13s (± 0.49%) +0.04s (+ 0.86%) 5.08s 5.17s
Emit Time 5.91s (± 0.60%) 5.77s (± 0.55%) -0.14s (- 2.45%) 5.70s 5.85s
Total Time 13.76s (± 0.31%) 13.70s (± 0.40%) -0.07s (- 0.49%) 13.58s 13.82s
Compiler-Unions - node (v10.16.3, x64)
Memory used 203,345k (± 0.03%) 203,287k (± 0.11%) -58k (- 0.03%) 202,396k 203,491k
Parse Time 0.78s (± 0.43%) 0.79s (± 0.78%) +0.01s (+ 1.02%) 0.78s 0.81s
Bind Time 0.52s (± 1.13%) 0.52s (± 1.70%) -0.00s (- 0.00%) 0.51s 0.54s
Check Time 7.46s (± 0.58%) 7.54s (± 0.60%) +0.07s (+ 0.96%) 7.45s 7.65s
Emit Time 2.60s (± 1.35%) 2.57s (± 0.83%) -0.03s (- 1.04%) 2.52s 2.61s
Total Time 11.37s (± 0.55%) 11.42s (± 0.51%) +0.05s (+ 0.45%) 11.34s 11.56s
Monaco - node (v10.16.3, x64)
Memory used 342,642k (± 0.02%) 342,707k (± 0.02%) +65k (+ 0.02%) 342,600k 342,897k
Parse Time 1.55s (± 0.52%) 1.56s (± 0.68%) +0.01s (+ 0.90%) 1.54s 1.59s
Bind Time 0.74s (± 0.92%) 0.74s (± 0.70%) +0.00s (+ 0.41%) 0.73s 0.75s
Check Time 5.26s (± 0.65%) 5.27s (± 0.58%) +0.01s (+ 0.27%) 5.22s 5.34s
Emit Time 3.12s (± 0.41%) 3.14s (± 0.86%) +0.01s (+ 0.35%) 3.10s 3.20s
Total Time 10.67s (± 0.37%) 10.71s (± 0.51%) +0.04s (+ 0.34%) 10.61s 10.85s
TFS - node (v10.16.3, x64)
Memory used 304,257k (± 0.02%) 304,317k (± 0.03%) +60k (+ 0.02%) 304,115k 304,515k
Parse Time 1.21s (± 0.48%) 1.21s (± 0.67%) +0.01s (+ 0.50%) 1.20s 1.23s
Bind Time 0.70s (± 0.93%) 0.70s (± 0.68%) +0.01s (+ 0.72%) 0.70s 0.72s
Check Time 4.72s (± 0.54%) 4.74s (± 0.61%) +0.03s (+ 0.59%) 4.69s 4.80s
Emit Time 3.25s (± 1.05%) 3.27s (± 1.10%) +0.01s (+ 0.37%) 3.17s 3.34s
Total Time 9.87s (± 0.38%) 9.93s (± 0.44%) +0.05s (+ 0.54%) 9.86s 10.05s
material-ui - node (v10.16.3, x64)
Memory used 465,406k (± 0.02%) 465,966k (± 0.01%) +559k (+ 0.12%) 465,906k 466,045k
Parse Time 2.00s (± 0.70%) 2.01s (± 0.53%) +0.01s (+ 0.70%) 1.99s 2.04s
Bind Time 0.66s (± 0.98%) 0.66s (± 1.02%) -0.00s (- 0.15%) 0.64s 0.67s
Check Time 14.22s (± 0.36%) 14.40s (± 0.86%) +0.18s (+ 1.28%) 14.13s 14.70s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.88s (± 0.29%) 17.07s (± 0.74%) +0.19s (+ 1.13%) 16.78s 17.35s
Angular - node (v12.1.0, x64)
Memory used 322,629k (± 0.03%) 322,672k (± 0.03%) +44k (+ 0.01%) 322,441k 322,821k
Parse Time 1.92s (± 0.52%) 1.92s (± 0.72%) +0.00s (+ 0.21%) 1.90s 1.95s
Bind Time 0.81s (± 0.55%) 0.81s (± 0.73%) +0.01s (+ 0.74%) 0.80s 0.83s
Check Time 5.00s (± 0.45%) 5.01s (± 0.50%) +0.02s (+ 0.32%) 4.97s 5.08s
Emit Time 5.97s (± 0.41%) 5.80s (± 0.49%) -0.17s (- 2.83%) 5.75s 5.87s
Total Time 13.69s (± 0.31%) 13.55s (± 0.24%) -0.14s (- 1.04%) 13.48s 13.62s
Compiler-Unions - node (v12.1.0, x64)
Memory used 190,339k (± 0.16%) 190,226k (± 0.23%) -112k (- 0.06%) 189,131k 190,946k
Parse Time 0.77s (± 0.89%) 0.78s (± 0.94%) +0.01s (+ 1.57%) 0.77s 0.80s
Bind Time 0.53s (± 0.95%) 0.53s (± 0.42%) +0.00s (+ 0.76%) 0.52s 0.53s
Check Time 6.95s (± 0.38%) 7.04s (± 0.67%) +0.10s (+ 1.38%) 6.95s 7.15s
Emit Time 2.53s (± 0.89%) 2.56s (± 1.05%) +0.03s (+ 1.07%) 2.50s 2.62s
Total Time 10.76s (± 0.38%) 10.91s (± 0.39%) +0.14s (+ 1.32%) 10.81s 11.00s
Monaco - node (v12.1.0, x64)
Memory used 325,088k (± 0.02%) 324,983k (± 0.02%) -105k (- 0.03%) 324,816k 325,131k
Parse Time 1.53s (± 0.71%) 1.54s (± 0.81%) +0.01s (+ 0.52%) 1.51s 1.56s
Bind Time 0.72s (± 0.56%) 0.72s (± 0.92%) +0.00s (+ 0.56%) 0.71s 0.74s
Check Time 5.07s (± 0.50%) 5.11s (± 0.51%) +0.03s (+ 0.65%) 5.05s 5.16s
Emit Time 3.08s (± 0.47%) 3.11s (± 0.64%) +0.03s (+ 0.81%) 3.06s 3.15s
Total Time 10.40s (± 0.25%) 10.47s (± 0.42%) +0.07s (+ 0.66%) 10.37s 10.58s
TFS - node (v12.1.0, x64)
Memory used 288,785k (± 0.02%) 288,773k (± 0.02%) -13k (- 0.00%) 288,605k 288,872k
Parse Time 1.21s (± 0.58%) 1.21s (± 0.81%) +0.00s (+ 0.08%) 1.19s 1.23s
Bind Time 0.69s (± 0.68%) 0.69s (± 0.84%) +0.00s (+ 0.43%) 0.68s 0.70s
Check Time 4.64s (± 0.57%) 4.66s (± 0.54%) +0.02s (+ 0.43%) 4.62s 4.72s
Emit Time 3.16s (± 0.63%) 3.16s (± 1.11%) -0.00s (- 0.06%) 3.08s 3.24s
Total Time 9.71s (± 0.44%) 9.72s (± 0.57%) +0.02s (+ 0.19%) 9.61s 9.85s
material-ui - node (v12.1.0, x64)
Memory used 443,470k (± 0.06%) 444,002k (± 0.01%) +532k (+ 0.12%) 443,831k 444,155k
Parse Time 2.03s (± 0.55%) 2.04s (± 0.65%) +0.02s (+ 0.79%) 2.01s 2.06s
Bind Time 0.64s (± 0.53%) 0.64s (± 0.63%) +0.00s (+ 0.31%) 0.63s 0.65s
Check Time 12.84s (± 0.49%) 12.91s (± 0.86%) +0.07s (+ 0.58%) 12.70s 13.24s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.51s (± 0.38%) 15.59s (± 0.71%) +0.09s (+ 0.58%) 15.41s 15.93s
Angular - node (v14.15.1, x64)
Memory used 321,325k (± 0.01%) 321,227k (± 0.08%) -99k (- 0.03%) 320,233k 321,418k
Parse Time 1.93s (± 0.42%) 1.94s (± 0.40%) +0.01s (+ 0.57%) 1.92s 1.95s
Bind Time 0.86s (± 0.47%) 0.87s (± 0.81%) +0.01s (+ 1.16%) 0.86s 0.89s
Check Time 4.99s (± 0.55%) 5.05s (± 0.82%) +0.06s (+ 1.10%) 4.98s 5.18s
Emit Time 6.29s (± 0.55%) 6.13s (± 1.05%) -0.16s (- 2.50%) 6.03s 6.31s
Total Time 14.08s (± 0.29%) 13.99s (± 0.69%) -0.09s (- 0.60%) 13.83s 14.29s
Compiler-Unions - node (v14.15.1, x64)
Memory used 189,403k (± 0.02%) 189,460k (± 0.01%) +57k (+ 0.03%) 189,398k 189,507k
Parse Time 0.80s (± 0.72%) 0.81s (± 0.59%) +0.01s (+ 0.88%) 0.80s 0.82s
Bind Time 0.55s (± 0.40%) 0.56s (± 0.84%) +0.01s (+ 1.63%) 0.55s 0.57s
Check Time 7.05s (± 0.47%) 7.11s (± 0.70%) +0.06s (+ 0.85%) 6.99s 7.20s
Emit Time 2.55s (± 0.54%) 2.56s (± 0.73%) +0.00s (+ 0.12%) 2.53s 2.60s
Total Time 10.96s (± 0.37%) 11.03s (± 0.54%) +0.07s (+ 0.66%) 10.89s 11.15s
Monaco - node (v14.15.1, x64)
Memory used 324,044k (± 0.01%) 324,044k (± 0.01%) +0k (+ 0.00%) 323,987k 324,096k
Parse Time 1.56s (± 0.37%) 1.58s (± 0.76%) +0.02s (+ 1.28%) 1.56s 1.62s
Bind Time 0.74s (± 0.49%) 0.75s (± 0.74%) +0.00s (+ 0.54%) 0.74s 0.76s
Check Time 5.03s (± 0.44%) 5.07s (± 0.52%) +0.05s (+ 0.92%) 5.01s 5.12s
Emit Time 3.17s (± 0.53%) 3.19s (± 0.91%) +0.02s (+ 0.69%) 3.13s 3.25s
Total Time 10.50s (± 0.29%) 10.59s (± 0.45%) +0.09s (+ 0.86%) 10.50s 10.67s
TFS - node (v14.15.1, x64)
Memory used 287,658k (± 0.01%) 287,667k (± 0.01%) +9k (+ 0.00%) 287,633k 287,712k
Parse Time 1.26s (± 0.67%) 1.27s (± 0.91%) +0.01s (+ 1.03%) 1.25s 1.30s
Bind Time 0.71s (± 0.63%) 0.72s (± 0.62%) +0.01s (+ 1.40%) 0.71s 0.73s
Check Time 4.65s (± 0.40%) 4.67s (± 0.26%) +0.02s (+ 0.34%) 4.64s 4.69s
Emit Time 3.24s (± 0.45%) 3.27s (± 0.66%) +0.04s (+ 1.14%) 3.23s 3.31s
Total Time 9.86s (± 0.22%) 9.94s (± 0.34%) +0.08s (+ 0.78%) 9.85s 10.01s
material-ui - node (v14.15.1, x64)
Memory used 441,589k (± 0.08%) 442,326k (± 0.00%) +738k (+ 0.17%) 442,305k 442,361k
Parse Time 2.09s (± 0.75%) 2.10s (± 0.72%) +0.01s (+ 0.67%) 2.08s 2.15s
Bind Time 0.69s (± 0.80%) 0.70s (± 1.04%) +0.01s (+ 0.87%) 0.69s 0.72s
Check Time 13.04s (± 0.82%) 13.06s (± 0.79%) +0.02s (+ 0.18%) 12.86s 13.30s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.82s (± 0.72%) 15.86s (± 0.71%) +0.04s (+ 0.27%) 15.65s 16.15s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-generic
Architecturex64
Available Memory16 GB
Available Memory10 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
Benchmark Name Iterations
Current 43555 10
Baseline master 10

Developer Information:

Download Benchmark

@rbuckton rbuckton closed this Apr 7, 2021
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.

2 participants