In a previous post (Automating memory profiling with the JetBrains dotMemory Profiler API), I described the steps that could be used to automate the collection of memory snapshots and profiling data by using the JetBrains Profiler API NuGet package. In that post, we triggered the profiling session using the dotMemory application on Windows. As part […]
Tag: allocations
Automating Memory Profiling with the JetBrains dotMemory Profiler API
Those who have read some of my previous performance-focused blog posts will know that I use the dotMemory product from JetBrains when working on code optimisations. In this post, I want to demonstrate a really handy, but somewhat underutilised feature, to automate the collection of snapshots in a repeatable way. I use these steps quite […]
Interpreting the .NET Core Memory Timeline in JetBrains dotMemory Writing High-Performance C# and .NET Code: Part 6
In my last post, which is part of my ‘Writing High-Performance C# and .NET Code‘ series, we looked at how dotMemory can be used to view the amount of memory allocated by code in an application using the memory traffic comparison. In this post, I’ll begin looking at some of the other information available in […]
Profiling .NET Core Memory Traffic using JetBrains dotMemory Writing High-Performance C# and .NET Code: Part 5
In this post, I will continue my journey into writing high-performance C# and .NET Core code by taking a look at a benchmarking challenge I recently encountered. While writing some sample code for an upcoming talk, I wanted to create a demo based on a scenario that I’d experienced at work. In that scenario, I […]
Creating Strings with No Allocation Overhead Using String.Create Writing High-Performance C# and .NET Code: Part 4
In this post, I’ll continue my series about writing high-performance C# and .NET code. This time, I will focus on a new(ish) method available on the String type – String.Create. First introduced in .NET Core 2.1, this method is currently planned for inclusion as part of .NET Standard 2.1 once that is released. What Does […]