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

Investigate deoptimization diagnostics tooling #44211

Closed
DanielRosenwasser opened this issue May 22, 2021 · 2 comments
Closed

Investigate deoptimization diagnostics tooling #44211

DanielRosenwasser opened this issue May 22, 2021 · 2 comments
Assignees
Labels
Domain: Performance Reports of unusually slow behavior Infrastructure Issue relates to TypeScript team infrastructure Rescheduled This issue was previously scheduled to an earlier milestone

Comments

@DanielRosenwasser
Copy link
Member

We've been diving deep into perf. One place we find tooling lacking is in identifying deoptimizations in the VM. @rbuckton has had some neat experiments which we might be able to leverage to identify polymorphic/megamorphic usage sites. Work closely with @amcasey here to get a sense of what is and isn't useful.

Also, identify some baselines within the tooling to help drive meaningful goals for users. For example, a use-site might have 500 different object shapes passing through it - is it meaningfully faster to reduce that to 200?

Ideally, this would be usable by the broader team and partner teams who also write CPU-bound Node.js code.

@Kingwl
Copy link
Contributor

Kingwl commented May 25, 2021

May I request that be investigation public (Or already public but in somewhere)?
Very interested in this stuff.

@andrewbranch andrewbranch added the Rescheduled This issue was previously scheduled to an earlier milestone label Aug 30, 2021
@canonic-epicure
Copy link

There's already a tool for this: https://www.npmjs.com/package/deoptigate

Its very useful, shows all places where v8 switches to megamorphic IC.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Domain: Performance Reports of unusually slow behavior Infrastructure Issue relates to TypeScript team infrastructure Rescheduled This issue was previously scheduled to an earlier milestone
Projects
None yet
Development

No branches or pull requests

6 participants