jlfwong / speedscope

🔬 A fast, interactive web-based viewer for performance profiles.
https://www.speedscope.app
MIT License
5.45k stars 237 forks source link

Improve hermes profile frame keys to better group frames #459

Closed zacharyfmarion closed 8 months ago

zacharyfmarion commented 8 months ago

Because all args are serialized in the key for hermes profiles, frames were not properly getting grouped since the "parent" property was different. This PR ensures that the frame key is properly constructed from the function name, file name, line + column number.

Before After
Screenshot 2023-12-27 at 2 25 32 PM Screenshot 2023-12-27 at 2 26 02 PM
Screenshot 2023-12-27 at 2 13 37 PM Screenshot 2023-12-27 at 2 14 20 PM
zacharyfmarion commented 8 months ago

@jlfwong one more for you before we start thinking about communicating this out 😅

coveralls commented 8 months ago

Coverage Status

coverage: 43.535% (+0.006%) from 43.529% when pulling cd0167b8ca297e0ea21c8e131efe86e02631b293 on zacharyfmarion:zac/better-frame-key into 3f3da228534beef7c49e2ec38e54c3d31317e38d on jlfwong:main.

jlfwong commented 8 months ago

Looks good! If you update the PR name to give this a more descriptive name for the commit log, I'll merge

zacharyfmarion commented 8 months ago

@jfwong updated, I always miss something 😃

jlfwong commented 8 months ago

@zacharyfmarion you also fix things so fast it doesn't matter much 😄

jlfwong commented 8 months ago

Published as v1.19.0 and deployed to https://www.speedscope.app/