Hi,

personally I don't have a preference of Binstar over somewhere.org. More important is that one has to agree where to find the binaries. Binstar has the concept of channels and allow wheels. So one could provide a channel for NOSSE and more channels for other specialized builds: ATLAS/OpenBLAS/RefBLAS, SSE4/AVX and so on.

A generic binary should be build with generic optimizing GCC switches and SSE2 per default. I propose to provide generic binaries for PYPI instead of superbinaries. and specialized binaries on Binstar or somewhere else.

Just thinking two or three steps ahead.

Regards

Carl


2014-07-02 13:35 GMT+02:00 Matthew Brett <matthew.brett@gmail.com>:
Hi,

On Wed, Jul 2, 2014 at 12:18 PM, Carl Kleffner <cmkleffner@gmail.com> wrote:
> Hi,
>
> The mingw-w64 based wheels (Atlas and openBLAS) are based on a patched numpy
> version, that hasn't been published as numpy pull for revision until now (my
> failure). I could try to do this tomorrow in the evening.

That would be really good.  I'll try and help with review if I can.

> Another important
> point is, that the toolchain, that is capable to compile numpy/scipy was
> adapted to allow for MSVC / mingw runtime compatibility and does not create
> any gcc/mingw runtime dependency anymore.
>
> OpenBLAS has one advantage over Atlas: numpy/scipy are linked dynamically
> against OpenBLAS. Statically linked BLAS like MKL or ATLAS creates huge
> python extensions and have considerable higher memory consumption compared
> to dynamically linkage. On the other hand correctness is more important, so
> ATLAS has to be preferred now.

Do you have any index of what the memory cost is?   If it's in the
order of 20M presumably that won't have much practical impact?

> Users with non SEE processors could be provided with wheels distributed on
> binstar.

The last plan we seemed to have was to continue making the 'superpack'
exe installers which contain no-SSE, SSE2 and SSE3 builds where the
installer selects which one to install at runtime.   The warning from
the wheel would point to these installers as the backup option.

If we did want to produce alternative wheels, I guess a specific
static https directory would be easiest; otherwise the user would get
the odd effect that they'd get a hobbled wheel by default when
installing from binstar (assuming they did in fact have SSE2).  I
mean, this

pip install -f https://somewhere.org/no_sse_wheels --no-index numpy

seems to make more sense as an alternative install command for
non-SSE, than this:

pip install -i http://binstar.org numpy

because in the former case, you can see what is special about the command.

Cheers,

Matthew
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion