[pyar] impacto de la performance usando dict() contra {} en CPython 2.7
Ezequiel Garcia
elezegarcia en gmail.com
Vie Nov 16 12:05:08 ART 2012
2012/11/16 Facundo Batista <facundobatista en gmail.com>:
> 2012/11/14 Jan Gallardo <koke en lavabit.com>:
>
>> Interezante
>> time python -c "{'uno':1}"
>>
>> real 0m0.030s
>> user 0m0.010s
>> sys 0m0.017s
>>
>> time python -c "dict(uno=1)"
>>
>> real 0m0.035s
>> user 0m0.033s
>> sys 0m0.000s
>
> Esta no es manera de medir cuanto tarda un pequeño snippet de código,
> ya que tenés mil variables que se te meten en el medio (por ejemplo,
> cuan cacheado está el binario de Python, que lo estás levantando desde
> cero y mezclando los números).
>
Si... yo pensé lo mismo.
Por ejemplo, si los tests fueron hechos uno detrás de otro es seguro
que la segunda vez
el tiempo "sys" (dentro del kernel) sea cero.
Eso se debe (en parte) a que todas las librerías están en el dentry
cache del kernel.
Otra cosa para mencionar es que, si uno quiere hacer tests con
cualquier lenguaje interpretado,
e.g. python, debe medir el tiempo *dentro del intérprete*, porque el
tiempo de inicio de una maquina
virtual podría ser significativo.
usar "$ time foo" sirve para medir wall-time, el tiempo de pared, de
forma chabacana y para una prueba rápida.
En fin.. dije lo mismo que dijo Facundo :P
Ezequiel
More information about the pyar
mailing list