Compartir a través de


¿Cuál es el costo de rendimiento del seguimiento de software?

En general, el costo de rendimiento del seguimiento de software es muy pequeño. El código se minimiza, los búferes se administran de forma eficaz y los mensajes se escriben en formato binario. Además, el formato de los mensajes de seguimiento, que es una purga de rendimiento grande, se aplaza hasta que el usuario elige dar formato y mostrar los mensajes de seguimiento.

Cuando se usan macros de seguimiento de software de WPP para agregar seguimiento de software a un controlador, casi no hay ningún costo de rendimiento en absoluto, a menos que el proveedor esté habilitado para una sesión de seguimiento.

Las macros de WPP equivalen a tres comprobaciones condicionales dentro de una instrucción If en el código de seguimiento de software. Estas comprobaciones impiden que se generen mensajes de seguimiento a menos que el proveedor esté habilitado. Las macros de WPP generan código de la forma siguiente:

If (WPP_CHECK_INIT && WPP_LEVEL_FLAGS_ENABLED) {
    Call trace_message_routine
}

En este código generado, WPP_CHECK_INIT consta de una comprobación condicional. WPP_LEVEL_FLAGS_ENABLED consta de una comprobación condicional, si solo tiene un filtro de nivel o marca. De lo contrario, WPP_LEVEL_FLAGS_ENABLED consta de dos comprobaciones condicionales.

Para obtener más información sobre cómo excluir la WPP_CHECK_INIT comprobación para mejorar el rendimiento, vea ¿Puedo optimizar las comprobaciones condicionales que producen las macros de WPP antes del seguimiento?.

Nota

Puede haber algún costo de rendimiento si usa métodos distintos del seguimiento de software de WPP para implementar el seguimiento de software en el controlador. El efecto depende del método de implementación.