Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #1901

Pythran 0.7.2 is out!

Path csiph.com!eternal-september.org!feeder.eternal-september.org!border1.nntp.ams1.giganews.com!nntp.giganews.com!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!nzpost1.xs4all.net!not-for-mail
Return-Path <serge.guelton@telecom-bretagne.eu>
X-Original-To python-announce-list@python.org
Delivered-To python-announce-list@mail.python.org
X-Spam-Status OK 0.000
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'url:pypi': 0.03; 'compiler': 0.05; 'distutils': 0.05; 'python)': 0.05; '(using': 0.07; '[0]': 0.07; 'dependency': 0.07; '(sorry': 0.09; 'annotations': 0.09; 'any)': 0.09; 'cc:addr:googlegroups.com': 0.09; 'git': 0.09; 'high-level': 0.09; 'modules.': 0.09; 'splitting': 0.09; 'url:github': 0.09; 'bug': 0.10; 'python': 0.10; 'def': 0.13; 'c++)': 0.16; 'itertools': 0.16; 'numpy': 0.16; 'posting,': 0.16; 'pythonic': 0.16; 'refactoring': 0.16; 'to:addr:freelists.org': 0.16; 'compilation': 0.18; 'variable': 0.18; 'library': 0.20; 'windows': 0.20; 'cc:addr:python.org': 0.20; 'cc:2**2': 0.20; '(the': 0.22; 'install,': 0.22; 'minor': 0.22; 'code,': 0.23; 'import': 0.24; 'implemented': 0.24; 'header': 0.24; 'module': 0.25; 'install': 0.25; 'header:User- Agent:1': 0.26; 'compatible': 0.27; '[2]': 0.27; 'function': 0.28; 'skip:u 20': 0.28; 'build,': 0.29; 'docstrings': 0.29; 'high.': 0.29; 'motivation': 0.29; 'preserve': 0.29; 'relies': 0.29; '(including': 0.30; 'code': 0.30; 'non': 0.32; '[1]': 0.32; 'announce': 0.32; 'generally': 0.32; 'url:python': 0.33; 'add': 0.34; 'execution': 0.35; 'level': 0.35; 'project': 0.36; 'instead': 0.36; 'url:org': 0.36; 'faster': 0.36; 'modules': 0.36; 'thanks': 0.37; 'support,': 0.37; 'release': 0.37; 'charset:us- ascii': 0.37; 'skip:4 10': 0.38; 'skip:v 20': 0.38; 'version': 0.38; 'high': 0.60; 'skip:u 10': 0.61; 'provide': 0.61; 'bring': 0.62; 'skip:n 10': 0.62; 'export': 0.63; 'more': 0.63; 'dear': 0.67; 'special': 0.73; 'pleasure': 0.79; 'boost.python': 0.84; 'computing.': 0.84; 'du,': 0.84; 'float,': 0.84; 'latin': 0.84; 'pip': 0.84; 'received:195.154': 0.84; 'cc:no real name:2**2': 0.91
X-Spam-Checker-Version SpamAssassin 3.3.1 (2010-03-16) on sd-34863.dedibox.fr
X-Spam-Level
X-Spam-Status No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=unavailable version=3.3.1
Date Tue, 13 Oct 2015 21:14:39 +0200
From serge guelton <serge.guelton@telecom-bretagne.eu>
To pythran@freelists.org
Cc calcul@listes.math.cnrs.fr, numfocus@googlegroups.com, participants@opendreamkit.org, python-announce-list@python.org, scipy-user@scipy.org
Subject Pythran 0.7.2 is out!
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
User-Agent Mutt/1.5.24 (2015-08-30)
X-Mailman-Approved-At Tue, 13 Oct 2015 21:23:36 +0200
X-BeenThere python-announce-list@python.org
X-Mailman-Version 2.1.20+
Precedence list
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-announce-list/>
List-Post <mailto:python-announce-list@python.org>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe>
Approved python-announce-list@python.org
Newsgroups comp.lang.python.announce
Message-ID <mailman.627.1444764217.28679.python-announce-list@python.org> (permalink)
Lines 103
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1444764217 news.xs4all.nl 23804 [2001:888:2000:d::a6]:56517
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python.announce:1901

Show key headers only | View raw


(sorry for the double posting, if any)

Dear pythraners and pythonistae (the latin plural for pythonista?)

It is my pleasure to announce the release of Pythran 0.7.2, now
available on

    - pypy: https://pypi.python.org/pypi/pythran
    - conda: https://anaconda.org/serge-sans-paille/pythran
    - github: https://github.com/serge-sans-paille/pythran

Pythran is an ahead-of-time Python compiler with a focus on high-level
scientific computing. It relies on a few non-intrusive annotations to
provide (potentially) vectorized, parallel version of high level Python
code, like the following, borrowed from stackoverflow [0];

    #pythran export GrayScott(int, float, float, float, float)
    # ^ see the non intrusive, backward compatible annotation ^

    import numpy as np
    def GrayScott(counts, Du, Dv, F, k):
        n = 300
        U = np.zeros((n+2,n+2), dtype=np.float32)
        V = np.zeros((n+2,n+2), dtype=np.float32)
        u, v = U[1:-1,1:-1], V[1:-1,1:-1]

        r = 20
        u[:] = 1.0
        U[n/2-r:n/2+r,n/2-r:n/2+r] = 0.50
        V[n/2-r:n/2+r,n/2-r:n/2+r] = 0.25
        u += 0.15*np.random.random((n,n))
        v += 0.15*np.random.random((n,n))

        for i in range(counts):
            Lu = (                 U[0:-2,1:-1] +
                  U[1:-1,0:-2] - 4*U[1:-1,1:-1] + U[1:-1,2:] +
                                   U[2:  ,1:-1] )
            Lv = (                 V[0:-2,1:-1] +
                  V[1:-1,0:-2] - 4*V[1:-1,1:-1] + V[1:-1,2:] +
                                   V[2:  ,1:-1] )
            uvv = u*v*v
            u += Du*Lu - uvv + F*(1 - u)
            v += Dv*Lv + uvv - (F + k)*v

        return V

This minor yet amazing version brings in more numpy function support
[1], easier install, a conda build, tentative windows support, faster
compilation time and generates generally faster native modules.

Kudos to Pierrick for the hardwork and to all the bug reporters. You all
help a lot to bring the motivation high.

Special thanks to the OpenDreamKit[2] project for the financial support.
Most of the new features have been implemented thanks to this funding!


Changelog extract:

2015-10-13 Serge Guelton <serge.guelton@telecom-bretagne.eu>

	* Significantly decrease compilation time

	* Faster execution of numpy generalized slicing

	* Tentative conda support

	* Tentative Windows support (using Win Python)

	* Preserve original docstrings

	* Add __pythran__ global variable to pythran generated modules

	* Faster implementation of various itertools functions

	* Rely on distutils for module code compilation

	* Support most of numpy.random

	* Remove git and make dependency to install nt2

	* Proper pip support instead of distuils

	* Remove dependency to boost.python

	* Remove dependency to tcmalloc

	* Pythonic library cleaning (less dependencies / header / splitting / mrpropering)

	* More lazy computations

	* More numpy function support (including dot on matrices, linalg.norm, mean)

	* Lot of code cleaning / refactoring (both in Python and C++)

	* Many bugfixes, thanks to all the bug reporters!


[0] http://stackoverflow.com/questions/26823312/numba-or-cython-acceleration-in-reaction-diffusion-algorithm

[1] https://pythonhosted.org/pythran/SUPPORT.html

[2] http://opendreamkit.org/

Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

Pythran 0.7.2 is out! serge guelton <serge.guelton@telecom-bretagne.eu> - 2015-10-13 21:14 +0200

csiph-web