microsoft / microsoft/profile-explorer
Currently, Profile Explorer does not provide sufficient visibility into wait-based performance issues, such as contention or thread blocking.
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 286
- Forks
- 27
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 1
Description
When analyzing a performance regression where a thread is stalling due to lock contention, I often need to identify where time is being spent waiting, across which callstacks, and how it’s distributed across threads. However, Profile Explorer lacks a way to sort or filter by total wait time, making it very difficult to isolate the root cause within the tool.
As a result, I frequently need to switch back to Windows Performance Analyzer (WPA), where I can group by wait reason or sort by total wait duration. This disrupts my workflow and limits the usefulness of Profile Explorer in critical investigations.
Feature Request:
It would be extremely helpful to have a "Waits View" in Profile Explorer—something that allows sorting or grouping by total wait time, or by functions associated with the highest accumulated wait duration. This would make Profile Explorer a much more complete tool for analyzing real-world contention scenarios in complex systems.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by surveying Profile Explorer's existing views and how its CPU profiling traces expose wait or contention data; compare the requested grouping and sorting with WPA's wait-reason and total-duration views. Define the supported wait metrics and verify that users can identify callstacks and per-thread totals. The issue names no files or tests, so repository discovery is required.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- operating-systems, performance, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100