Je me souviens avoir lu quelque part à propos des versions multiproc dans VS2008, seulement je ne trouve pas l'article maintenant. Est-ce que quelqu'un sait comment activer cela, ou même si c'est possible?Multiproc construit dans VS2008
Répondre
Il existe deux façons de paralléliser une construction dans VS2008.
La première consiste à exécuter plusieurs builds de projet en parallèle. Le paramètre est dans Outils-> Options-> Projets et solutions-> Construire et exécuter, appelé "Nombre maximal de versions de projet parallèles". Notez que chaque projet ne créera qu'un seul fichier à la fois.
La seconde consiste à compiler plusieurs fichiers à la fois dans un même projet. Avec C++, ceci est fait en réglant le /MP
compiler flag. Notez que cette fonctionnalité interagit plutôt bizarrement avec les en-têtes précompilés, et vous devrez passer par quelques cerceaux pour combiner les deux.
quelle langue? Voulez-vous dire les bibliothèques CRT multithread (c.-à-d. Utiliser l'option du compilateur c/MD C++)?
Je suppose que vous posez des questions sur la nouvelle fonctionnalité de génération VC++ multi-proc (pour VS 2008). Voir this.
option/MP peut réduire le temps total pour compiler les fichiers source sur la ligne de commande. L'option/MP provoque le compilateur pour créer un ou plus de copies de lui-même, chacun dans un processus séparé . Ensuite, ces copies compiler simultanément les fichiers source . Par conséquent, le temps total à générer les fichiers source peut être réduit significativement .
Cette fonctionnalité était présente dans les anciennes versions de VC++, mais n'était pas documentée. C'est pas le bâtiment multi-projet que nous avons eu depuis un certain temps.
@Ben: Pourriez-vous élaborer sur «interagit plutôt bizarrement avec les en-têtes précompilés»? J'ai essayé/MP sur nos sources et le compilateur a échoué par intermittence avec des erreurs d'autorisation, vraisemblablement parce que les processus parallèles interféraient les uns avec les autres. Peut-être ajuster mes paramètres d'en-tête précompilés aider, ou est-ce sans rapport? Merci ... – RichieHindle
Je parle d'autres problèmes avec/MP ici: http://stackoverflow.com/questions/230298 – Aardvark
@Richie: Nous avons constaté qu'une construction/MP échouerait magnifiquement avec les paramètres au niveau du projet pour un en-tête précompilé . Si vous définissez/Yu pour le * projet * et que vous définissez/Yc sur stdafx.cpp, cela semble fonctionner. –