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

GHC eventlog based stats todo list #7

Open
2 of 17 tasks
harendra-kumar opened this issue May 16, 2023 · 0 comments
Open
2 of 17 tasks

GHC eventlog based stats todo list #7

harendra-kumar opened this issue May 16, 2023 · 0 comments

Comments

@harendra-kumar
Copy link
Member

harendra-kumar commented May 16, 2023

Changes to GHC, higher pri:

  • Use perf counters in the user defined window as well
  • Add a precise allocation counter
  • Add a OS process level CPU counter as well to account for entire program time, this counter should not be stopped during the entire window. This would be a window only counter.
  • flush the event log buffer before and after the thread run if beyond halfway mark

Changes to GHC, Lower pri:

  • Add more relevant perf counters (esp. HW events)
  • Add pinned allocations, unpinned allocations, and large allocations counters
  • Enable the counter measurement code only when +RTS -l is specified (put code under eventlog_enabled)
  • Put the code under ifdef LINUX_PERF_EVENT
  • traceEventIO adds a lot of allocations, see if we can reduce that
  • Use a unique id for each start/stop event pair for better correlation in case an event is missed
  • Select the enabled counters via RTS options
  • Support multiple counters at the same time
  • Select a particular thread label to trace, to reduce eventlog traffic
  • Select to log only the perf events

Changes to the eventlog parser:

  • Print periodically e.g. every second instead of on each event
  • Print after collecting n events
  • activate a window across all threads, account the time of all haskell threads during the window
@harendra-kumar harendra-kumar transferred this issue from composewell/streamly-metrics Jun 19, 2023
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

1 participant