首页 / 微软技术 / .NET / .NET Core 2.1预览分层编译特性
.NET Core 2.1

.NET Core 2.1预览分层编译特性

.NET使用的JTI编译进程一直在平衡两个相互冲突的目标——更快的应用程序启动时间和更快的应用程序稳态性能。从终端用户的角度来看,如果JIT在启动时暂停并计算最佳的稳态性能,那么就会对应用程序启动速度的感受产生负面的影响。另一方面,如果JIT优先考虑更快的应用程序启动时间,那么应用程序的稳态性能就是次优的。

为了解决这一冲突,来自微软的Noah Falk宣布了面向.NET Core 2.1的分层编译。该特性使JIT执行多次编译,生成可以在运行时热交换的代码,从而获得最佳的整体性能。最终结果是应用程序启动快,同时又具有很棒的稳态性能。

由于该特性尚处于预览阶段,所以该特性还不是默认启用的,但是,对于任何.NET Core应用程序,都有几种方式可以激活。对于你能编译的应用程序,只需要向项目的默认属性组增加MSBuild属性<TieredCompilation>true</TieredCompilation>

如果你在运行一个之前编译好的应用程序,你没有源代码,那么你可以在configProperties部分的runtimeconfig.json文件中设置一个新属性:System.Runtime.TieredCompilation=true

最后,可以使用环境变量COMPlus_TieredCompilation=1启用分层编译,而不必修改任何文件。

需要注意的是,目前,该特性仍然仅限于.NET Core,不能指定用于.NET Framework部署。想要试用这项新技术的开发人员还可以查看微软在GitHub上建立的JitBench项目比较结果。

查看英文原文:.NET Core 2.1 Previews Tiered Compilation



About worksguo

我顶的是太阳,蓝天都在我脚下。我是软件开发者,信息化专家,电子商务专家,金融学者,创业人。长期关注微软技术!

Check Also

.NET

.NET Framework 4.7改进了WPF和WinForms

Microsoft 新发布的 .NET Framework 4.7 中绑定了一些更新,各部分协同构成了更好的整体架构。.NET Framework 4.7 是与 Windows 10 Creator Update 一并联合发布的,着重于对 UI 的提升、对加密支持改进以及常规性能提升。Microsoft 的 Rich Lander 在宣布本次公告时指出,当前 .NET Framework 4.7 已支持.NET Standard 1.6,今年稍后交付的版本将会支持.NET Standard 2.0。

X#

X#语言加入.NET家族 将于3月17日正式上线

X# (发音为 X Sharp),一门基于 xBase 语言的开源编程语言,加入了 .NET 家族,成为一门新的 .NET 语言。未来你可以在最新版的 Visual Studio 2017 中安装和使用这门编程语言,它将在 2017 年 3 月 17 日正式上线。


x

更多推荐

Windows 10四月更新恢复预装“全家桶”:网友吐槽

.NET使用的JTI编译进程一直在平衡两个相互冲突的目标——更快的应用程序启动时间和更快的应用程序稳态性能。从终端用户的角度来看,如果JIT在启动时暂停并计算最佳的稳态性能,那么就会对应用程序启动速度的感受产生负面的影响。

正面Diss谷歌,微软表示人工智能第一次打电话是在中国

.NET使用的JTI编译进程一直在平衡两个相互冲突的目标——更快的应用程序启动时间和更快的应用程序稳态性能。从终端用户的角度来看,如果JIT在启动时暂停并计算最佳的稳态性能,那么就会对应用程序启动速度的感受产生负面的影响。

微软TypeScript 3.0正式发布:引入“项目引用”新概念

.NET使用的JTI编译进程一直在平衡两个相互冲突的目标——更快的应用程序启动时间和更快的应用程序稳态性能。从终端用户的角度来看,如果JIT在启动时暂停并计算最佳的稳态性能,那么就会对应用程序启动速度的感受产生负面的影响。

powered by RelatedPosts