Hi! I have installed SciPy 0.5.2 for Python 2.5 on several Windows computers, using the precompiled binary scipy-0.5.2.win32-py2.5.exe. This works fine on some, but on others it crashes Python with an Illegal Instruction exception. The crash is easy to find by running the test() suite or by attempting to make any use of scipy.integrate.quad. Digging into it, I see that the exception comes from _quadpack.pyd, and it dies at a MOVSD instruction. I believe MOVSD is an SSE2 instruction that is only implemented on the more recent CPUs from both Intel and AMD. Has anyone out there compiled win32 binaries for Python 2.5 and older CPUs without SSE2? If so, could I beg for a copy? If not, I'll dig into getting set up to compile SciPy myself. Thanks, -- Jonathan Griffitts AnyWare Engineering Boulder, CO, USA
In message <45C510E8.3060602@comcast.net>, John Hassler <hasslerjc@comcast.net> wrote
Jonathan Griffitts wrote: Hi! I have installed SciPy 0.5.2 for Python 2.5 on several Windows computers, using the precompiled binary scipy-0.5.2.win32-py2.5.exe. This works fine on some, but on others it crashes Python with an Illegal Instruction exception. The crash is easy to find by running the test() suite or by attempting to make any use of scipy.integrate.quad. Digging into it, I see that the exception comes from _quadpack.pyd, and it dies at a MOVSD instruction. I believe MOVSD is an SSE2 instruction that is only implemented on the more recent CPUs from both Intel and AMD.
It's a problem with the Athlon. It also happened with a previous version of SciPy this summer.
This is not just an Athlon issue. It also fails on a Pentium 3 processor. To reiterate, this binary (scipy-0.5.2.win32-py2.5) uses SSE2 instructions, which are available only on the newer CPUs from both AMD and Intel. -- Jonathan Griffitts AnyWare Engineering Boulder, CO, USA
On 2/7/07, Jonathan Griffitts <griffitts_lists@comcast.net> wrote:
In message <45C510E8.3060602@comcast.net>, John Hassler <hasslerjc@comcast.net> wrote
Jonathan Griffitts wrote: Hi! I have installed SciPy 0.5.2 for Python 2.5 on several Windows computers, using the precompiled binary scipy-0.5.2.win32-py2.5.exe. This works fine on some, but on others it crashes Python with an Illegal Instruction exception. The crash is easy to find by running the test() suite or by attempting to make any use of scipy.integrate.quad. Digging into it, I see that the exception comes from _quadpack.pyd, and it dies at a MOVSD instruction. I believe MOVSD is an SSE2 instruction that is only implemented on the more recent CPUs from both Intel and AMD.
It's a problem with the Athlon. It also happened with a previous version of SciPy this summer.
This is not just an Athlon issue. It also fails on a Pentium 3 processor.
To reiterate, this binary (scipy-0.5.2.win32-py2.5) uses SSE2 instructions, which are available only on the newer CPUs from both AMD and Intel.
Thanks for the info. We linked the 0.5.0 and (I think) 0.4.9 Win32 binaries to the ATLAS library labelled "ATLAS-P2" that doesn't require SSE2 instructions. Sorry that we've reverted to the SSE2 builds in the the last release or two. Rebuilding takes time, and it may be more productive for us to wait for the next release, when we'll try to get it right. Meanwhile I've changed the release notes on the SourceForge page to reflect the SSE2 requirement. I'll also explain the situation on the SciPy.org Download page (as soon as I can log in ;) ... -- Ed
participants (3)
-
Ed Schofield -
John Hassler -
Jonathan Griffitts