Skip to content

Revert "Fix contextual discrimination for omitted members (#43937)" - #48426

Merged
Andrew Casey (amcasey) merged 1 commit into
microsoft:mainfrom
amcasey:RevertMuiRegression
Mar 25, 2022
Merged

Revert "Fix contextual discrimination for omitted members (#43937)"#48426
Andrew Casey (amcasey) merged 1 commit into
microsoft:mainfrom
amcasey:RevertMuiRegression

Conversation

@amcasey

@amcaseyAndrew Casey (amcasey) commented Mar 25, 2022

Copy link
Copy Markdown
Member

This reverts commit 751c114, which caused check time for our MUI benchmark to increase by ~25%.

See #48298

…43937)"
This reverts commit 751c114, which caused check time for our MUI benchmark to increase by ~25%.
@amcasey

Copy link
Copy Markdown
MemberAuthor

TypeScript Bot (@typescript-bot) perf test this

@typescript-bot

TypeScript Bot (typescript-bot) commented Mar 25, 2022

Copy link
Copy Markdown
Contributor

Heya Andrew Casey (@amcasey), I've started to run the perf test suite on this PR at 07a6845. You can monitor the build here.

Update: The results are in!

@typescript-bot

Copy link
Copy Markdown
Contributor

Andrew Casey (@amcasey)
The results of the perf run you requested are in!

Here they are:

Comparison Report - main..48426

Metricmain48426DeltaBestWorst
Angular - node (v10.16.3, x64)
Memory used356,438k (± 0.02%)356,677k (± 0.02%)+238k (+ 0.07%)356,533k356,817k
Parse Time2.05s (± 0.32%)2.07s (± 0.67%)+0.01s (+ 0.68%)2.03s2.10s
Bind Time0.86s (± 0.58%)0.87s (± 1.10%)+0.00s (+ 0.12%)0.85s0.90s
Check Time5.80s (± 0.43%)5.78s (± 0.61%)-0.02s (- 0.38%)5.73s5.85s
Emit Time5.99s (± 0.79%)5.99s (± 0.70%)+0.00s (+ 0.05%)5.91s6.10s
Total Time14.71s (± 0.47%)14.71s (± 0.54%)-0.01s (- 0.03%)14.55s14.89s
Compiler-Unions - node (v10.16.3, x64)
Memory used205,759k (± 0.04%)205,744k (± 0.03%)-14k (- 0.01%)205,621k205,847k
Parse Time0.85s (± 0.90%)0.85s (± 0.66%)+0.00s (+ 0.24%)0.84s0.86s
Bind Time0.51s (± 0.71%)0.52s (± 1.00%)+0.00s (+ 0.97%)0.51s0.53s
Check Time7.94s (± 0.67%)7.96s (± 0.67%)+0.02s (+ 0.23%)7.86s8.11s
Emit Time2.48s (± 0.86%)2.53s (± 1.07%)+0.05s (+ 1.93%)2.50s2.63s
Total Time11.78s (± 0.58%)11.86s (± 0.63%)+0.07s (+ 0.60%)11.76s12.11s
Monaco - node (v10.16.3, x64)
Memory used343,622k (± 0.02%)343,663k (± 0.01%)+40k (+ 0.01%)343,515k343,755k
Parse Time1.57s (± 0.58%)1.57s (± 0.77%)+0.00s (+ 0.19%)1.55s1.60s
Bind Time0.75s (± 0.59%)0.75s (± 0.48%)+0.00s (+ 0.27%)0.75s0.76s
Check Time5.76s (± 0.44%)5.76s (± 0.61%)+0.00s (+ 0.07%)5.67s5.81s
Emit Time3.22s (± 0.48%)3.23s (± 0.23%)+0.02s (+ 0.50%)3.22s3.25s
Total Time11.30s (± 0.32%)11.32s (± 0.40%)+0.02s (+ 0.20%)11.21s11.38s
TFS - node (v10.16.3, x64)
Memory used305,355k (± 0.02%)305,302k (± 0.02%)-54k (- 0.02%)305,078k305,431k
Parse Time1.28s (± 0.51%)1.28s (± 0.27%)-0.01s (- 0.39%)1.27s1.28s
Bind Time0.71s (± 1.05%)0.71s (± 0.83%)+0.00s (+ 0.14%)0.70s0.73s
Check Time5.27s (± 0.53%)5.23s (± 0.42%)-0.03s (- 0.61%)5.18s5.28s
Emit Time3.45s (± 0.78%)3.43s (± 0.82%)-0.01s (- 0.41%)3.36s3.48s
Total Time10.71s (± 0.39%)10.66s (± 0.40%)-0.05s (- 0.45%)10.58s10.76s
material-ui - node (v10.16.3, x64)
Memory used476,213k (± 0.01%)469,709k (± 0.01%)-6,504k (- 1.37%)469,537k469,848k
Parse Time1.81s (± 0.48%)1.81s (± 0.50%)-0.00s (- 0.17%)1.79s1.83s
Bind Time0.68s (± 0.91%)0.68s (± 0.85%)+0.00s (+ 0.15%)0.67s0.69s
Check Time23.05s (± 1.16%)14.20s (± 0.41%)🟩-8.85s (-38.38%)14.06s14.38s
Emit Time0.00s (± 0.00%)0.00s (± 0.00%)0.00s ( NaN%)0.00s0.00s
Total Time25.54s (± 1.07%)16.69s (± 0.40%)🟩-8.85s (-34.64%)16.53s16.89s
xstate - node (v10.16.3, x64)
Memory used570,878k (± 0.02%)574,006k (± 1.24%)+3,129k (+ 0.55%)570,655k602,839k
Parse Time2.57s (± 0.32%)2.58s (± 0.34%)+0.00s (+ 0.16%)2.56s2.60s
Bind Time1.01s (± 0.49%)1.00s (± 0.68%)-0.00s (- 0.10%)0.99s1.02s
Check Time1.53s (± 0.53%)1.53s (± 0.50%)-0.00s (- 0.07%)1.51s1.54s
Emit Time0.07s (± 3.14%)0.07s (± 0.00%)-0.00s (- 1.41%)0.07s0.07s
Total Time5.18s (± 0.23%)5.18s (± 0.20%)+0.00s (+ 0.06%)5.16s5.20s
Angular - node (v12.1.0, x64)
Memory used334,173k (± 0.02%)334,488k (± 0.02%)+315k (+ 0.09%)334,386k334,597k
Parse Time2.04s (± 0.78%)2.04s (± 0.41%)+0.00s (+ 0.10%)2.02s2.06s
Bind Time0.83s (± 1.16%)0.83s (± 0.57%)-0.00s (- 0.12%)0.82s0.84s
Check Time5.63s (± 0.34%)5.62s (± 0.31%)-0.01s (- 0.18%)5.58s5.65s
Emit Time6.22s (± 0.73%)6.31s (± 1.03%)+0.09s (+ 1.49%)6.20s6.50s
Total Time14.73s (± 0.35%)14.81s (± 0.47%)+0.08s (+ 0.56%)14.65s14.99s
Compiler-Unions - node (v12.1.0, x64)
Memory used193,180k (± 0.13%)193,202k (± 0.13%)+22k (+ 0.01%)192,627k193,583k
Parse Time0.84s (± 0.53%)0.84s (± 1.10%)+0.00s (+ 0.00%)0.82s0.86s
Bind Time0.53s (± 1.09%)0.53s (± 0.98%)-0.00s (- 0.38%)0.52s0.54s
Check Time7.44s (± 0.47%)7.44s (± 0.65%)+0.00s (+ 0.04%)7.36s7.59s
Emit Time2.54s (± 0.93%)2.55s (± 1.16%)+0.01s (+ 0.43%)2.50s2.64s
Total Time11.36s (± 0.42%)11.37s (± 0.50%)+0.01s (+ 0.07%)11.26s11.53s
Monaco - node (v12.1.0, x64)
Memory used326,580k (± 0.06%)326,614k (± 0.02%)+34k (+ 0.01%)326,500k326,756k
Parse Time1.54s (± 0.69%)1.55s (± 0.45%)+0.01s (+ 0.78%)1.53s1.56s
Bind Time0.74s (± 0.83%)0.75s (± 0.80%)+0.00s (+ 0.54%)0.74s0.76s
Check Time5.60s (± 0.68%)5.60s (± 0.56%)-0.00s (- 0.07%)5.54s5.67s
Emit Time3.28s (± 1.18%)3.25s (± 0.64%)-0.03s (- 0.82%)3.21s3.31s
Total Time11.16s (± 0.57%)11.14s (± 0.49%)-0.02s (- 0.14%)11.05s11.28s
TFS - node (v12.1.0, x64)
Memory used289,930k (± 0.02%)289,922k (± 0.02%)-8k (- 0.00%)289,783k290,044k
Parse Time1.29s (± 0.86%)1.30s (± 0.89%)+0.01s (+ 0.78%)1.27s1.32s
Bind Time0.71s (± 0.71%)0.70s (± 0.74%)-0.01s (- 0.85%)0.69s0.71s
Check Time5.16s (± 0.41%)5.14s (± 0.47%)-0.02s (- 0.31%)5.08s5.20s
Emit Time3.47s (± 0.53%)3.49s (± 0.61%)+0.03s (+ 0.75%)3.44s3.53s
Total Time10.61s (± 0.37%)10.63s (± 0.41%)+0.01s (+ 0.14%)10.51s10.71s
material-ui - node (v12.1.0, x64)
Memory used454,872k (± 0.10%)448,640k (± 0.06%)-6,232k (- 1.37%)447,557k448,866k
Parse Time1.81s (± 0.71%)1.81s (± 0.50%)+0.00s (+ 0.06%)1.79s1.82s
Bind Time0.64s (± 0.53%)0.64s (± 0.77%)+0.00s (+ 0.31%)0.64s0.66s
Check Time20.37s (± 1.08%)12.89s (± 0.58%)🟩-7.48s (-36.73%)12.73s13.10s
Emit Time0.00s (± 0.00%)0.00s (± 0.00%)0.00s ( NaN%)0.00s0.00s
Total Time22.82s (± 0.93%)15.34s (± 0.48%)🟩-7.48s (-32.77%)15.17s15.55s
xstate - node (v12.1.0, x64)
Memory used536,408k (± 0.02%)536,355k (± 0.01%)-54k (- 0.01%)536,174k536,543k
Parse Time2.52s (± 0.36%)2.53s (± 0.44%)+0.01s (+ 0.28%)2.50s2.55s
Bind Time1.03s (± 0.56%)1.03s (± 0.88%)-0.00s (- 0.19%)1.01s1.05s
Check Time1.48s (± 0.75%)1.47s (± 0.64%)-0.01s (- 0.41%)1.45s1.49s
Emit Time0.07s (± 0.00%)0.07s (± 0.00%)0.00s ( 0.00%)0.07s0.07s
Total Time5.10s (± 0.29%)5.10s (± 0.33%)+0.00s (+ 0.02%)5.06s5.13s
Angular - node (v14.15.1, x64)
Memory used332,480k (± 0.01%)332,719k (± 0.00%)+238k (+ 0.07%)332,691k332,746k
Parse Time2.02s (± 0.62%)2.03s (± 0.57%)+0.01s (+ 0.35%)2.01s2.06s
Bind Time0.87s (± 0.75%)0.87s (± 0.46%)+0.00s (+ 0.12%)0.86s0.88s
Check Time5.63s (± 0.28%)5.63s (± 0.54%)-0.00s (- 0.09%)5.57s5.72s
Emit Time6.30s (± 0.66%)6.29s (± 0.77%)-0.01s (- 0.22%)6.21s6.42s
Total Time14.83s (± 0.36%)14.82s (± 0.45%)-0.01s (- 0.09%)14.69s14.96s
Compiler-Unions - node (v14.15.1, x64)
Memory used194,305k (± 0.56%)194,615k (± 0.48%)+310k (+ 0.16%)192,086k195,316k
Parse Time0.85s (± 0.58%)0.86s (± 0.61%)+0.01s (+ 0.59%)0.85s0.87s
Bind Time0.56s (± 0.40%)0.56s (± 0.71%)0.00s ( 0.00%)0.55s0.57s
Check Time7.54s (± 0.59%)7.53s (± 0.47%)-0.01s (- 0.15%)7.46s7.63s
Emit Time2.49s (± 0.75%)2.51s (± 0.69%)+0.02s (+ 0.96%)2.48s2.56s
Total Time11.45s (± 0.43%)11.46s (± 0.43%)+0.02s (+ 0.13%)11.38s11.63s
Monaco - node (v14.15.1, x64)
Memory used325,395k (± 0.01%)325,409k (± 0.01%)+13k (+ 0.00%)325,360k325,463k
Parse Time1.57s (± 0.71%)1.58s (± 0.84%)+0.00s (+ 0.25%)1.56s1.61s
Bind Time0.78s (± 0.64%)0.78s (± 0.48%)0.00s ( 0.00%)0.77s0.78s
Check Time5.51s (± 0.53%)5.50s (± 0.48%)-0.01s (- 0.18%)5.44s5.56s
Emit Time3.29s (± 0.60%)3.31s (± 0.80%)+0.02s (+ 0.58%)3.26s3.38s
Total Time11.16s (± 0.31%)11.17s (± 0.40%)+0.01s (+ 0.12%)11.09s11.24s
TFS - node (v14.15.1, x64)
Memory used288,907k (± 0.01%)288,896k (± 0.01%)-10k (- 0.00%)288,841k288,954k
Parse Time1.31s (± 1.14%)1.30s (± 0.88%)-0.00s (- 0.31%)1.29s1.34s
Bind Time0.74s (± 0.67%)0.76s (± 4.12%)+0.02s (+ 2.85%)0.73s0.84s
Check Time5.16s (± 0.67%)5.18s (± 0.50%)+0.02s (+ 0.41%)5.13s5.24s
Emit Time3.52s (± 1.43%)3.53s (± 1.96%)+0.01s (+ 0.17%)3.37s3.64s
Total Time10.73s (± 0.39%)10.77s (± 0.78%)+0.04s (+ 0.36%)10.51s10.94s
material-ui - node (v14.15.1, x64)
Memory used453,546k (± 0.05%)447,054k (± 0.01%)-6,492k (- 1.43%)447,004k447,119k
Parse Time1.86s (± 0.67%)1.85s (± 0.51%)-0.00s (- 0.11%)1.84s1.88s
Bind Time0.70s (± 1.04%)0.70s (± 1.08%)+0.00s (+ 0.28%)0.69s0.72s
Check Time20.41s (± 0.70%)13.03s (± 0.47%)🟩-7.38s (-36.16%)12.86s13.14s
Emit Time0.00s (± 0.00%)0.00s (± 0.00%)0.00s ( NaN%)0.00s0.00s
Total Time22.97s (± 0.59%)15.58s (± 0.41%)🟩-7.38s (-32.14%)15.40s15.69s
xstate - node (v14.15.1, x64)
Memory used534,094k (± 0.01%)534,101k (± 0.00%)+7k (+ 0.00%)534,069k534,133k
Parse Time2.56s (± 0.43%)2.58s (± 0.48%)+0.01s (+ 0.47%)2.55s2.60s
Bind Time1.14s (± 0.84%)1.14s (± 0.64%)+0.00s (+ 0.18%)1.12s1.15s
Check Time1.51s (± 0.70%)1.51s (± 0.41%)+0.00s (+ 0.07%)1.50s1.52s
Emit Time0.07s (± 0.00%)0.07s (± 0.00%)0.00s ( 0.00%)0.07s0.07s
Total Time5.29s (± 0.32%)5.30s (± 0.22%)+0.02s (+ 0.36%)5.29s5.34s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory4 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)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
BenchmarkNameIterations
Current4842610
Baselinemain10

Developer Information:

Download Benchmark

@amcasey

Copy link
Copy Markdown
MemberAuthor

Seeing a 35% reduction in check time for MUI.

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.

Erik Brinkman (@erikbrinkman) we can look into re-merging this once we've solved the perf issue, we just don't wanna ship such a big perf regression in the next beta.

@amcasey
Andrew Casey (amcasey) merged commit e742625 into microsoft:mainMar 25, 2022
@amcasey
Andrew Casey (amcasey) deleted the RevertMuiRegression branch March 25, 2022 20:09
Sidharth Vinod (sidharthv96) added a commit to sidharthv96/TypeScript that referenced this pull request Apr 1, 2022
* upstream/main: (473 commits)
Correct node used for isDefinition calculation (microsoft#48499)
fix(48405): emit dummy members from a mapped type (microsoft#48481)
CFA for dependent parameters typed by generic constraints (microsoft#48411)
No contextual typing from return types for boolean literals (microsoft#48380)
fix(47733): omit JSDoc comment template suggestion on node with existing JSDoc (microsoft#47748)
Ensure that we copy empty NodeArrays during transform (microsoft#48490)
Add a new compiler option `moduleSuffixes` to expand the node module resolver's search algorithm (microsoft#48189)
feat(27615): Add missing member fix should work for type literals (microsoft#47212)
Add label details to completion entry (microsoft#48429)
Enable method signature completion for object literals (microsoft#48168)
Fix string literal completions when a partially-typed string fixes inference to a type parameter (microsoft#48410)
fix(48445): show errors on type-only import/export specifiers in JavaScript files (microsoft#48449)
Fix newline inserted in empty block at end of formatting range (microsoft#48463)
Prevent looking up symbol for as const from triggering an error (microsoft#48464)
Revise accessor resolution logic and error reporting (microsoft#48459)
fix(48166): skip checking module.exports in a truthiness call expression (microsoft#48337)
LEGO: Merge pull request 48450
LEGO: Merge pull request 48436
fix(48031): show circularity error for self referential get accessor annotations (microsoft#48050)
Revert "Fix contextual discrimination for omitted members (microsoft#43937)" (microsoft#48426)
...
@microsoftMicrosoft (microsoft) locked as resolved and limited conversation to collaborators Oct 22, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Author: TeamFor Uncommitted BugPR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@amcasey@typescript-bot@weswigham