!qfTHdfJVUSCjrvSsUo:matrix.org

Python Científico

3951 Members
Python + Ciencia en español30 Servers

Load older messages


SenderMessageTime
20 Oct 2017
@telegram_82843442:t2bot.ioPablo (Telegram)no digo nada muy sofisticado, pero flags como -march=native [y, en general, las opciones x86 de gcc: https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html] hacen mucha diferencia en speedup22:24:02
@telegram_82843442:t2bot.ioPablo (Telegram)no sé cuáles son los flags por defecto del paquete cuando se instala22:24:23
@telegram_322280459:t2bot.ioVital (Telegram) Reply to Pablo (Telegram):
no digo nada muy sofisticado, pero flags como -march=native [y, en general, las opciones x86 de gcc: https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html] hacen mucha diferencia en speedup

Nunca había escuchado estas opciones! Para python usando numpy?

22:25:59
@telegram_82843442:t2bot.ioPablo (Telegram)nono, numpy es una librería que está escrita en c [fortran en realidad, pero es lo mismo] y cuando la instalás tenés que compilarla22:26:50
@telegram_2397373:t2bot.ioJuan Luis Cano (Telegram) Reply to Pablo (Telegram):
nono, numpy es una librería que está escrita en c [fortran en realidad, pero es lo mismo] y cuando la instalás tenés que compilarla

Ojo, numpy no tiene Fortran

22:27:41
@telegram_82843442:t2bot.ioPablo (Telegram)si la instalás de tu distribución (por ejemplo, apt-get en debian/ubuntu, etcétera), ya te viene el binario. ese binario alguien lo compiló de la forma más genérica, entonces lo más probable es que no aproveche a tope la capacidad de tu procesador. cuando la instalás a partir de pypi, se baja las fuentes y compila el binario para *tu* arquitectura, lo cual hace que corra más rápido22:28:56
@telegram_322280459:t2bot.ioVital (Telegram)Y puedes recompilarlo usando estas flags para que vaya más rápido ( según tu hardware)?22:29:07
@telegram_82843442:t2bot.ioPablo (Telegram) Reply to Juan Luis Cano (Telegram):
Ojo, numpy no tiene Fortran

no, ahora ya no. es todo c. igual siempre podés usar lapack y hacer los bindings a mano hacia las rutinas en asm para tu procesador y aprovechar la vectorización. es lejos la mejor opción, pero requiere un poco de esfuerzo

22:30:05
@telegram_82843442:t2bot.ioPablo (Telegram) Reply to Vital (Telegram):
Y puedes recompilarlo usando estas flags para que vaya más rápido ( según tu hardware)?

claro, podés bajarte las fuentes y compilarlo vos "a mano" [o sea, editando el CMake/Makefile/loquetenga. en el caso de numpy seguro es un setup.py horrible e ineditable :P]

22:31:42
@telegram_275626245:t2bot.ioGera Seba (Telegram) joined the room.22:33:51
@telegram_275626245:t2bot.ioGera Seba (Telegram)si tenes una distribución libre y queres instalar numpy, tenes que escribir en la terminal:22:33:51
@telegram_275626245:t2bot.ioGera Seba (Telegram)sudo apt-get install python-numpy22:33:53
@telegram_322280459:t2bot.ioVital (Telegram) Reply to Pablo (Telegram):
claro, podés bajarte las fuentes y compilarlo vos "a mano" [o sea, editando el CMake/Makefile/loquetenga. en el caso de numpy seguro es un setup.py horrible e ineditable :P]

Ok... Y con anaconda hay forma de declararlo durante la instalación?

22:36:41
@telegram_82843442:t2bot.ioPablo (Telegram)uh realmente de anaconda no sé nada22:57:01
@telegram_82843442:t2bot.ioPablo (Telegram) Reply to Gera Seba (Telegram):
sudo apt-get install python-numpy

sí. esto te instala los binarios sin ningún tipo de optimización.

22:57:14
@telegram_9268646:t2bot.ioDavid (Telegram) Reply to Pablo (Telegram):
sí. esto te instala los binarios sin ningún tipo de optimización.

a nivel empresa se opta por esto por que no falla

22:58:31
@telegram_82843442:t2bot.ioPablo (Telegram)depende de qué empresa 😂22:58:53
@telegram_9268646:t2bot.ioDavid (Telegram)compilar algo muchas veces da mucho por culo pero despues es mas eficiente22:59:02
@telegram_9268646:t2bot.ioDavid (Telegram)esta mas adaptado22:59:07
@telegram_82843442:t2bot.ioPablo (Telegram)y de quién lo compile, obvio 😎22:59:08
@telegram_82843442:t2bot.ioPablo (Telegram)yo, por ejemplo, si lo compilo... hago desastres22:59:18
@telegram_82843442:t2bot.ioPablo (Telegram)jajaja22:59:19
@telegram_9268646:t2bot.ioDavid (Telegram) Reply to Pablo (Telegram):
yo, por ejemplo, si lo compilo... hago desastres

yo a raiz de un compañero de trabajo , que el por compilacion

22:59:41
@telegram_9268646:t2bot.ioDavid (Telegram)aprendi como funciona esto22:59:58
21 Oct 2017
@telegram_98592817:t2bot.ioEllaQuimica (Telegram)Image_1508553383483.jpg
Download Image_1508553383483.jpg
02:36:23
@telegram_59004152:t2bot.ioJavi Blasco (Telegram) Reply to EllaQuimica (Telegram):

Pensé que eran 10 días de pycon xDD

08:38:46
@telegram_59004152:t2bot.ioJavi Blasco (Telegram)@pablogsal, interesante la discusión, que acabo de leer del tirón. La próxima vez escribe el ejemplo antes, que tardé un rato en saber qué proponías! Por cierto, functools tiene ya un memoizador, no? El rlu_cache (08:41:29
@telegram_59004152:t2bot.ioJavi Blasco (Telegram)https://docs.python.org/3/library/functools.html08:41:34
@telegram_59004152:t2bot.ioJavi Blasco (Telegram)Alguna razón para no tirar de ese?08:41:44
@telegram_12934778:t2bot.ioPablo (Telegram)En mi opinión resuelven problemas distintos aunque con cierta colisión. Si usas rlu_cache tienes que llamar a lo que sea como una función, no como un atributo.13:55:43

There are no newer messages yet.


Back to Room ListRoom Version: