microsoft / microsoft/perfview

Please ship PerfViewCollect

Open
#2,420 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C#
Stars
4.7k
Forks
775
Avg merge
5d 11h
Merged PRs (30d)
9

Description

TL;DR I think it would be convenient if I could download a PerfViewCollect.exe, rather than needing to build my own.

Today I wanted to compare a small possible memory allocation improvement, and in order to work around run to run variance, I want to run 10 times with my change and 10 times without. I didn't want to manually capture 20 runs, so I asked copilot cli to do it for me. One time I ran perfview.exe collect -?, which popped up a GUI with the help text that I had to copy and paste for copilot cli. The first time it tried to automatically capture traces it popped up 20 perfview windows, at least one of which had an error message and finished with "press enter to close". I don't know if it's because copilot's script tried to run 20 at the same time, or if the script expected perfview to act like a console app and not return control to the next statement until the process exited.

After finishing my experiment, I found this issue:

In that issue there's a comment that it's possible to build a CLI capture tool, which would have been ideal to use with copilot. But since it's not on the release page, I didn't know about it until I was prepared to file this new issue.

I would have benefit from the CLI capture tool a few times in the past, but now with AI tools like copilot CLI I think it's usefulness has increased. Please consider building and publishing it in addition to the GUI enabled perfview.exe.

Contributor guide

Open the contributing guide

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.

Research direction

Start by reading the related issue 1736 and inspecting how the current PerfView CLI capture tool is built and how releases are published. Determine what is needed to produce PerfViewCollect.exe alongside the GUI-enabled executable. Done means the CLI executable is built, published on the release page, and usable for non-interactive capture.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
cli, performance, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.