views:

369

answers:

2

I have just installed a build server with a 64 bit windows server 2008 for continuous integration.

The reason I choose a 64 bit server was to have more than ~3Gb of RAM. I had hopes that this machine would provide blazing fast builds.

Unfortunately, the result are lacking greatly to say the least. My desktop provides faster builds than this server equipped with a Xeon quad core, 15k RPM SAS and 8 Gigs of RAM.

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

Could the WOW64 emulator be the bottleneck that is slowing down the build process?

Any pointers, comments would be greatly appreciated.

Regards,

+1  A: 

WOW64 is not an emulator on x64. The processor natively executes 32-bit x86 code. At the bottom of the user-mode stack, under kernel32 et al, are DLLs which map system calls to the 64-bit call interface.

See WOW64 Implementation Details.

Mike Dimmick
+1  A: 

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

I think that's the problem. I like Cygwin a lot, but it is really slow when it comes to file I/O. It helps a bit to deactivate the NTFS filesystem feature to keep track of the last file-access.

To get a better speed boost port your build-script / makefile to use the native command shell if pssible and only call cygwin-tools if there is really no replacement available.

If you use the gcc compiler try the mingw version. That one is a lot faster.

Nils Pipenbrinck