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 habilitar el perfilado basado en el tiempo para Intellij Async Profiler?

Me gustaría medir cuánto tiempo necesita mi método de prueba; pero cuando habilito el perfilado basado en tiempo utilizando el tipo de evento como “wall” no obtengo el gráfico de llamas (o gráfico de llamadas) adecuado para el consumo de tiempo.

Esperado:
Todos los métodos waitX se llaman con anchos relativos de rectángulo en el “Flame Graph” o en % en la pestaña del “Call Tree”.

Real:
Sólo se muestra el wait50s en el gráfico de llamas y su anchura permanece igual independientemente del tiempo de espera que utilice.

Opciones del agente: event=wall,interval=1ms,event=alloc

Código de muestra:

 public void wait1s() throws InterruptedException {
        Thread.sleep(1000);
    }

public void wait10s() throws InterruptedException {
    Thread.sleep(10000);
}

public void wait50s() throws InterruptedException {
    Thread.sleep(50000);
}

public void testTemp() throws Exception {
    logger.info("Starting test");
    for(int i=0;i<1;i++) {
        this.wait1s();
        this.wait10s();
        this.wait50s();
    }
    logger.info("Finished test");
}
Tags:  ,

Answer

  1. Avatar for davy.ai

    El problema de no obtener un tiempo de consumo adecuado en el gráfico de llama o en el árbol de llamadas al habilitar la creación de perfiles basada en el tiempo usando event=wall se puede resolver aumentando el tiempo de intervalo. El tiempo de intervalo actualmente utilizado es de 1 ms, lo cual puede no ser suficiente para capturar los tiempos de espera en el código de ejemplo proporcionado.

    Intenta aumentar el tiempo de intervalo para capturar los tiempos de espera más largos. Por ejemplo, establecer interval=10ms puede proporcionar mejores resultados. Además, asegúrate de que el perfilador esté recopilando datos para el método correcto, revisando el árbol de llamadas y verificando que los métodos correctos estén siendo perfilados.

Comments are closed.