Estoy usando Visual Studio 2008 en mi sistema de compilación principal. He estado jugando con Visual Studio 2010 en otro. Parece que la herramienta solo desea usar un núcleo cuando compila a menos que especifique el modificador/MP en los conmutadores del compilador (consulte How do I turn on multi-CPU/Core C++ compiles in the Visual Studio IDE (2008)?). Tengo que hacer esto para cada proyecto. ¿Hay alguna manera de hacer que VS siempre haga esto?¿Siempre usa bandera de múltiples núcleos (/ MP) con Visual Studio?
Respuesta
Puedes crear un property sheet que incluya todos tus proyectos y establecer el indicador /MP
en esa hoja de propiedades.
En Visual Studio 2010, que podría ponerlo en la hoja de propiedades Microsoft.Cpp.Win32.user, que se incluye en nuevos proyectos por defecto (que tiene la edad de C++ Visual directorios y otros ajustes predeterminados definidos en ella) No sé si la modificación de la hoja de propiedades predeterminada es realmente una buena idea, pero sin duda es una opción.
http://msdn.microsoft.com/en-us/library/3z7t21ew%28v=VS.90%29.aspx parece que todavía tengo que entrar en cada proyecto y decirle que para heredar la hoja de propiedades. – dwj
@dwj: Lo harías, sí. Tenga en cuenta también lo que acabo de agregar sobre Visual C++ 2010. –
La modificación de plantillas incluidas siempre me pone nervioso; ¡Me olvido de hacerlo si reinstalo! Gracias por los consejos; Realmente esperaba que MS hiciera/MP el valor predeterminado o permitiera que siempre se activara para un desarrollador/entorno determinado. – dwj
Crear variable de entorno "CL" y ponerlo en "/ MP". El compilador de microsofts cl.exe siempre antecede los indicadores de línea de comando con esta variable.
Algunas características del compilador y opciones como import no son compatibles con la bandera/MP. Deberá agregar/MP1 a los proyectos utilizados #import en un código. Esto desactivará/MP para esos proyectos.
1, especialmente para la punta/MP1 – Macke
El problema con '# por importación está bien explicado en [C2813] (http://msdn.microsoft.com/en-us/library/bb384890% 28v = vs.90% 29.aspx), que es el error que obtendrá al usar el modificador/MP en VS2008 y superior. (Nota: VS2005 también tiene el conmutador MP no documentado, pero no tiene este error). –
El resto de las características incompatibles se describen [aquí] (https://msdn.microsoft.com/en-us/library /bb385193.aspx) – gagallo7
- 1. ¿El iOS-Simulator usa múltiples núcleos?
- 2. Compilando con g ++ usando múltiples núcleos
- 3. Múltiples monitores con Visual Studio 2008
- 4. Bandera del compilador de Visual Studio C++: ¿qué es -Zm200?
- 5. JVM en múltiples núcleos
- 6. ¿Puede MS Visual Studio compilar proyectos utilizando 2 o 4 núcleos en la CPU?
- 7. Recursos de múltiples núcleos en C
- 8. GCC con Visual Studio?
- 9. Forzar visual studio para siempre 'reconstruir todo' cuando se depura
- 10. Inicio de proyectos múltiples al depurar en Visual Studio 2010
- 11. Visual Studio Designer siempre intenta cambiar mi control
- 12. Visual Studio siempre en la parte superior al depurar
- 13. PREfast con Visual Studio 2008
- 14. Visual Studio siempre se selecciona el xsd equivocado para App.config
- 15. ¿Se escribió Visual Studio 2008, 2010 o 2012 (v11) para usar varios núcleos?
- 16. ¿Puede gcc usar múltiples núcleos al vincular?
- 17. El control del usuario siempre falla Visual Studio
- 18. Escribir múltiples núcleos o un kernel único
- 19. Ejecución simultánea del kernel CUDA con múltiples núcleos por secuencia
- 20. Visual Studio 2012 en comparación con Visual Studio 2010 (delta)
- 21. ¿Visual Studio 2010 RC funciona bien con Visual Studio 2008?
- 22. ¿Cómo enciendo compilaciones multi-CPU/Core C++ en el Visual Studio IDE (2008)?
- 23. Visual Studio, depurar uno de los múltiples hilos
- 24. Visual Studio lento en Virtualbox
- 25. Ventana de vigilancia de múltiples líneas en Visual Studio 2010?
- 26. ¿Usa versiones múltiples de rubygems con rvm?
- 27. problema con Visual Studio 2010
- 28. Android NDK con Visual Studio
- 29. Specflow con Visual Studio express
- 30. Visual Studio Solución grande
He añadido la etiqueta '[visual-C++]' pues creo que la bandera '/ MP' es específico para el compilador de VC++. A partir de este –