镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Investigate deoptimization diagnostics tooling #44211

Description

We've been diving deep into perf. One place we find tooling lacking is in identifying deoptimizations in the VM. Ron Buckton (@rbuckton) has had some neat experiments which we might be able to leverage to identify polymorphic/megamorphic usage sites. Work closely with Andrew Casey (@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.

Activity

  1. Kingwl commented on May 25, 2021

    @Kingwl
    Contributor

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

  2. canonic-epicure commented on Oct 29, 2021

    @canonic-epicure

    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

Metadata

Metadata

Labels

Domain: PerformanceReports of unusually slow behaviorInfrastructureIssue relates to TypeScript team infrastructureRescheduledThis issue was previously scheduled to an earlier milestone

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions