Journal Pythran revient de SciPy2013

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
16
15
juil.
2013

Salut les réptiles,

Pythran est un compilateur Python vers C++ ciblé pour le calcul scientifique, dont je vous ai déjà parlé à de nombreuses reprises.

À la fin de l'épisode précedent, je partais pour les US et présenter mon bébé au monde entier. Voici donc mon carnet de notes virtuels.

Déjà il faut répéter ses présentations, sinon ça donne ça, où l'on voit que je ferais bien d'apprendre à me tenir droit…

Ensuite j'ai eu quelques (…)

Journal Pythran à Scipy2013 !

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
37
4
juin
2013

Ô joie, le compilo Pythran dont les évolutions sont suivies par une foule Linuxienne en délire, a droit de citer lors de la grand messe annuelle du Python scientifique, Scipy2013, plus exactement .

Un grand merci à vous tous qui répondez, critiquez, hurlez, piaillez dans les différents journaux pythranesques, ça m'aide beaucoup pour la motivation, et aussi pour améliorer les choses.

Comme le défi Pythran, c'est d'avoir de la perf en gardant la syntaxe Python, et vu que (…)

Journal avec Pythran, Numpy file comme le vent

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
46
5
avr.
2013

Salut mon petit journal,

je te tiens de temps en temps au courant des avancement de Pythran, ze convertisseur Python -> C++ dédié au calcul scientifique. La dernière fois que nous avons discuté, tu m'avais dit de repasser te voir quand je serais capable de supporter ce genre de calculs:

import numpy as np
n = 100000
b, c = np.ones(n), np.ones(n)
d = np.sqrt(b
(…)

Journal Pythran 0.2 : Python peut-il être aussi rapide que du C ?

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
19
17
fév.
2013

Salut petit journal, toi qui est fan de Pythran :-)
Mais oui, tu sais, ce traducteur Python -> C++ pour le prototypage d'algorithmes dans cette merveille d'expressivité et de concision qu'est le Python ! Sinon, je te renvoie à http://pythonhosted.org/pythran/ où tu trouveras un peu de matière à te mettre sous la dent.

Tu as sûrement déjà lu ces deux posts un peu vieux mais assez cocasses :

mais sais tu que Pythran commence à générer du code qui (…)

Journal Pythran : C++ pour les serpents

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
26
5
déc.
2012

Salut à toi, mon petit journal
Ça fait bien longtemps que je ne t'ai pas parlé de mon petit bébé cybernétique, Pythran.

Tu te rappelles de lui ? C'est un convertisseur d'un sous ensemble du langage Python vers C++11. L'idée est de mutiler légèrement le langage Python (hop, plus de classes) et d'ajouter des contraintes de typage statique pour générer un module natif optimisé à partir d'un module écrit en Python.

Sommaire

  • Résumé des épisodes Précédents
  • Optimisations statiques
  • Projet Euler
  • (…)

Journal pythran prépare sa mue

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
14
30
août
2012

SSS Ss SsSS SSs s [un serpent qui vous salue en morse, c'est pas banal!]

Comme tout animal à sang froid, Pythran a profité de l'été pour s'allonger sur un rocher et emmagasiner de la chaleur. Quand un humain s'adonne à cette activité, ce n'est pas très progressif, mais là ça a plutôt bien marché.

Petit résumé.

Tests Unitaires

Pythran repose sur unittest pour les tests unitaires. Un test consiste en
1. Une fonction écrite en python ;
2. des paramètres (…)

Journal Pyth(on|ran) + OpenMP ?

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
20
7
août
2012

Youpi [le monde est beau]

Vous n'êtes pas sans savoir que le parallélisme en mémoire partagé et python, c'est pas la joie. La faute à ce cher Gilles qui bride complètement le parallélisme. Les solutions alternatives se basent donc sur des processus lourds, comme inventorié dans cette excellente page.

Personnellement, j'aime bien utiliser les directives OpenMP pour paralléliser des applications natives. C'est concis, incrémental et non-intrusif.

Heureux papa du projet pythran, qui permet justement de traduire (…)

Journal Python et valeurs par défaut des paramètres

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
12
31
juil.
2012

Bonjooour les zamis [ bienvenue au pays trop mignon ]

Au cours de mes pérégrination pythranesques, j'ai découvert une fleur du langage python, que je m'empresse de partager.

D'après vous, qu'affiche la séquence suivante ?

def foo(a=list()): return a
foo().append(1)
foo().append(2)
print foo()

Et hop une manière détournée (et hideuse, elle n'a donc pas à sa place au pays trop mignon) d'avoir (…)

Journal pythran rampe

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
23
16
juil.
2012

Le titre « pythran est en marche » me paraissait bizarre pour un outil qui a trait aux serpents…

Dans ma folie bienheureuse, et faisant fi des avis pessimistes, j'ai tenté de passer un code résolvant le problème des Nreines dans la moulinette pythran. Après de nombreux hacks optimisations, les résultats tombent:

  • python: 1.34s
  • pypy: 0.56s
  • nuitka: 1.34s
  • shedskin: 0.61s
  • pythran: 0.32s

\o/ le bébé s'en sort bien.

Pour être honnête il faut bien avouer que pythran ne supportant pas encore (…)

Journal pythran: python -> c++

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
30
8
juil.
2012

La lecture quotidienne des journaux m'avertit qu'il y a de nombreux pythonistes dans le coin, alors…

Dans ma pratique régulière du Python (et n'oubliez pas : manger 5 langages par jour pour être bien en forme !), je prends un grand plaisir à coder des algos à base de liste / ensembles / dictionnaires le tout dans une petite sauce fonctionnelle. C'est loin d'être la seule façon de programmer en Python mais c'est comme ça que je fais.

Bien sûr, tout (…)

Journal un pacman en LaTeX

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
47
5
juil.
2012

(non, ce titre n'annonce pas un tout nouveau gadget pour amateurs de vintage game)
Yo,
quand j'étais en thèse, je faisais pleins de petites présentations informelles pour présenter mes modestes travaux etc, et pour avoir la classe j'utilisais la classe LaTeX beamer. Pratique, élégant, sobre, rapide etc, mais alors pas du tout funky.

Alors pour mettre un peu d'ambiance,
dans mon quartier de vieux débris,
j'ai regroupé toutes mes connaissances,
intellectuelles et c'est depuis que…

j'ai produit un petit (…)