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

Todo / Roadmap #1

Open
8 of 28 tasks
lahmatiy opened this issue Feb 7, 2022 · 3 comments
Open
8 of 28 tasks

Todo / Roadmap #1

lahmatiy opened this issue Feb 7, 2022 · 3 comments

Comments

@lahmatiy
Copy link
Owner

lahmatiy commented Feb 7, 2022

Input formats

  • Chromium Performance Profile
    • Extract additional events like compute styles, layout, compile code etc
  • Edge Enhanced Performance Traces (.devtools)
  • V8 log preprocessed with --preprocess
    • Scripts
    • Function state transitions
  • Raw V8 log
  • Support for Firefox/Safari profiles Postponed until done with V8

Integrations

API

  • Marks (smth like performance.mark() / performance.measure())
  • setSamplingInterval
  • cpupro -- script.js ...params as an alternative to node --require cpupro script.js ...params

Data (capturing & processing)

  • Fix total time computation
  • Bring file:///path/... and /path/... to one form
  • Exclude startProfiling/stopProfiling frames from the profile
  • Attach RegExp location to a parent call frame
  • Populate collected profile with code fragments This data can be obtained from V8 log

Viewer

  • Switch between threads (for Chromium timeline profiles with multiple threads)
  • Marks on timelines
  • Flow view
  • Tree with columns view
  • Keyboard navigation in trees / tables
  • Flame charts
  • Example data
  • Instructions how to capture profile file
@cmdcolin
Copy link

great work on this! can the app display webworker traces also? just an idea

@lahmatiy
Copy link
Owner Author

@cmdcolin I'm going to add a switching between threads for Chromium timeline profiles (added a point to "viewer" about it), since a webworker is a thread and timeline contains a separate profile for each of them. However, that's a complex task and I can't currently say for sure about ETA of this feature.

@eJayYoung
Copy link

eJayYoung commented Apr 18, 2023

will it support heap profile or gc trace as well,I really like this kind of rethink about XXX profile analysis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants