当.NET CLR将CIL编译为特定于平台的指令时,如果它在新的CPU架构(即不熟悉的架构)上进行编译,它会怎么做。通过与架构供应商(英特尔,AMD等)合作,MS是否能够领先于.NET并在.NET中发布新的优化指令编译功能?
答案 0 :(得分:6)
.Net似乎针对的是架构系列(例如x86,amd64和ia64),而不是单个架构。为三个基础架构系列的不同变体和扩展添加优化是一个实现细节,可能会也可能不会提高性能,但不需要生成运行代码;这些优化可能会在点发布中逐渐消失,但微软似乎并没有非常致力于更新他们的JIT以从最新芯片中获得额外的百分点速度。
编辑:看起来答案是'it depends'。 JIT执行一些特定于CPU的优化,但只有当他们观察到明显的性能痛点时才会添加这些优化; NGen提前编译从不包括特定于CPU的优化。