Microsoft .NET 5 Preview 2 brings RyuJIT and GC improvements

Microsoft has published a second preview of .NET 5. A merger of .NET Standard and .NET Core that is intended to unify the .NET platform, .NET 5 is described by Microsoft as “the future of .NET.” The second .NET 5 preview, released April 2, brings additional code quality improvements to the Ryujit compiler as well as garbage collection enhancements.

High-level goals for .NET 5 include providing a unified .NET SDK experience, with a single BCL (base class library) across all .NET 5 applications, and support for both native and web applications across multiple operating systems. For native development, a single device project would support an application to work across devices such as Windows, Microsoft Duo (Android), and Apple iOS using native controls on those platforms.

High-performance cloud applications are a goal as well, as are faster algorithms in the BCL, better support for containers in the runtime, and support for HTTP3. Specific enhancements in .NET 5 preview 2 include:

  • A number of changes have been made to RyuJIT to the quality of the machine code generated, including duplicate zero initializations being eliminated more aggressively and nullable box optimizations invoked earlier.
  • Server garbage collection on different threads now can work-steal while marking gen0/1 objects held live by older generation objects. Work stealing across threads shortens ephemeral GC pauses for scenarios where some GC threads took much longer to mark than others. In addition, part of the Pinned Object Heap (POH) feature has been implemented, the part internal to garbage collection, to allow the collector to manage pinned objects separately. This avoids the negative effects of pinned objects on generational heaps.

Preview 1, released March 16, included regular expression performance improvements as well as code quality enhancements in RyuJIT.

Due as a production release in November 2020, .NET 5 is set to include:

  • ASP.NET Core, an open source framework for web applications.
  • Entity Framework Core data access technology.
  • WinForms.
  • WPF (Windows Presentation Foundation).
  • Xamarin mobile app device model.
  • ML.NET.

Microsoft is offering a preview .NET 5 SDK and an accompanying runtime preview. Microsoft said that .NET 5 will provide a single, unified platform for building any type of application. The company is directing half of the traffic to its .NET to a .NET 5 version as a test case, using Azure load-balancing.

Copyright © 2020 IDG Communications, Inc.

You might also like More from author

Leave A Reply

Your email address will not be published.