16

Tengo una solución con menos de 100 proyectos en ella, una combinación de C++ y C# (principalmente C#). Cuando se trabaja en VS2005, el conjunto de trabajo de Visual Studio es considerablemente más pequeño que el de VS2010.Visual Studio 2010: cómo reducir su huella de memoria

Me preguntaba si hay algunas cosas que se pueden desactivar, por lo que puedo desarrollar en VS2010 en el sistema operativo de 32 bits sin quedarse sin memoria.

+0

Gracias por mirar. FYI, los binarios de SQL también son conscientes de las direcciones de memoria grandes. Mi pregunta es específicamente sobre el desarrollo con soluciones grandes en 32 bits. – GregC

+1

Luego me referiría a la respuesta de Jared. IMO (sin ofender) 100 proyectos en una solución es pura locura. –

+1

Hmm, una vez más, ¿hay algo en VS2010 que se pueda apagar para obtener una huella de memoria más liviana? – GregC

Respuesta

11

Puede intentar usar el Solution Load Manager. Le permitirá marcar algunos de los archivos de proyectos como carga bajo demanda o no cargar en absoluto. Eso puede ayudar.

4

Lo mejor que puede hacer es dividir su solución. Visual Studio no fue diseñado para manejar tantos proyectos en la misma solución y sí como resultado. Dividir su solución en 5 diferentes mejorará las cosas.

+0

No es cierto en cuanto al sistema operativo. Un sistema operativo de 64 bits puede dar a los procesos de 32 bits mucho más VM que un proceso de 32 bits. http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx –

+0

@Dave es cierto que una aplicación diseñada para aprovechar puede. No creo que Visual Studio haga esto. – JaredPar

+2

@Jared: Para comprobarlo, ejecuté dumpbin/headers en devenv.exe y confirmé que Visual Studio * puede * acceder a> 2GB, ya que la etiqueta "La aplicación puede manejar direcciones grandes (> 2GB)" está configurada. –

2

Si está en XP, la actualización a Vista o Windows 7 lo ayudará ya que usa WPF. Puede reducir la huella de memoria de la representación de la interfaz de usuario que, de otro modo, tendría que usar el modo de compatibilidad.

+7

La actualización a Windows 7 ayudará. Vista, no tanto. Hicieron mejoras radicales a la utilización de la memoria de la pila de gráficos en Windows 7.En realidad, imaginemos que Vista nunca sucedió. –

5

Un OS should help you out a bit here de 64 bits, si obtienes más de 4 GB de RAM física. Un sistema operativo de 64 bits puede proporcionar procesos de 32 bits con una memoria virtual completa de 4 GB, mientras que un sistema operativo de 32 bits solo puede proporcionar 2 o 3 gigas en el mejor de los casos, según cómo inicie el sistema operativo.

Dicho esto, 100 proyectos es un archivo de solución bastante grueso. Tal vez ahora sería un buen momento para reexaminar esa decisión ...

EDIT: Ejecución de dumpbin/cabeceras según lo prescrito en el artículo para devenv.exe regresa:

File Type: EXECUTABLE IMAGE 

FILE HEADER VALUES 
      14C machine (x86) 
       4 number of sections 
     4BA1FAB3 time date stamp Thu Mar 18 06:04:35 2010 
       0 file pointer to symbol table 
       0 number of symbols 
       E0 size of optional header 
      122 characteristics 
        Executable 
        Application can handle large (>2GB) addresses 
        32 bit word machine 

Así que eso indicaría que un cuadro de x64 con> 4 GB de RAM probablemente mejorará tu experiencia. Debe tener hasta el doble de VM disponible para Visual Studio en un sistema operativo de 64 bits ...

+0

Esto suena como una buena solución, y definitivamente nos dirigimos por ese camino. Una cosa a tener en cuenta: desactivé la reindexación automática del código fuente de C++, y eso pareció ayudar con el uso de la CPU y la huella de memoria. – GregC

+0

En herramientas-> opciones-> Editores de texto-> C++ -> Avanzado – GregC