Pregunta

Acabo de empezar a usar Boost 1.36. Estas bibliotecas serían muy útiles para reducir la cantidad de código necesario en el proyecto de software C ++ no administrado en el que estoy trabajando.

Sin embargo, cuando intenté usar estas bibliotecas mis tiempos de compilación se multiplicaron por diez. Esto compensaría bastante las ganancias de productividad que obtendría al usar la biblioteca.

Estoy usando un Intel Dual Core de 3GHz con 2GB de RAM y VS 2003.

Hay un fragmento del código que agregué.

#include "boost/numeric/ublas/matrix.hpp"   
#include "boost/numeric/ublas/vector.hpp"  
#include "boost/numeric/ublas/matrix_proxy.hpp"  

typedef ublas::bounded_matrix <long double,NUM_OF_COLUMNS,NUM_OF_CATEGORIES,ublas::row_major> Matrix;  
typedef ublas::bounded_vector <long double,NUM_OF_COLUMNS> Vector;  

void Print (const Matrix & amp; cantidad)
{

Vector total;

total.clear();
for (int category = 0; category < NUM_OF_CATEGORIES; category++)
{
    PrintLine(ublas::row(amount, category));
    total += ublas::row(amount, category);
}

PrintLine(total);   

}

¿El problema con VS 2003?
Sé que VS 2008 es más rápido, pero la actualización será difícil de vender.
¿Es justo que Boost está optimizado para tiempos de ejecución rápidos y no tiempos de compilación rápidos? ¿Estoy usando la biblioteca Boost de manera subóptima?
¿O simplemente estoy usando la herramienta incorrecta para el trabajo?

¿Fue útil?

Solución

¿Has probado con encabezados precompilados? ¿Eso incluye los encabezados boost en StdAfx.h o el archivo de encabezado que use para los encabezados precompilados?

Otros consejos

¿Intentó Incredibuild ? Te permitirá distribuir tu compilación en múltiples computadoras. Lo he visto usado con éxito.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top