开源意识流

观点与事件:科技、开源、商业化

.Net7 在优化上下足功夫


By Forsaken

微软最近发布了 .NET7,跟所有工具链一样,广告词采用了逻辑正确的模板:有史以来最快的版本

该版本的一大亮点是 OSR(On-Stack Replacement),主要解决 JIT 的启动速度和吞吐量的矛盾。原理并不复杂,就是把本该在运行时检测热点并进行 JIT 优化的函数,预先在编译时优化好并插入最终生成的文件中,触发 JIT 的时候直接调转到已优化代码的入口。传统方法是检测到热点才优化,这样有运行时开销。OSR 相当于结合了 AOT 和 JIT 的优势,代价是生成较大的目标文件。

另外,还加入了一些 ARM64 的优化,其余大量常规优化在此不提。

微软此次发布让人体会到了什么叫有钱有人。