手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

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

[日期:2018-08-22] 来源:infoq.com  作者:Jeff Martin ,译者 谢丽 [字体: ]

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

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-08/153649.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款