微软 .NET 5.0 Preview 5 发布:改进 RyuJIT 编译器

2020/6/11 20:46:19 来源:开源中国 作者:- 责编:骑士

.NET 5.0 Preview 5 发布了,此版本带来了一些小的新特性和性能改进,目前需要使用 Visual Studio 2019 16.7 才能体验到 .NET 5.0,macOS 的尚不支持 .NET 5.0。

RyuJIT 改进

RyuJIT 编译器有一些改进,包括:

  • 新的,可移植并且更快的尾调用 helper 实现。

  • ARM64 硬件 intrinsics 实现

    • 实现 ASIMD Extract Insert ExtractVector64 ExtractVector128

    • 实现 ASIMD 扩大、缩小、饱和 intrinsics

    • 添加 VectorTableList 和 TableVectorExtension intrinsics

    • 支持 arm64 intrinsic CreateScalarUnsafe()

    • Vector64.Create() 与 Vector128.Create() 的 ARM64 intrinsic 支持

    • 通过 arm64 intrinsics 优化 BitOperations.PopCount()

  • 在影响正则表达式编译的情况下提高了 JIT 速度

  • 使用新的硬件 intrinsics BSF/BSR 改善了英特尔架构性能

  • 实现 Vector{Size}.AllBitsSet

本地导出

已经为本地二进制文件启用了导出功能,该功能的构建块是托管对 UnmanagedCallersOnlyAttribute 的 API 的支持。

此功能是创建更高级别体验的基础,它使开发者能够:

  • 暴露自定义的本地出口。

  • 不需要像 COM 这样的高级互操作技术。

  • 跨平台工作。

将 System.DirectoryServices.Protocols 扩展到 Linux 和 macOS

添加了对 System.DirectoryServices.Protocols 的跨平台支持,System.DirectoryServices.Protocols 是比 System.DirectoryServices 更底层的 API ,并且可以启用更多方案。System.DirectoryServices 包含仅 Windows 的概念/实现,因此制作跨平台并不是一个显而易见的选择。这两个 API 集都支持控制和与 LDAP 或 Active Directory 之类的目录服务服务器进行交互。

此外,此版本还预告了 .NET 6 将删除内置的 WinRT(Windows Runtime) 支持。.NET Core 3.0 中添加了对 WinRT interop 的支持,这是添加对 Windows 桌面客户端框架(Windows Forms 和 WPF)支持的一部分。不过开发团队将在 .NET 5.0 中提供 C#/WinRT 工具链替换内置的 WinRT 支持。完整发布公告查看:

https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-5

相关文章

关键词:.NET微软

软媒旗下网站: IT之家 辣品 - 超值导购,优惠券 最会买 - 返利返现优惠券 6655网址之家 Win10之家 Win7之家

软媒旗下软件: 魔方 旗鱼浏览器(极速内核) 云日历 酷点桌面 Win7优化大师 Win10优化大师 软媒手机APP应用