Monitorear el tiempo de ejecución y el uso de la memoria en VIs de LabVIEW

Actualizado el Sep 22, 2023

Reportado en

Software

  • LabVIEW

Detalles del problema

LabVIEW se congela después de que haya estado ejecutando mi programa por un tiempo. ¿Cómo puedo saber si esto está relacionado con un problema de memoria?
Me gustaría ver cuánto tiempo tarda en ejecutarse mi VI y cuánta memoria se utiliza en mi aplicación.

Solución

LabVIEW tiene una herramienta integrada llamada VI Profiler que proporciona información sobre el tiempo y la memoria para sus VIs. El procedimiento para utilizar esta herramienta es el siguiente:
  1. Detenga cualquier VI que se esté ejecutando actualmente.
  2. Abra la ventana Show Buffer Allocations seleccionando Tools >> Profile >> Show Buffer Allocations y seleccione los elementos de su VI para los que desea monitorear las asignaciones.
  1. Abra la ventana Profile Performance and Memory seleccionando Tools >> Profile >> Performance and Memory .
  2. Coloque las marcas de verificación en las casillas que desea monitorear y haga clic en el botón Start para recopilar información.
  3. Ejecute el VI que desea analizar. Puede volver a la ventana de Profile en cualquier momento y hacer clic en el botón Snapshot para obtener una instantánea acumulativa de las estadísticas de tiempo.
  1. Detén tu VI. Después de hacer clic nuevamente en el botón Snapshot , verá información del tiempo para todos los Vis, incluido el VI principal.
  1. Haga clic en cualquier encabezado de columna para ordenar por esa columna.
  2. Haga clic en el botón Stop para finalizar la sesión de perfil.

Información adicional

  • La recopilación de información sobre el uso de la memoria del VI requiere una sobrecarga que puede crear estadísticas de tiempo confusas. Para obtener la información de tiempo más precisa, no recopile detalles de tiempo y memoria simultáneamente.
  • Tomar un Snapshot no afecta las estadísticas de tiempo finales, sin embargo, su VI principal reportará información de tiempo igual a 0 hasta que su aplicación haya terminado de ejecutarse.
  • El tiempo de los VI no necesariamente corresponde a la cantidad de tiempo transcurrido que tarda un VI en completarse. Esto se debe a que un sistema de ejecución multiproceso puede intercalar la ejecución de dos o más VIs. Además, existe una cierta cantidad de sobrecarga no atribuida a ningún VI, como la cantidad de tiempo que tarda un usuario en responder a un cuadro de diálogo, o el tiempo empleado en una función de Wait en un diagrama de bloques, o el tiempo empleado en verificar clics del mouse.
  • Para acceder a la ventana de memoria y rendimiento del perfil utilizando LabVIEW 7.1 o anterior, navegue a Tools »Advanced» perfil de VIs.