gpt4 book ai didi

c# - 与 X86 相比,X64 应用程序速度较慢

转载 作者:太空宇宙 更新时间:2023-11-03 10:38:14 25 4
gpt4 key购买 nike

我们有一个在 32 位和 64 位平台上编译的 C#.NET 应用程序(框架 2.0,VS 2008)。

与 32 位应用程序相比,64 位应用程序的性能有所下降。

与 32 位应用程序相比,加载时间大约多 10-15 秒。我们没有对基于平台的代码做任何具体的事情。我们在应用程序启动时使用了一些注册表操作、xml 读取和一些基本内容。

在 x86 平台上编译的 32 位应用没有问题。


我尝试了“NGEN 更新”,它略微提高了性能,但我仍然需要建议我们如何提高这个应用程序的性能。

最佳答案

It is taken almost 10-15 seconds more to load compared to 32 bit application

代码在目标机器上从 IL 代码编译成机器代码。对于 32 位,开发人员假设这将是一个桌面交互式应用程序,并编写了一个 JITter ( Just-In-Time compiler ) 来编译优化启动时间,牺牲一些运行时的好处。对于 64 位应用程序,开发人员假定这是非交互式服务器应用程序。因此 JITter 将编译优化运行时性能,牺牲启动速度。

这在后来的版本中没有改变,直到最近当越来越多的消费产品运行 64 位版本的 Windows 时才成为一个问题。

微软带来了.NET Native因为启动时间很关键的现代手机都运行 64 位系统。回到编写 JITter 的时代,谁会想到这一点。

关于c# - 与 X86 相比,X64 应用程序速度较慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26628523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com