Nuestro equipo de desarrollo utiliza hardware REALMENTE rápido ... $ 6,000 + por máquina de desarrollo a partir de enero de 2010.
La diferencia MÁS GRANDE que cualquier componente hizo para nosotros (probamos una cosa a la vez) fue agregar E / S realmente rápidas y poner todo nuestro código fuente en ese hardware. Pasamos por unas 10 configuraciones diferentes (varios RAID con VRaptors, SSD, etc.) y el mejor elemento que se nos ocurrió fue el disco IOXtreme de Fusion IO.
http://www.fusionio.com/products/ioxtreme/
Necesitará mucha RAM, ya que el controlador "bloquea" la RAM en grandes cantidades cuanto menor sea el tamaño del bloque formateado en la unidad.
Esos chicos malos no son volátiles y son SUPER rápidos tanto en lecturas aleatorias como en escrituras. Por el dinero, no pudimos hacer que nuestras plataformas se compilen más rápido.
Programaré una compilación muy rápido para darte una idea ...
OK, nuestra solución maestra con TODO el código actualmente tiene 37 proyectos y un total de 92,281 líneas de código "ejecutable" de acuerdo con los resultados de métricas del código de Visual Studio. Compilarlo con la configuración del desarrollador DEFAULT C # en el IDE (solo ha recargado todas las configuraciones para que pueda comparar objetivamente con los valores predeterminados si lo desea) toma 22 segundos. En una máquina idéntica con 3 Velociraptors en RAID 5 tarda 29 segundos, por lo que un aumento del 24%.
Esa prueba se ejecutó con SOLUCIÓN LIMPIA seguida de SOLUCIÓN RECONSTRUCCIÓN, por lo que debería haber sido una compilación completa.
No los conozco a todos, pero compilo con frecuencia después de cambios pequeños a medianos. Probablemente en promedio 80-100 veces por día. Eso significa que SOLO la unidad IOXtreme me está ahorrando 9.3 minutos por día. A $ 70 por hora (nuestra tasa de desarrollo promedio, aproximadamente) eso es $ 10 por día, por desarrollador. Entonces, la cosa tarda unos 90 días en pagarse. No está mal en realidad ... son libres en este punto.
Además, REALMENTE siento firmemente que los tiempos de compilación nunca deben superar el umbral de distracción de un desarrollador. Hazme esperar 2 minutos ... en Wiki o Google o Youtube perdiendo el tiempo. Eso es mucho más difícil de medir.
OK, entonces todos los equipos se ven así:
Windows 7 Professional 12GB RAM 2x Quad Core Xeons (E5504) @ 2.00 GHz. Total de 8 GHz por máquina. Controladores RAID Highpoint 2320 Servidor Mobo (Olvidé el modelo, lo siento) 3x Velociraptors en RAID 5, dividido en unidades C, D y E. Windows en C, programas en D, carpetas de datos de usuario en E. IO Xtreme Drive como Drive F. Todo el código (nuestras DLL y las de terceros) está en Drive F.
¡La mejor de las suertes para todos ustedes!
Aquí hay una pregunta similar: qué componentes de PC tienen el mayor impacto en sus tiempos de compilación para Visual Studio .
El mayor cuello de botella será la unidad de disco al hacer compilaciones en Visual Studio. A partir de Visual Studio 2008, también puede aprovechar múltiples procesadores o múltiples núcleos durante sus compilaciones. Si fuera yo, iría con lo siguiente:
Otras lecturas:
fuente
Yo uso un ramdrive, de Dataram . Visual Studio no utiliza todos los núcleos de mi PC (8 Core), así que lo que hice fue formatear el disco RAM con NTFS y la compresión activada. El código fuente tiene una alta relación de compresión, por lo que una memoria RAM de 2 GB proporciona al menos 4 GB de almacenamiento. ¡También puede activar el guardado automático de ramdrive! Este método le brinda el IO más rápido, incluso más rápido que el SSD. Sin embargo, notará que cuando el IO no es el cuello de botella, VS es muy pobre en el uso de múltiples núcleos.
fuente