[Python-announce] Pythran release - 0.10.0 - palig

2021-09-14 Thread Serge Guelton
Hi Folks,

Pythran, a compiler for scientific kernels written in Python, got a new release.

It contains a few changes detailed in the changelog[0] but I'd like to highlight
the work[1] of Xingyu Liu during her GSoC on improving pythran <-> scipy
integration. It's also a release that recieved a lot of external contributions,
and that's always a pleasure. Thanks to you all!

$ git log 0.9.9..0.10.0  | grep Author | sort -u | wc -l
21

As usual, Pythran is available since today on PyPI and github, and this will
propagate to conda, Fedora etc thanks to our beloved packagers!



[0] https://github.com/serge-sans-paille/pythran/blob/0.10.0/Changelog
[1] 
https://serge-sans-paille.github.io/pythran-stories/gsoc21-improve-performance-through-the-use-of-pythran.html

___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


pythran 0.9.12 - heskenn

2021-07-13 Thread Serge Guelton
Hi folks,

I just shipped a new release of Pythran—a compiler for scientific kernels 
written
in python.

It means it is available on PyPI and github, but not yet on conda, fedora, 
gentoo etc.

This one fixes a bunch of issues for Scipy (again), restores compatibility with
Cython, but the biggest change is definitively the new dependency tree.

Indeed, Pythran no longer depends on networkx, six nor decorator. The dependency
on gast and beniget received a version bump for compatibility with python 3.10
changes.

Big thanks to the contributors, every commit counts!

$ git shortlog -s 0.9.11..0.9.12
 1  Ashwin Vishnu
 1  Christian Clauss
 1  Jochen Schröder
 1  Miro Hrončok
 2  Ralf Gommers
35  serge-sans-paille
 1  刘星雨

A summarized changelog

$ git diff 0.9.11..0.9.12 -- Changelog | cut -c 2-
(...)
2021-07-06 Serge Guelton 
* Remove six, networkx and decorator dependency

* Bump gast and Beniget requirements to support python 3.10

* Bump xsimd to 7.5.0

* Minimal default support for non-linux, non-osx, now-windows platform

* Numpy improvements for np.bincount, np.transpose, np.searchsorted

* Restore (and test) cython compatibility

* Expose pythran.get_include for toolchain integration

* Improve error message on invalid spec

* Handle static dispatching based on keyword signature

* Raise Memory Error upon (too) large numpy alloc

* Support scalar case of scipy.special.binom

* Trim the number of warnings in pythonic codebase
(...)
___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


pythran 0.9.10 - troer-biñsoù

2021-05-09 Thread Serge Guelton
Hi pythraners,

/pythran is an ahead of time compiler for high-level scientific kernels written 
in Python./

I did a quick release of the pythran compiler today. It's only a few months 
since the
previous release, but this one fixes an important memory leak with transposed 
arguments,
so here it comes.

Changelog: https://github.com/serge-sans-paille/pythran/blob/0.9.10/Changelog

On Github: https://github.com/serge-sans-paille/pythran/tree/0.9.10
On Pypi: https://pypi.org/project/pythran/

Release on conda-forge and on fedora-rawhide should come soon.

We recieved a lot more third party contributions than usual for this release, so
let me thank

Angus Gibson
David Brochart
Konrad Kleine
ocaisa
Pierre Augier
Ralf Gommers
Stefan van der Walt
Sylvain Corlay
___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


Pythran 0.9.8 - memes tra

2020-09-23 Thread Serge Guelton
Hi Folks,

New Pythran release, tagged on github, available on PyPI and conda, and
described here:


http://serge-sans-paille.github.io/pythran-stories/pythran-097-memes-tra.html

Enjoy!
___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


Pythran 0.9.6 - talar tro

2020-08-01 Thread Serge Guelton
Hi folks, and sorry for the double posting if any,

It's my pleasure to share with you the 0.9.6 release of Pythran, code-named
talar-tro [0].

Pythran is a compiler for numerical kernels written in Python.
It doesn't require much type information and its inputs are 100% compatible with
the Python interpreter (but the other way around is not true!)

More than 6 months have passed since last revision, so the changelog is a bit
dense [1], but basically, that's the first release that only supports Python3 
[2],
I made quite a lot of changes in the expression engine and it comes with more
supported numpy stuff, hopefully less bugs etc.

As usual, it's available on Pypi, conda-forge and github :-)


[0] https://br.wikipedia.org/wiki/Talar-tro
[1] https://pythran.readthedocs.io/en/latest/Changelog.html
[2] Is that even a feature?
___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


Re: [pythran] Pythran 0.9.4 - Hollsent

2019-11-06 Thread Serge Guelton
On Thu, Oct 31, 2019 at 07:32:25AM +0100, Serge Guelton wrote:
> Hi folks,
> 
> It's always a pleasure to announce a Pythran release, and here we go for a
> version bump!
> [...]

For those of you who are interested in technical details,

http://serge-sans-paille.github.io/pythran-stories/pythran-094-hollsent.html

may be an interesting read!

++
Serge
--
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.9.4 - Hollsent

2019-10-31 Thread Serge Guelton
Hi folks,

It's always a pleasure to announce a Pythran release, and here we go for a
version bump!

Short reminder: Pythran is an ahead-of-time compiler for scientific Python,
with a focus on high-level numerical kernels, parallelism and vectorisation.

Here is a simple kernel example, with a pythran annotation. Note that this
kernel is still Python-compatible (from 
https://stackoverflow.com/questions/50658884):

#pythran export euclidean_distance_square(float64[1,:], float64[:,:])
import numpy as np
def euclidean_distance_square(x1, x2):
return -2*np.dot(x1, x2.T) + np.sum(np.square(x1), axis=1)[:, 
np.newaxis] + np.sum(np.square(x2), axis=1)

The Pythran package is available on PyPI, Github and Conda

https://pypi.org/project/pythran/
https://anaconda.org/conda-forge/pythran
https://github.com/serge-sans-paille/pythran

Packages exist for archlinux and Fedora, they'll probably be updated soon :-)

The interested reader can have a look to the changelog for details

https://pythran.readthedocs.io/en/latest/Changelog.html

Most notably, this release provides support for Python 3.7 and Python 3.8, as
well as the ability to use clang-cl as a (better) backend compiler for Windows.

Huge thanks to all contributors:

 paugier
 Anubhab Haldar
 Jean Laroche
 polo

and bug reporters:

paugier
nbecker
gdementen 
mgirardis 
MordicusEtCubitus
Dapid
piotrbartman 
m-romanov
slayoo
martibosch
jeanlaroche


--
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.9.3 - Hañv

2019-08-19 Thread Serge Guelton
Hi folks,

I just released version 0.9.3 of the Pythran package,

Short reminder: Pythran is an ahead-of-time compiler for scientific Python,
with a focus on high-level numerical kernels, parallelism and vectorisation.

Here is a simple kernel example, with a pythran annotation. Note that that
kernel is still Python-compatible (from 
https://stackoverflow.com/questions/57199248/) :

import numpy as np
#pythran export col_sum(int[:,:] or float[:,:], int[:])
def col_sum(data, idx):
return data.T[idx].sum(0)

The Pythran package is available on PyPI, Github and Conda

https://pypi.org/project/pythran/
https://anaconda.org/conda-forge/pythran
https://github.com/serge-sans-paille/pythran

The interested reader can have a look to the changelog for details

https://pythran.readthedocs.io/en/latest/Changelog.html

Long story short: bug fixes and better 32bit arch support. Plus (Thanks to Miro
Hrončok), pythran is now available on Fedora \o/

Huge thanks to all contributors and bug reporters:

Jean Laroche
Yann Diorcet
DWesl
Miro Hrončok
Piotr Bartmann
Jochen Schröder
Sylwester Arabas
Marti Bosch
rorroiga
Pierre Augier
Anubhab Haldar
nbecker


--
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.9.2 - koailh

2019-05-06 Thread Serge Guelton
Hi folks, and sorry for the double posting if any.

It's my great pleasure to announce the release of Pythran 0.9.2, codenamed 
koailh.

Pythran is an ahead of time compiler for scientific kernels written in Python. 
It is
backward-compatible with Python (no language extension) and can take advantage 
of
OpenMP annotations and automatic SIMD instruction generation.

It's been more than four months since last release, so there's quite a lot of 
changes.
The detailed changelog is available online:

https://pythran.readthedocs.io/en/latest/

Notable Changes
===

In addition to bugfixes and new function support, the most significant changes 
are the
support of a special notation to describe optional argument in Pythran 
annotations:

#pythran export foo(int, int?)

This notation is equivalent to:

#pythran export foo(int)
#pythran export foo(int, int)

This release also introduces a new dependency on the beniget package that 
provides use-def
chains construction for Python code:

https://github.com/serge-sans-paille/beniget

A significant memory leak when converting extended slice from pythran to python 
has been
spoted and fixed.

In total, a great deal of 43 issues have been closed!


https://github.com/serge-sans-paille/pythran/issues?utf8=%E2%9C%93=is%3Aissue+is%3Aclosed+closed%3A%3E2019-01-20+

Sample Code
===

As usual, I like to demonstrate Pythran through a small benchmark that used to 
be unsupported
and now provides a nice x6 speedup (without xsimd) up to (with xsimd, 
non-strided version) over
Python reference:

import numpy as np
#pythran export f_dist(float64[:,:], float64[:,:])
#pythran export f_dist(float64[::,::], float64[::,::])
def f_dist(X1, X2):
return np.sum(np.abs(X1[:, None, :] - X2), axis=-1)

(from 
https://stackoverflow.com/questions/55854611/efficient-way-of-vectorizing-distance-calculation/)

Download


You can retrieve the package through PyPI:

https://pypi.org/project/pythran/

Download the source on GitHub:

https://github.com/serge-sans-paille/pythran

Or using the conda package, now available for Windows in addition to Linux and 
OSX through conda-forge

https://anaconda.org/conda-forge/pythran

Thanks
==

The following people have contributed to this version, through bug reports or 
commits, in no
particular order:

- Yann Diorcet
- Neal Becker
- Ashwin Vishnu 
- David Menéndez Hurtado
- Jean Laroche
- Anubhab Haldar
- Thierry Dumont
- "keke ge-smile"
- "garanews"
- Said Hadjout
- Rodrigo Iga
- Pierrick Brunet
- Franck Cornevaux-Juignet

Special thoughts to these last two, they reported bugs in 2013 and 2014, and 
the associated
fixes only happened in 2019 ^^!

Contribute
==

If you've been brave enough to read this whole mail, the next step is to 
support Pythran!
You can donate your time through bug reports and fixes, give a small motivation 
boost through
a gentle email, or just use it and share the joy.

If you need important development in Pythran, you can drive the roadmap! Send 
an email to the
mailing list (or to my personnal email if you're too shy).

++
Serge


-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran - 0.8.7

2018-09-21 Thread Serge Guelton
Hi there,

Pythran just released its 0.8.7 version. A quick reminder: Pythran is a
compiler for scientific Python, it can be used to turn Python kernels
as:

#pythran export laplacien(float64[][][3])
import numpy as np
def laplacien(image):
out_image = np.abs(4*image[1:-1,1:-1] -
   image[0:-2,1:-1] - image[2:,1:-1] -
   image[1:-1,0:-2] - image[1:-1,2:])
valmax = np.max(out_image)
valmax = max(1.,valmax)+1.E-9
out_image /= valmax
return out_image

In a native library that runs much faster. Note the ``#pythran export``
line that specifies that the native version only accepts 3D arrays with
last dimension set to 3.

It's available on pypi: https://pypi.org/project/pythran/
on conda-forge (linux and osx): https://anaconda.org/conda-forge/pythran
and on github: https://github.com/serge-sans-paille/pythran

Special Thanks for this release to:

- Yann Diorcet for all his work on the Windows compatibility
- Jean Laroche for the bug reports on OSX
- Marteen for his « red dragon » gift
- h-vetinari, vgroff, DerWeh, ucyo, Chronum94, paugier, gouarin and Dapid for 
their bug reports.
- alexbw for setting up the conda-forge build

This release closes the following issues:


https://github.com/serge-sans-paille/pythran/issues?utf8=%E2%9C%93=is%3Aissue+is%3Aclosed+updated%3A%3E2018-06-01+

A more detailed changelog is available at 
https://pythran.readthedocs.io/en/latest/Changelog.html

Enjoy, and if not, submit bug report :-)

Serge
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran - 0.8.6

2018-06-07 Thread Serge Guelton
Hi there,

Pythran just released its 0.8.6 version. A quick reminder: Pythran is a
compiler for scientific Python, it can be used to turn Python kernels
as:


#pythran export _brief_loop(float64[:,:], uint8[:,:], intp[:,:], int[:,:], 
int[:,:])
def _brief_loop(image, descriptors, keypoints, pos0, pos1):

for k in range(len(keypoints)):
kr, kc = keypoints[k]
for p in range(len(pos0)):
pr0, pc0 = pos0[p]
pr1, pc1 = pos1[p]
descriptors[k,p] = image[kr + pr0, kc + pc0] < image[kr + pr1, 
kc + pc1]

In a native library that runs much faster.

It's available on pypi: https://pypi.org/project/pythran/
on conda-forge (linux and osx): https://anaconda.org/conda-forge/pythran
and on github: https://github.com/serge-sans-paille/pythran

As a fun fact, Pythran is now used as a mean to turn Python code into
pure native library used in C++ code base, without Python involved. Some
people even use SWIG to turn this code into native libraries called
from... Java through JNI :-)

Enjoy,

Serge
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.8.5

2018-04-25 Thread Serge Guelton
(sorry for the double posting if any)

It is my pleasure to announce a new version of the Pythran compiler.

Pythran is an Ahead of Time compiler for a subset of the Python
language, with a focus on scientific kernels.

It can turn code like the one below:

#pythran export weights(uint8[:,:])

import numpy as np
def weights(input_data, threshold=0.3):
n_seq, length = input_data.shape
weights = np.zeros(n_seq, dtype=np.float32)

for i in range(n_seq):
vector = input_data[i, None, :]
count_matches = np.sum(vector == input_data, axis=1)
over_threshold = count_matches > (threshold * length)
total = np.sum(over_threshold)
weights[i] = 1 / total

return weights

into a native module that runs roughly 10 times faster than when
interpreted by cpython.

It's available on PyPi, Conda and GitHub under BSD license.

For the curious reader, the Changelog is reproduced below.

It's a megablast!



2018-04-23 Serge Guelton <serge.guel...@telecom-bretagne.eu>

 - numpy.fft support (thanks to Jean Laroche)
 - Faster generalized expression
 - Faster numpy.transpose, numpy.argmax, numpy reduction
 - Sphinx-compatible generated docstring (thanks to Pierre Augier)
 - Python output through -P (thanks to Pierre Augier)
 - Many bugfixes and numpy improvements (thanks to Yann Diorecet and Jean 
Laroche)

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


[ANN] Pythran 0.7.5 is out

2016-06-16 Thread serge guelton
(sorry for the double posting, if any)

Dear pythraners and pythonists,

The Pythran team (still 2 active developers) is delighted to
announce the release of Pythran 0.7.5, available on the traditional
channels:

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


What is it?
===

Pythran is a static compiler for numerical kernels written in Python + Numpy.
It basically turns Python-compatible modules into native ones,
eventually vectorized and parallelized.

Example
===

Following the tradition, each release comes with a code sample. This one
comes from http://jakevdp.github.io/blog/2012/08/24/numba-vs-cython/

#pythran export pythran_pairwise(float64 [][])
import numpy as np
def pythran_pairwise(X):
return np.sqrt(((X[:, None, :] - X) ** 2).sum(-1))

This kernel relies a lot on Numpy's broadcasting, but Pythran can now
compile it efficiently, which is a really nice improvement! It can rip
(without vectorization and parallelization turned on) more than a x5
speedup over the Numpy version \o/

More Infos
==

We have published some technical details about Pythran internal on the
blog:

http://serge-sans-paille.github.io/pythran-stories/

It is open to third-party contribution!

Changelog
=

* Better Jupyter Note book integration

* Numpy Broadcasting support

* Improved value binding analysis

* Simple inlining optimization

* Type engine improvement

* Less fat in the generated modules

* More and better support for various Numpy functions

* Various performance improvement

* Global variable handling, as constants only though

Acknowledgments
===

Thanks a lot to Pierrick Brunet for his dedicated work, and to all the
bug reporters and patch providers that helped a lot for this release:

nils-werner, ronbarak, fred oble, geekou, hainm, nbecker and xantares.

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.7.4 is out!

2016-01-09 Thread serge guelton
(sorry for the double posting, if any)

Dear pythraners and pythonists,

The pythran team (a great total of 2 active developers) is delighted to
announce the release of Pythran 0.7.4, available on the traditional
channels:

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

As usual, here is a (new) code sample, once again adapted from a
stackoverflow question[0] that showcases pythran capability:


#pythran export check_mask(bool[][], bool[])
#  ^~~ non intrusive top-level annotation

import numpy as np
#  ^~ numpy support (partial)
def check_mask(db, out, mask=[1, 0, 1]):
for idx, line in enumerate(db):
target, vector = line[0], line[1:]
# ^ type destructuring, array view
if (mask == np.bitwise_and(mask, vector)).all():
# ^~~ optimization of high level construct
if target == 1:
out[idx] = 1
return out


Compiled with:

% pythran check_mask.py

And benchmarked with:

% python -m timeit -s 'n=10e3 ; import numpy as np;db  = 
np.array(np.random.randint(2, size=(n, 4)), dtype=bool); out = 
np.zeros(int(n),dtype=bool); from eq import check_mask' 'check_mask(db, out)'

On average, the CPython version runs in 137 msec while the pythran version run 
in 450us on my laptop :-)


Here is an extract of the changelog:

2016-01-05 Serge Guelton <serge.guel...@telecom-bretagne.eu>

* IPython's magic for pythran now supports extra compile flags

* Pythran's C++ output is compatible with Python3 and pythran3 can 
compile it!

* More syntax checks (and less template traceback)

* Improved UI (multiline pythran exports, better setup.py...)

* Pythonic leaning / bugfixing (this tends to be a permanent item)

* More generic support for numpy's dtype

* Simpler install (no more boost.python deps, nor nt2 configuration)

* Faster compilation (no more boost.python deps, smarter pass manager)

* Better testing (gcc + clang)

Again, thanks a lot to Pierrick for his continuous top-quality work, and
to the OpenDreamKit[1] project that funded (most of) the recent developments!

Special thanks to @hainm, @nbecker, @pkoch, @fsteinmetz, @Suor for their
feedbacks. *You* give us the motivation to go on!


[0] 
http://stackoverflow.com/questions/34500913/numba-slower-for-numpy-bitwise-and-on-boolean-arrays
[1] http://opendreamkit.org/


signature.asc
Description: PGP signature
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.7.2 is out!

2015-10-13 Thread serge guelton
(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.guel...@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/
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Pythran 0.7 is out

2015-04-17 Thread serge guelton
(sorry for the double posting if any)

It is my pleasure to announce a new version of the Pythran compiler.

Pythran is a Python compiler for scientific computing, more details on
the PyData Paris talk:

http://serge-sans-paille.github.io/talks/pydata-2015-04-03.html#/

A huge achievement of this version is being able to efficiently compile
the following kernel:


https://github.com/serge-sans-paille/pythran/blob/master/pythran/tests/cases/grayscott.py

Kudos to Valerio De Carolis, Leopold Haimberger, xantares, T.J. Ragan,
Joël Falcou and Neal Becker for their ultra-motivating feedbacks!

And thanks *a lot* to Pierrick Brunet for his impressive development
work and code reviewing effort!

homepage: http://pythonhosted.org/pythran/
github: https://github.com/serge-sans-paille/pythran
pypi: https://pypi.python.org/pypi/pythran
freenode: #pythran
mliste: pyth...@freelists.org

More details on this version (from the changelog):

* Various numpy.* function implementation improvement (incl. concatenate,
  str.join, itertools.combinations)

* Better error detection during install step

* 32 bit compatibility

* Complete rewrite of the expression engine

* Improved support of numpy extended expression

* Better user feedback on invalid pythran spec

* More efficient support of string litterals

* Faster exponentiation when index is an integer

* NT2 revision bump

* No-copy list as numpy expression parameters

* Accept C and fortran layout for input arrays

* Range value analysis and boundcheck removal

* Newaxis style indexing

* Better array-of-complex support

* Glimpses of python3 support

* Support for importing user defined modules

* Archlinux support

* Accept strided array as exported function input

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Re: Call for speakers for the first PyCon Belarus. Python-announce

2014-12-12 Thread serge Guelton
On Fri, Dec 12, 2014 at 04:32:26PM +0300, Alina Dolgikh wrote:
 Hello, dear community!
 
 I represent Belarusian Python community. We have regular monthly meet-ups
 for 70-100 persons and we are going to develop further.
 
 We are planning to make the first Belarusian PyCon on the 31st of January
 and looking for speakers.
 
 We will be glad to meet at our event speakers, which are experienced in
 public talks (links for videos of public talks or for the other conferences
 web-pages are preferable) and can speak at

 - CI, pypy, C-extensions, python performance

I there,

I am the core developer of the Pythran[0] compiler, a Python to C++
compiler that focuses on the numpy package optimization, and tries hard
to turn high-level Numpy code into low-level, vectorized, parallel C++
code. I presented an early version at Scipy 2013[1], this should give
you a decent idea of my yet to improve speaker skills :-/

Any way, I would be happy to speak about it at PyCon Belarusian!

If you're intereseted/curious, I can provide a more detailed description
;-)

See ya,

Serge

[0] http://pythonhosted.org/pythran/
[1] https://www.youtube.com/watch?v=KT5-uGEpnGw
-- 
https://mail.python.org/mailman/listinfo/python-list


Pythran 0.6 - C++ for snakes

2014-10-23 Thread serge Guelton
===
Pythran 0.6
===

The Pythran team is glad to announce Pythran 0.6. It contains many
performance improvements, better Numpy support and the usual code
cleaning and bug fixes.

You can download the release from the cheese shop:

https://pypi.python.org/pypi/pythran

From my custom Debian repo:

http://serge.liyun.free.fr/serge/debian.html

Or keep playing with the git repo:

https://github.com/serge-sans-paille/pythran

Bug reports are welcome, on github, #pythran on FreeNode or
pyth...@freelists.org!

From the Changelog
==

* Full SIMD support! Almost all numpy expressions are vectorized

* Better memory management at the Python/C++ layer, esp. when sharing

* Support named parameters

* Better complex numbers support

* A lot of internal code cleaning

* Better code generation for regular loops

* MacOS install guide  ArchLinux packages

* Travis run the test suite, w and w/ SIMD, w and w/ OpenMP

* Many performance improvements at the numpy expression level

* Faster array copies, including slices

* Much better constant folding

* Distutils support through a PythranExtension

* Improve implementation of many numpy functions

* Improve forward substitution

* Use most recent nt2 version

* Make dependency on libgomp optional

What's next?


* better numpy support

* better/faster OpenMP support

* code cleaning and refactoring. Always.

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Re: Pyston 0.2 released

2014-09-12 Thread serge Guelton
On Thu, Sep 11, 2014 at 12:52:15PM -0700, Kevin Modzelewski wrote:
 
 Hi all, we're excited to announce the existence of Pyston 0.2, a
 much-improved version of our new Python JIT.  The new
 version features greatly improved language support, basic native C API
 support, and an experimental GIL-free mode.  Pyston is now in alpha, and is
 still not ready for general use, but we have hit a significant milestone of
 being able to run a number of existing benchmarks and standard libraries.
 

Hi Kevin,

Great work! I wonder if (in an undetermined future) the following
scenario could stand to optimize calls to native libraries, like numpy:

- compile numpy into LLVM bytecode
- when meeting a function with a bunch of numpy call, instead of using
  the CAPI, directly call functions from the numpy bytecode and optimize
  evertyhing as a whole?

Keep up the good work!
-- 
https://mail.python.org/mailman/listinfo/python-list


Python Obfuscation Challenge

2014-09-04 Thread Serge Guelton
Hi all,

The QuarksLab[0] company just released a Capture The Flag challenge with
an emphasise on Python and CPython:


http://blog.quarkslab.com/you-like-python-security-challenge-and-traveling-win-a-free-ticket-to-hitb-kul.html

There are a few free tickets to the HITB conference[1] to win, so
unleash the hacker in you!

enjoy,

[0] I am indeed an employee of QuarksLab :-/
[1] https://conference.hitb.org/hitbsecconf2014kul
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/