Skip to content

Adding lightswitch as a profile tool #2518

Description

@javierhonduco

Hi,

Would you be open / interested in adding lightswitch as one of the available profilers? I thought of posting here after lurking in Rust's zulip and seeing some mentions of the issues of dealing with other profilers (cc @bal-e).

The TL;DR is:

  • x86_64 and arm64 Linux only, frame pointers not necessary;
  • support deeper stacks thanks to not using PERF_SAMPLE_STACK_USER, as of now, no limits in terms of process stack, and up to 200 user + kernel frames;
  • various output modes, including to the Firefox profiler, SVG flamegraph, Perfetto, and others;
  • written in Rust :)

I think right now the biggest blocker compared to other profilers is that it doesn't accept a command to run and profile, it can either profiler the whole box of the specified pids. This is something I am planning on adding soon and can prioritise if this would be useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions