.NET9 PreView6 RyuJIT代码布局改进(HIR)
原文中文,约4100字,阅读约需10分钟。发表于: 。点击上方蓝字 江湖评谈设为关注/星标前言7月9日微软发布了.NET9 PreView6,本篇看下这个版本的CLR(JIT)第一个改进:代码布局改进。问题代码的布局改进,是在RyuJIT的HIR(Hight IR)部分,它实际上是对BB(Basick Block)块的顺序改进。微软早在.NET6就引入了动态PGO的实验,后续的7,8等版本也进行了BB块的顺序改进,但是BB块的顺序如同顽疾始终受限于代...
微软发布了.NET9 PreView6,其中CLR(JIT)的改进之一是代码布局改进,通过重构流程图数据结构消除了代码流程图对BB块顺序的限制,优化后的代码可以根据热点进行排序,提高性能。此外,还有其他优化方面的改进,如ARM64代码生成、循环优化等。