[SciPy-User] Windows 64bits support

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

[SciPy-User] Windows 64bits support

Jerome Kieffer
Hi,

I am wondering why there is no "official" packages for scipy on windows
64 bits ? The same is True for NumPy and even Python which
systematically suggests the 32-bits version.

After the nice move from Microsoft for provide compiler, is it still an issue ?

Cheers,

--
Jérôme Kieffer
Data analysis unit - ESRF

PS: I know the wonderful work of Christopher Gohlke, but his work is "unofficial"
_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

David Cournapeau


On Wed, Apr 1, 2015 at 2:15 PM, Jerome Kieffer <[hidden email]> wrote:
Hi,

I am wondering why there is no "official" packages for scipy on windows
64 bits ? The same is True for NumPy and even Python which
systematically suggests the 32-bits version.

After the nice move from Microsoft for provide compiler, is it still an issue ?

Yes, because of fortran. There is work in progress to build numpy/scipy with the mingw toolchain on 64 bits windows,

David
 

Cheers,

--
Jérôme Kieffer
Data analysis unit - ESRF

PS: I know the wonderful work of Christopher Gohlke, but his work is "unofficial"
_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user


_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Sturla Molden-3
In reply to this post by Jerome Kieffer
Jerome Kieffer <[hidden email]> wrote:

> I am wondering why there is no "official" packages for scipy on windows
> 64 bits ? The same is True for NumPy and even Python which
> systematically suggests the 32-bits version.
>
> After the nice move from Microsoft for provide compiler, is it still an issue ?

We need a Fortran compiler too, which means we have to use MinGW-w64 (gcc,
g++, and gfortran) or Intel C++ (or MSVC) in combination with Intel
Fortran. g77 is no longer considered a viable option.

Carl Kleffner is working on a MinGW (and OpenBLAS) based toolchain for
SciPy. We need some special tweaking, e.g. to ensure static linkage and
correct stack alignment. It is getting ready for production use, but we
have not used it yet.

Continuum (Anaconda), Gohlke, and Enthought use Microsoft and Intel
compilers and MKL. If you need a binary installer for a full SciPy stack on
Windows, get one of these three.

We could use Microsoft's MSVC compiler for Python 2.7, but we do not have
access to Intel Fortran. And even if we did, the installer would be tainted
with Intel's Fortran runtime, which has a commercial license. So a "free"
installer from the SciPy project should be built with gfortran.

There are also issues with the LAPACK library as Microsoft does not provide
one. On Apple and Linux distros a BLAS and LAPACK library is shipped with
the operating system, so it's never a problem. On Windows it is more
difficult: MKL has a commercial license (though we have permission to use
it it will taint the binary installer), OpenBLAS has too many bugs (at
least it did last time I checked), ATLAS is alow and a PITA to build. The
lack of a vendor-supplied BLAS and LAPACK library is one reason Windows is
difficult to use for scientific computing. Anaconda and Enthought does not
have to worry that MKL has a commercial license as they do too.


Sturla

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Jerome Kieffer
On Wed, 1 Apr 2015 17:19:25 +0000 (UTC)
Sturla Molden <[hidden email]> wrote:

> Jerome Kieffer <[hidden email]> wrote:
>
> > I am wondering why there is no "official" packages for scipy on windows
> > 64 bits ? The same is True for NumPy and even Python which
> > systematically suggests the 32-bits version.
> >
> > After the nice move from Microsoft for provide compiler, is it still an issue ?
>
> We need a Fortran compiler too, which means we have to use MinGW-w64 (gcc,
> g++, and gfortran) or Intel C++ (or MSVC) in combination with Intel
> Fortran. g77 is no longer considered a viable option.

Thanks David and Sturla for the precise answer. Windows-64 is one of
the (main?) target for our new product and some of us are reluctant to
depend on scipy if it is too complicated to install.

> Carl Kleffner is working on a MinGW (and OpenBLAS) based toolchain for
> SciPy. We need some special tweaking, e.g. to ensure static linkage and
> correct stack alignment. It is getting ready for production use, but we
> have not used it yet.

Keep us informed, it is an important point for us.

> Continuum (Anaconda), Gohlke, and Enthought use Microsoft and Intel
> compilers and MKL. If you need a binary installer for a full SciPy stack on
> Windows, get one of these three.

I usually develop on Linux, but our concerns were about how difficult
it is to get running (and re-distribute) software based on "official"
versions.

Cheers,
--
Jérôme Kieffer
Data analysis unit - ESRF
_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Sturla Molden-3
Jerome Kieffer <[hidden email]> wrote:

> I usually develop on Linux, but our concerns were about how difficult
> it is to get running (and re-distribute) software based on "official"
> versions.

Redistribution is a major reason we are not using Intel Fortran and MKL.
Even though the SciPy project has a permission from Intel to distribute
NumPy and SciPy built with their tools, it will produce licensing issues
downstream if someone wants to redistribute the binaries. Robert Kern had
some strong (but well informed) opinions on this last time it was
discusssed, so you can search up that.

Redistribution will for most parties be easier if we use a MinGW-w64 based
toolchain and OpenBLAS. But a third-party might also object to redistribute
GNU libraries (e.g. libgfortran) but be ok with shipping Intel libraries,
so there is no perfect answer to this.

If you need to redistribute SciPy binaries for Windows you can probably
also contact Enthought or Continuum IO and ask to purchase a license to
redistribute their software. (I don't know if they sell such licenses, but
they might; nor do I know what they might charge for it.)

Getting Carl Kleffner's toolchain ready is limited by the fact that nobody
is really working on it. But SciPy 0.16 milestone is due in a year it
seems, so perhaps it will be ready then? And if you want to make sure it
happens, you know what to do :)

Sturla

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Nathaniel Smith

On Apr 1, 2015 12:57 PM, "Sturla Molden" <[hidden email]> wrote:
> Redistribution will for most parties be easier if we use a MinGW-w64 based
> toolchain and OpenBLAS. But a third-party might also object to redistribute
> GNU libraries (e.g. libgfortran) but be ok with shipping Intel libraries,
> so there is no perfect answer to this.

While I suppose such objections might be raised out of pure prejudice, I'm not aware of any rational basis for them. The GCC runtime libraries (including gfortran) have a blanket license exception that says that you can redistribute gcc-compiled binaries under absolutely any license you wish:

https://www.gnu.org/licenses/gcc-exception-3.1.html

-n


_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Sturla Molden-3
Nathaniel Smith <[hidden email]> wrote:

> While I suppose such objections might be raised out of pure prejudice, I'm
> not aware of any rational basis for them.

I didn't specify a reason. :-)

But I am not a lawyer, so I would not know.

Sturla

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Yuxiang Wang
Hi all,

Sorry about being naive on this topic -

I thought combining with Carl's mingw-w64 toolchain + openblas was
almost ready for the next release, due to the merged PR 5614
(https://github.com/numpy/numpy/pull/5614).

Shawn

On Wed, Apr 1, 2015 at 5:12 PM, Sturla Molden <[hidden email]> wrote:

> Nathaniel Smith <[hidden email]> wrote:
>
>> While I suppose such objections might be raised out of pure prejudice, I'm
>> not aware of any rational basis for them.
>
> I didn't specify a reason. :-)
>
> But I am not a lawyer, so I would not know.
>
> Sturla
>
> _______________________________________________
> SciPy-User mailing list
> [hidden email]
> http://mail.scipy.org/mailman/listinfo/scipy-user



--
Yuxiang "Shawn" Wang
Gerling Research Lab
University of Virginia
[hidden email]
+1 (434) 284-0836
https://sites.google.com/a/virginia.edu/yw5aj/
_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Sturla Molden-3
Yuxiang Wang <[hidden email]> wrote:
> Hi all,
>
> Sorry about being naive on this topic -
>
> I thought combining with Carl's mingw-w64 toolchain + openblas was
> almost ready for the next release, due to the merged PR 5614
> (https://github.com/numpy/numpy/pull/5614).

Unless we are going to use it in a maintenance release of 0.15, the next
release would be 0.16 which is due 31st of March next year.

Sturla

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Matthew Brett
On Wed, Apr 1, 2015 at 2:33 PM, Sturla Molden <[hidden email]> wrote:

> Yuxiang Wang <[hidden email]> wrote:
>> Hi all,
>>
>> Sorry about being naive on this topic -
>>
>> I thought combining with Carl's mingw-w64 toolchain + openblas was
>> almost ready for the next release, due to the merged PR 5614
>> (https://github.com/numpy/numpy/pull/5614).
>
> Unless we are going to use it in a maintenance release of 0.15, the next
> release would be 0.16 which is due 31st of March next year.

I don't think there is any reason to wait for a new release, we can
just upload the wheels for the existing release, when they are
ready...

Matthew
_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Yuxiang Wang
In reply to this post by Sturla Molden-3

Sturla,

Ah I see... Thanks! So I was thinking about the same thing then :)

Shawn

--
Yuxiang "Shawn" Wang
Gerling Research Lab
University of Virginia
[hidden email]
+1 (434) 284-0836
https://sites.google.com/a/virginia.edu/yw5aj/

On Apr 1, 2015 5:33 PM, "Sturla Molden" <[hidden email]> wrote:
Yuxiang Wang <[hidden email]> wrote:
> Hi all,
>
> Sorry about being naive on this topic -
>
> I thought combining with Carl's mingw-w64 toolchain + openblas was
> almost ready for the next release, due to the merged PR 5614
> (https://github.com/numpy/numpy/pull/5614).

Unless we are going to use it in a maintenance release of 0.15, the next
release would be 0.16 which is due 31st of March next year.

Sturla

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user

_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

ralfgommers
In reply to this post by Sturla Molden-3


On Wed, Apr 1, 2015 at 11:33 PM, Sturla Molden <[hidden email]> wrote:
Yuxiang Wang <[hidden email]> wrote:
> Hi all,
>
> Sorry about being naive on this topic -
>
> I thought combining with Carl's mingw-w64 toolchain + openblas was
> almost ready for the next release, due to the merged PR 5614
> (https://github.com/numpy/numpy/pull/5614).

Unless we are going to use it in a maintenance release of 0.15, the next
release would be 0.16 which is due 31st of March next year.

Eh, not really. The milestone was meant to be 31st of March 2015, i.e. right now (2016 was a typo maybe). But due to the delay in getting 0.15.0 out, it will be a little later. We should start preparing for it soon though. I just bumped the date to 31 May 2015.

Ralf



_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Carl Kleffner
Please understand, that the mingw-w64 toolchain adapted for python extension https://bitbucket.org/carlkl/mingw-w64-for-python/downloads/mingwpy-2015-01-readme.html is still work in process albeit usuable. This toolchain (without OpenBLAS) is already included in the winpython distro since dec of 2014.

Working wheels (32 and 64bit) for numpy, scipy are distributed at binstar: https://binstar.org/carlkl . On the TODO list is the reduction of numpy, scipy test failures and errors caused by mingw-w64-crt.

Cheers,

Carl


2015-04-03 23:31 GMT+02:00 Ralf Gommers <[hidden email]>:


On Wed, Apr 1, 2015 at 11:33 PM, Sturla Molden <[hidden email]> wrote:
Yuxiang Wang <[hidden email]> wrote:
> Hi all,
>
> Sorry about being naive on this topic -
>
> I thought combining with Carl's mingw-w64 toolchain + openblas was
> almost ready for the next release, due to the merged PR 5614
> (https://github.com/numpy/numpy/pull/5614).

Unless we are going to use it in a maintenance release of 0.15, the next
release would be 0.16 which is due 31st of March next year.

Eh, not really. The milestone was meant to be 31st of March 2015, i.e. right now (2016 was a typo maybe). But due to the delay in getting 0.15.0 out, it will be a little later. We should start preparing for it soon though. I just bumped the date to 31 May 2015.

Ralf



_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user



_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user
Reply | Threaded
Open this post in threaded view
|

Re: Windows 64bits support

Yuxiang Wang

Hi Carl,

First of all - thanks again for the wonderful work!

Being curious, are you planning to also make a conda package on binstar for the toolchain itself?

Shawn

--
Yuxiang "Shawn" Wang
Gerling Research Lab
University of Virginia
[hidden email]
+1 (434) 284-0836
https://sites.google.com/a/virginia.edu/yw5aj/

On Apr 4, 2015 16:16, "Carl Kleffner" <[hidden email]> wrote:
Please understand, that the mingw-w64 toolchain adapted for python extension https://bitbucket.org/carlkl/mingw-w64-for-python/downloads/mingwpy-2015-01-readme.html is still work in process albeit usuable. This toolchain (without OpenBLAS) is already included in the winpython distro since dec of 2014.

Working wheels (32 and 64bit) for numpy, scipy are distributed at binstar: https://binstar.org/carlkl . On the TODO list is the reduction of numpy, scipy test failures and errors caused by mingw-w64-crt.

Cheers,

Carl


2015-04-03 23:31 GMT+02:00 Ralf Gommers <[hidden email]>:


On Wed, Apr 1, 2015 at 11:33 PM, Sturla Molden <[hidden email]> wrote:
Yuxiang Wang <[hidden email]> wrote:
> Hi all,
>
> Sorry about being naive on this topic -
>
> I thought combining with Carl's mingw-w64 toolchain + openblas was
> almost ready for the next release, due to the merged PR 5614
> (https://github.com/numpy/numpy/pull/5614).

Unless we are going to use it in a maintenance release of 0.15, the next
release would be 0.16 which is due 31st of March next year.

Eh, not really. The milestone was meant to be 31st of March 2015, i.e. right now (2016 was a typo maybe). But due to the delay in getting 0.15.0 out, it will be a little later. We should start preparing for it soon though. I just bumped the date to 31 May 2015.

Ralf



_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user



_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user


_______________________________________________
SciPy-User mailing list
[hidden email]
http://mail.scipy.org/mailman/listinfo/scipy-user