我知道.NET
is JIT
在应用程序运行之前编译为您正在运行的架构,但是 JIT 编译器是否针对 64 位架构进行了优化?
在编写将在计算机上运行的应用程序时,有什么需要做或考虑的吗?64bit system
? (即使用 Int64 会提高性能吗?JIT 编译器会自动使 Int64 在 32 位系统上工作吗?)
The 64位JIT不同与 32 位的不同,所以我预计输出会有一些差异 - 但我不会仅仅为此切换到 64 位,并且我不希望通过切换到 64 位在 CPU 时间上获得太多速度(如果有的话)。
如果您的应用程序使用大量内存并且 PC 有足够的 RAM 来跟上,您会注意到性能的大幅提升。我发现,当使用的内存达到 1.6GB 左右时,32 位 .NET 应用程序往往会开始抛出内存不足异常,但由于以下原因,它们开始对磁盘造成影响:paging早在这之前 - 所以你就不再受 I/O 束缚了。
基本上,如果你的瓶颈是 CPU,那么 64 位不太可能有帮助。如果您的瓶颈是内存,那么您应该会看到很大的改进。
使用 Int64 会提高性能吗?JIT 编译器会自动使 Int64 在 32 位系统上工作吗
Int64 已经可以在 32 位和 64 位系统上运行,但在 64 位上运行速度会更快。因此,如果您主要使用 Int64 进行数字运算,那么在 64 位系统上运行应该会有所帮助。
最重要的是measure你的表现。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)