Cuando verificamos la velocidad del enlazador, hemos identificado que la velocidad del disco es el factor más limitante. La cantidad de tráfico de archivos es enorme, especialmente debido a la información de depuración (simplemente verifique el tamaño del pdb).
Para nosotros la solución era:
- instalar enormes cantidades de memoria RAM, por lo que una gran cantidad de tráfico de archivos puede almacenar en caché (ir a 4 GB, o incluso más, si usted está en 64b OS). Nota: puede que tenga que cambiar la configuración del sistema para que el sistema es capaz de dedicar más memoria para la caché
- uso disco duro muy rápido (conexión entre varias de ellas como RAID puede ayudar aún más)
Tenemos También experimenté con SSD, pero el SSD que hemos probado tuvo un rendimiento de escritura muy lento, por lo tanto, el efecto neto fue negativo. Esto podría haber cambiado mientras tanto, especialmente con el mejor de los SSD.
Como primer paso, sugiero que inicie Process Explorer (o incluso Task Manager) y verifique la carga de su CPU y el tráfico de E/S durante la fase de enlace, para que pueda verificar si tiene CPU limitada o I/O limitado.
Dos minutos no suena demasiado. En el lado positivo, puedes pasar el tiempo para visitar SO. – dalle
Estoy de acuerdo en que dos minutos no es un problema demasiado grande, pero es más grande que una cantidad mágica de segundos (que creo que son alrededor de diez segundos) donde de hecho te preguntas qué podrías estar haciendo en lugar de esperar. Entonces pierde la concentración con cada vez que se vincula. Compare esto con, por ejemplo, TDD en C#. Como el tiempo de enlace es negligente, permanece en el flujo. Sería genial si pudiéramos tener esos ciclos ajustados con C++ también. –
¿Quizás podría intentar solucionar más de un error en cada ciclo de edición/compilación/depuración? :-) – paxdiablo