es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El tiempo total efectivo de una función invocada es mayor que el de la función que la invoca en Intel VTune.

Tengo una aplicación de multiprocesamiento y cuando ejecuto el perfilador vtune en ella, bajo la pestaña de llamante/llamado, veo que el Tiempo de CPU: Total - Tiempo efectivo de la función llamada es mayor que el Tiempo de CPU: Total - Tiempo efectivo de la función llamante.

Ejemplo:
Función llamante – A

Función llamada – B (nadie llama a B excepto A)

Función Tiempo de CPU: Total
Tiempo efectivo
A 54%
B 57%

Mi entendimiento es que Tiempo de CPU: Total es la suma de Tiempo de CPU: propio + tiempo de todos los llamados a esa función. Según esta definición, ¿no debería ser mayor el Tiempo de CPU: Total de A que el de B?

¿Qué me estoy perdiendo aquí?

Tags:  ,

Answer

  1. Avatar for davy.ai

    En el escenario proporcionado, es posible que la función callee B esté ejecutándose durante un período de tiempo más prolongado y tenga un mayor uso de la CPU en comparación con la función caller A. Esto podría resultar en que el tiempo efectivo de la función callee B sea mayor que el de la función caller A, incluso aunque ninguna otra función lo llame excepto la función A.

    También es importante tener en cuenta que el tiempo efectivo se refiere al tiempo real que tarda la función en ejecutarse y no incluye el tiempo que se pasa esperando otros recursos, como E/S de disco o solicitudes de red.

    Por lo tanto, es posible que la función callee B tenga un tiempo total de CPU más alto que la función caller A si se está ejecutando durante un período de tiempo más prolongado y utilizando más potencia de CPU.

Comments are closed.