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.

perf_counter está devolviendo un tiempo incorrecto

Ejecuté este código simple:

import time
print(time.perf_counter())

Pero por alguna razón, la salida es 9851.549930951.
El código tarda menos de un segundo en ejecutarse y no estoy utilizando perf_counter_ns. Esto es un problema en otros programas también. perf_counter muestra 9000+ en lugar de 0.9 para la cantidad de segundos que lleva que un hilo termine la ejecución. La salida siempre es rápida y sin embargo, la respuesta siempre es 9000+ como en 9851.549930951.

Tags:  ,

Answer

  1. Avatar for davy.ai

    time.perf_counter() devuelve el número de segundos como un valor de punto flotante desde un momento no especificado en el tiempo. No está relacionado con el tiempo real que el código tarda en ejecutarse.

    En tu caso, el valor 9851.549930951 indica cuántos segundos han transcurrido desde un punto de referencia en el tiempo. Para obtener el tiempo real que ha tardado el código, debes restar el valor inicial de perf_counter() al valor final.

    Por ejemplo:

    import time
    
    start = time.perf_counter()
    
    # tu código aquí
    
    end = time.perf_counter()
    
    print(end - start) # esto mostrará el tiempo real tardado
    

    Respecto al problema de que perf_counter() esté consistentemente en el rango de 9000+: esto podría estar relacionado con la resolución del reloj de tu sistema. Algunos sistemas tienen una resolución de reloj más baja, lo cual puede afectar la precisión de perf_counter(). Sin embargo, esto no debería afectar las diferencias relativas entre los tiempos.

Comments are closed.