[Python-es] como saber cuanto tarda en ejecutarse una funcion?

xiao xiong mao panda rojo ailurus.fulgens en hotmail.com
Jue Ago 15 08:20:09 CEST 2013


gracias a todos. ya pude comprobar que mi función no tarda tanto como penséencontré unos bugs.fue un error de indentacion.gracias por sus sugerencias. seguro me serán útiles para optimizar mi código.

Date: Wed, 14 Aug 2013 19:15:25 +0200
From: soft.sirius en gmail.com
To: python-es en python.org
Subject: Re: [Python-es] como saber cuanto tarda en ejecutarse una funcion?

Hola
Es una lástima que Psyco ya no funcione en las nuevas versiones de Python, antes con sólo importarlo y llamarlo, el programa se volvía varias veces más rápido.

Saludos


El 14 de agosto de 2013 18:23, Ricardo Azpeitia Pimentel <razpeitia en gmail.com> escribió:

Puedes usar el modulo timeit (en la documentación hay suficientes ejemplos)



http://docs.python.org/2/library/timeit.html



Creo que 10ms es bastante tiempo. Pero en caso que tu funcion tarde

mas en ejecutarse puedes hacer varias cosas:



1. Optimizar tu código

2. Escribir esa parte en C

3. Los datos que recibas los puedes ir poniendo en un queue y tener

workers que consuman esa información (de manera asincrónica).





El día 14 de agosto de 2013 02:52, monoBOT <monobot.soft en gmail.com> escribió:

> Yo para eso uso una función decoradora,

> http://monobotblog.alvarezalonso.es/archives/1083 aunque la salida es en

> segundos.

>

> Deberás ajustar la precisión para que te lo de en milisegundos

> http://docs.python.org/3.2/library/datetime.html#timedelta-objects

>

> Saludos

>

>

> El 14 de agosto de 2013 04:43, xiao xiong mao panda rojo

> <ailurus.fulgens en hotmail.com> escribió:

>>

>> trabajo en un programa que lee el puerto serial, toma unos 12 bytes,

>> realiza una larga función y lee el serial otra ves, en un bucle infinito.

>> ya que recibe nuevos datos vía serial cada 10 mili-segundos mi función

>> debe terminar antes.

>> creo que la función esta tardando mucho mas en ejecutarse.

>>

>> seguramente alguno ha hecho esto antes.

>> alguna forma sencilla de saber cuanto le toma a la función completarse?

>> con arduino uso el método micros() que cuenta los micro-segundos que lleva

>> encendido el microcontrolador

>>

>> unsigned long tt = micros();

>> aLongProcess();

>> Serial.println( micros()-tt );

>>

>> no hay problema si consigo los resultados en micro o mili segundos

>> gracias

>>

>>

>> _______________________________________________

>> Python-es mailing list

>> Python-es en python.org

>> http://mail.python.org/mailman/listinfo/python-es

>> FAQ: http://python-es-faq.wikidot.com/

>>

>

>

>

> --

> monoBOT

> Visite mi sitio(Visit my site): monobotblog.alvarezalonso.es

>

> _______________________________________________

> Python-es mailing list

> Python-es en python.org

> http://mail.python.org/mailman/listinfo/python-es

> FAQ: http://python-es-faq.wikidot.com/

>

_______________________________________________

Python-es mailing list

Python-es en python.org

http://mail.python.org/mailman/listinfo/python-es

FAQ: http://python-es-faq.wikidot.com/



-- 
Nota: Por problemas con el e-mail. Puede que recibas de nuevo este mensaje
 en un tiempo.


_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/ 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20130815/3bbe19b0/attachment.html>


Más información sobre la lista de distribución Python-es