如何在64位Windows Server 2008上优化在Visual C ++ 2005中编译32位应用程序

时间:2020-03-06 14:26:14  来源:igfitidea点击:

我刚刚安装了带有64位Windows Server 2008的构建服务器,以实现持续集成。

我选择64位服务器的原因是要拥有超过约3Gb的RAM。我希望这台机器能够提供出色的快速构建。

不幸的是,至少可以说,结果非常缺乏。与配备Xeon四核,15k RPM SAS和8 Gigs RAM的服务器相比,我的台式机提供的构建速度更快。

我们使用Visual C ++ 2005来用Cygwin编译我们的32位应用程序。

WOW64仿真器是否会成为拖慢构建过程的瓶颈?

任何指针,评论将不胜感激。

问候,

解决方案

WOW64不是x64上的模拟器。处理器本机执行32位x86代码。在用户模式栈的底部,在kernel32等之下,是DLL,这些DLL将系统调用映射到64位调用接口。

请参阅WOW64实现细节。

We use Visual C++ 2005 to compile our
  32 bit application with Cygwin.

我认为这就是问题所在。我非常喜欢Cygwin,但是在文件I / O方面确实很慢。它有助于停用NTFS文件系统功能,以跟踪上一次文件访问。

为了获得更好的速度提升端口,如果pssible,build-script / makefile使用本机命令外壳,如果确实没有可用的替代方法,则仅调用cygwin-tools。

如果我们使用gcc编译器,请尝试使用mingw版本。那一个快很多。