¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
Exportar (0) Imprimir
Expandir todo
Importante Es posible que este documento no represente los procedimientos recomendados para el desarrollo actual. Puede que los vínculos a las descargas y otros recursos ya no sean válidos. Encontrará aquí la versión que se recomienda en la actualidad.

Optimizar el código

Actualización: noviembre 2007

La optimización es el proceso de ajuste del rendimiento de un archivo ejecutable con el fin de obtener el mejor rendimiento y el menor tamaño del código. Visual C++ proporciona los siguientes mecanismos para optimizar el código:

Para ver detalles sobre cómo se puede mejorar el rendimiento de un programa mediante buenas técnicas de programación, vea:

Como la optimización modifica el código creado por el compilador, es mejor optimizar el código después de haberlo probado y depurado completamente. De esta manera, puede depurar código muy parecido al código fuente escrito y olvidarse de los efectos de la optimización. Tras aplicar optimizaciones, deberá volver a probar el código. A veces, después de aplicar optimizaciones el código mostrará un comportamiento diferente. En ese caso, puede que tenga que depurar código optimizado. Vea también Problemas comunes al crear versiones de lanzamiento para obtener más información

A veces el código optimizado proporciona respuestas diferentes, no por un error, sino porque la optimización cambia el orden de los cálculos, por lo que los resultados serán un poco diferentes debido a los límites de la precisión de punto flotante.

Puede que también vea algunos mensajes de advertencia adicionales al compilar el código con optimización. Éste es el comportamiento normal, ya que algunas advertencias sólo están relacionadas con el código optimizado. Si las tiene en cuenta, podrá evitar la mayoría de los problemas relacionados con la optimización.

Paradójicamente, a veces la optimización de un programa, realizada para aumentar su velocidad de ejecución, puede hacer que el código se ejecute de forma más lenta, ya que algunas optimizaciones realizadas para ganar velocidad aumentan el tamaño del código. La inclusión de funciones inline, por ejemplo, elimina la sobrecarga de llamadas a funciones pero, si se incluye demasiado código en línea, el programa puede crecer tanto que hará que aumente el número de errores de página de la memoria virtual. Así, la velocidad ganada al eliminar las llamadas a funciones puede perderse a causa del intercambio de memoria. Por esta razón, es conveniente medir el rendimiento del programa antes y después de aplicar las optimizaciones. Para obtener directrices generales sobre la mejor forma de optimizar la aplicación, vea Procedimientos recomendados para la optimización.

Si una sección del código origina errores o ralentiza la ejecución a causa de la optimización, puede utilizar la directiva pragma optimize para desactivar la optimización en esa sección. Limite la sección de código con dos directivas pragma, de la forma siguiente:

#pragma optimize("", off)
// some code here 
#pragma optimize("", on)

Si desea consultar otros temas sobre optimización, vea:

Para obtener más información sobre cómo reducir el tiempo de carga de métodos DLL, vea el artículo " Optimizing DLL Load Time Performance ", que se encuentra en la columna " Under the Hood " de "MSDN Magazine", en MSDN Library.

Para obtener más información sobre cómo minimizar la paginación en aplicaciones, vea los artículos "Improving Runtime Performance with the Smooth Working Set Tool" e "Improving Runtime Performance with the Smooth Working Set Tool—Part 2", que se encuentran en la columna "Bugslayer" de "MSDN Magazine ", en MSDN Library.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft