Comment optimiser la compilation d'une application 32 bits dans Visual C ++ 2005 sur un serveur Windows 64 bits 2008
-
01-07-2019 - |
Question
Je viens d’installer un serveur de build avec un Windows Server 2008 64 bits pour une intégration continue.
La raison pour laquelle j'ai choisi un serveur 64 bits était d'avoir plus de ~ 3 Go de RAM. J'espérais que cette machine fournirait des versions ultra rapides.
Malheureusement, le résultat manque pour le moins. Mon ordinateur de bureau fournit des versions plus rapides que ce serveur équipé d’un noyau Xeon, de 15 000 tr / min SAS et de 8 Go de RAM.
Nous utilisons Visual C ++ 2005 pour compiler notre application 32 bits avec Cygwin.
L'émulateur WOW64 pourrait-il être le goulot d'étranglement qui ralentit le processus de construction?
Tous les pointeurs et commentaires seraient grandement appréciés.
Cordialement,
La solution
Nous utilisons Visual C ++ 2005 pour compiler notre Application 32 bits avec Cygwin.
Je pense que c'est le problème. J'aime beaucoup Cygwin, mais il est vraiment lent en ce qui concerne les fichiers d'E / S. Il est utile de désactiver la fonction système de fichiers NTFS pour garder trace du dernier accès aux fichiers.
Pour obtenir un meilleur port d’accélération de la vitesse, votre script de compilation / makefile doit utiliser le shell de commande natif, si possible, et n’appeler que cygwin-tools s’il n’ya vraiment pas de remplacement disponible.
Si vous utilisez le compilateur gcc, essayez la version mingw. Celui-ci est beaucoup plus rapide.
Autres conseils
WOW64 n'est pas un émulateur sur x64. Le processeur exécute en mode natif du code x86 32 bits. Au bas de la pile en mode utilisateur, sous kernel32 et autres , se trouvent des DLL qui mappent les appels système à l'interface d'appel 64 bits.