Create central trace health check

Open
#985 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
38/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
performance

Research direction

Start by surveying the TraceLens modules that accept traces and perform analysis, then trace how profiler options such as add_python_func=True and with_stack=True are represented. Define the lightweight health checks and the configuration or environment bypass, ensuring modules invoke the check before analysis and that users can identify incomplete or unsuitable traces.

Written by the indexing model from the issue text.

Description

There are many TraceLens modules and they each take in a trace and perform some kind of analysis. It would be useful if there was a file that performs a "trace health" check to see if the trace is analyzable/complete and have all the TraceLens modules call this health check before analysis. This could check for many things:

  • Are all the expected kernels present? Are any kernels dropped? This is something that often goes by unnoticed in trace analysis. Profilers could be buggy and drop kernels and the user wouldn't know
  • Was the trace collected with add_python_func=True and with_stack=True? Users may not know that these flags are often needed to pass into profiler for some TraceLens use cases (needed if --include_call_stack is passed into generate_perf_report)
  • Is the trace in graph mode or eager mode? If it's in graph mode, analysis would be difficult without a corresponding capture trace

If we create this, we'd have to make sure it's very lightweight and give users the option to bypass this health check with some kind of config or env var.

Dominant language
Python
Stars
101
Forks
34
Avg merge
2d 1h
Merged PRs (30d)
78

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from AMD-AGI/TraceLens

All issues in AMD-AGI/TraceLens

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.