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.

¿Cómo obtener el contador de rendimiento `dtlb_load_misses.miss_causes_a_walk` en una máquina virtual?

Estoy tratando de obtener algunos contadores de rendimiento de TLB en una máquina virtual (máquina ESXi) utilizando el comando perf, pero siempre devuelve cero. Noté que la opción virtualize performance counters está desactivada en la VM, lo que hace que perf siempre devuelva cero.

Dado que el proveedor no puede habilitar la opción virtualize performance counters, ¿cómo puedo obtener el valor dtlb_load_misses.miss_causes_a_walk en esta VM?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener dtlb_load_misses.miss_causes_a_walk en la máquina virtual sin poder activar virtualize performance counters, se pueden probar las siguientes opciones:

    1. Utilizar una herramienta alternativa de monitoreo de rendimiento: perf podría no ser la única herramienta disponible para el monitoreo de rendimiento en un sistema Linux. Otras herramientas, como sar, top, vmstat o incluso scripts personalizados, podrían utilizarse para monitorear los contadores de rendimiento de TLB. Estas herramientas podrían no proporcionar el mismo nivel de detalle que perf, pero podrían ser una alternativa viable.

    2. Utilizar una plataforma de virtualización diferente: Si la plataforma de virtualización actual (ESXi) no permite habilitar virtualize performance counters, otra plataforma, como KVM, podría ser una alternativa viable. KVM permite habilitar virtualize performance counters, lo que permitiría que perf recopile los contadores de rendimiento de TLB.

    3. Modificar el código de la aplicación: Si no es posible habilitar virtualize performance counters en la máquina virtual o cambiar a una plataforma de virtualización diferente, modificar el código de la aplicación podría ser una opción. Específicamente, se podría modificar el código para recopilar los contadores de rendimiento de TLB a nivel de aplicación, en lugar de depender del sistema operativo o la plataforma de virtualización para recopilar estos contadores. Este enfoque requeriría un profundo conocimiento del código de la aplicación y podría no ser factible para todas las aplicaciones.

Comments are closed.