.NET Blog

Free. Cross-platform. Open source. A developer platform for building all your apps.

Profile-guided optimization in .NET Core 2.0

This post was co-written by Daniel Podder and Bertrand Le Roy. .NET Core 2.0 introduces many new optimizations that will make your code even faster. A lot of work has been done in the base class library to improve performance, but in this post, we'd like to talk about a specific category of optimization: profile-guided optimization (or PGO...
Comments are closed.0 0
.NET

Performance Improvements in RyuJIT in .NET Core and .NET Framework

RyuJIT is the just-in-time compiler used by .NET Core on x64 and now x86 and by the .NET Framework on x64 to compile MSIL bytecode to native machine code when a managed assembly executes. I'd like to point out some of the past year's improvements that have gone into RyuJIT, and how they make the generated code faster. What follows is by no...
Comments are closed.0 0
.NET

Performance Improvements in .NET Core

Update (2017/06/12): Added BenchmarkDotNet blog post link. There are many exciting aspects to .NET Core (open source, cross platform, x-copy deployable, etc.) that have been covered in posts on this blog before. To me, though, one of the most exciting aspects of .NET Core is performance. There's been a lot of discussion about the ...

December 2016 Update for .NET Core 1.0

Today, we are releasing a new set of reliability and quality updates for .NET Core 1.0. This month's update is our second Long Term Support (LTS) update and includes updated versions of multiple packages in .NET Core, ASP.NET Core and Entity Framework Core. We recommend everyone on the 1.0.* LTS track move to this update immediately. How to ...
Comments are closed.0 0
.NET

Are you GLAD?

Holidays are almost upon us. Last year around Christmas time I wrote a set of GC ETW blog entries to help with diagnosing GC heap related issues. This year I want to discuss taking that a (big) step further and making an SDK that does the analysis for you using these ETW events - so before I leave for vacation I’d like to share with you ...
Comments are closed.0 0
.NET

Allocating on the stack or the heap?

A recent discussion prompted me to write this blog entry. The question there was “when should I allocate something on the stack vs on the heap?”. I searched around and there are plenty of articles that talk about *what* gets allocated on the stack vs on the heap, but not how you should decide what to allocate on the stack vs heap. ...
Comments are closed.0 0
.NET

Application Insights for ASP.NET 5 – you’re in control

ASP.NET 5 apps can now be monitored for performance and usage with Visual Studio Application Insights. The composability of components in ASP.NET 5 makes it very easy to integrate telemetry modules into your app design in a flexible way. With the feedback you get about the performance and effectiveness of your app in the wild, you can make ...

GC ETW Events – 3

GC ETW series - GC ETW Events - Part 1 GC ETW Events - Part 2 GC ETW Events - Part 3 (this post) GC ETW Events - Part 4 Processing GC ETW Events Programmatically with the GLAD Library In the last blog entry we looked at a particular GC trigger reason – InducedNotForced GCs. There are 2 other triggered reasons for ...
Comments are closed.0 0
.NET

GC ETW events – 2

GC ETW series - GC ETW Events - Part 1 GC ETW Events - Part 2 (this post) GC ETW Events - Part 3 GC ETW Events - Part 4 Processing GC ETW Events Programmatically with the GLAD Library Before we continue from where we left off in the last blog entry I wanted to give a performance tip on managed memory analysis. As some of you who have...

GC ETW events – 1

GC ETW series - GC ETW Events - Part 1 (this post) GC ETW Events - Part 2 GC ETW Events - Part 3 GC ETW Events - Part 4 Processing GC ETW Events Programmatically with the GLAD Library A lot of people have mentioned to me that I have not posted anything for a long time. I do realize it and do appreciate being asked to write more. Well, ...