02:54 <alain_afpy> ERROR membres(2) HTTPConnectionPool(host='www.afpy.org', port=80): Request timed out. (timeout=10)
        02:57 <alain_afpy> INFO membres fixed
        08:27 <foxmask> bonjello
        12:30 <alain_afpy> ERROR www(2) timed out
        12:33 <alain_afpy> INFO www fixed
        14:49 <NelleV> haypo: toi qui est bon en C, tu veux pas réimplémenter la fonction loadtxt de scipy en C pour qu'elle soit rapide ?
        14:49 <NelleV> c'est une fonction qui permet de charger une matrice
        14:52 <yota> Rapide ? Hey  tu fais du Python
        14:55 <haypo> NelleV: fais voir le code
        15:51 <tshirtman> NelleV: pourquoi ne pas cythoniser juste? ça peut être aussi rapide que du C, et j'imagine que scipy a déjà du cython dedans non?
        15:51 <tshirtman> souvent cythoniser une fonction, c'est juste ajouter quelques cdef et quelques types dans la signature
        15:52 <tshirtman> c'est celle de numpy en fait? https://github.com/numpy/numpy/blob/v1.9.1/numpy/lib/npyio.py#L631
        15:57 <tshirtman> (redéfinir un packet de fonction dans une fonction, c'est probablement pas terrible pour les perfs, si y'a besoin de passer des paramètres du context, pourquoi ne pas utiliser partial?
        15:57 <tshirtman> )
        15:59 <gawel> parcequ'une matrice partiel àa sert à rien
        15:59 <gawel> ça*
        16:00 <tshirtman> je veux dire, définir les fonctions en dehors, avec 1 ou 2 params en plus, et les précharger avec partial, pour usage ultèrieur dans la fonction principale
        16:00 <tshirtman> (si c'était une blague, j'ai pas compris :X)
        16:05 <feth> patrice marcel ?
        16:06 <haypo> NelleV: ah c'est https://github.com/numpy/numpy/blob/v1.9.1/numpy/lib/npyio.py#L631 ?
        16:07 <haypo> NelleV: la fonction semble assez complexe. faudrait lancer un profiler dessus pour identifier les lignes qui prennent du temps
        16:07 <haypo> la dernière fois que j'ai optimisé un truc, j'ai passé 2h à réécrire un parseur utilisant des regex pour utiliser des opérations simples à la place
        16:08 <haypo> j'ai gagné 0% environ (à vue de nez)
        16:08 <haypo> en fait, y'avait un algo en O(n) avec n qui était *grand* (1 million ou bien plus)
        16:08 <haypo> un truc vraiment con genre liste.remove(item)
        16:08 <haypo> j'ai remplacé par un algo en O(1) et paf, ça passe de 4 minutes à 8 secondes, han
        16:09 <tshirtman> nice :)
        16:10 <haypo> enfin, "algo"... j'ai remplacé le type liste par un type dict ou set, hein, rien d'hallucinant
        16:11 <tshirtman> ^^
        16:28 <yota> bah c'est souvent ca l'optim