Posts by this author

Sep 25, 2023
11
5

A unit of profiling makes the allocations go away

In Visual Studio 17.8 Preview 2 we have updated unit test profiling, allowing you to use any of the available tools in the performance profiler – not just the instrumentation tool. With this change, it’s easy to quickly profile small units of work in isolation, make changes, and then remeasure and validate the impact of the change. Assuming you hav...

Debugging and DiagnosticsVisual Studio 2022Developer Productivity
Apr 13, 2023
13
10

Improving Visual Studio performance with the new Instrumentation Tool

Summary With the release of Visual Studio 2022 version 17.6 we are shipping our new and improved Instrumentation Tool in the Performance Profiler. Unlike the CPU Usage tool, the Instrumentation tool gives exact timing and call counts which can be super useful in spotting blocked time and average function time. To show off the tool let’s use it to ...

Debugging and DiagnosticsVisual Studio 2022Developer Productivity
May 2, 2022
6
1

Case Study: Double performance in under 30 minutes

Summary Recently I was converting some decompression code to C# so that we could use it cross platform and to aid in our team’s effort to migrate our new analysis process to .NET 6. After I got the initial implementation done with the simplest, cleanest code that I could, I proceeded to profile it to make sure I wasn’t doing anything silly. I want...

Visual Studio ProfilerCPU Usage.NET Object Allocation
Apr 5, 2022
9
1

CPU Usage Tool Improvements

With Visual Studio 2022, we have converted the CPU Usage tool in the Performance Profiler to the profiler’s new analysis engine. This new change provides the tool with better source resolution, incremental/cancelable symbol loading, a performance boost, and a new flame graph.

Jun 30, 2021
15
1

.NET Object Allocation Tool Performance

With the release of Visual Studio 16.10 comes a new analysis engine for the Performance Profiler, with the .NET Object Allocation Tool being the first tool to be onboarded. This provides the tool with some new features and a significant perf boost. Give it a shot with your C# app and see what spurious allocations you can remove to speed up your app...