[SciPy-dev] fft segfault, 64 Bit Opteron
Arnd Baecker
arnd.baecker at web.de
Fri Dec 9 13:03:11 CST 2005
On Fri, 9 Dec 2005, Travis Oliphant wrote:
[...]
> I've made a fix which should work better on 64-bit.
With scipy.__core_version__ = '0.8.1.1617'
we got it working - both on the Opteron and Itanium!!
In both cases gcc was used.
> More 64-bit testing needed.
>
> One trick to test the buffered section of code using smaller arrays is
> to set the buffer size to something very small (but a multiple of 16 ---
> 16 is the smallest). For arrays smaller than the buffer size, array's
> are just copied when a cast is needed. But, for larger arrays, the
> buffered code is exercised.
>
> For example:
>
> scipy.setbufsize(16)
> scipy.test(1,1)
Works fine for both machines!
Travis, there is something which is bothering me for a while,
and which clearly shows in Jan's build:
The fftw3 performance is very poor/weird
for one-dimensional complex arrays (this is on the Itanium2 with gcc):
Fast Fourier Transform
=================================================
| real input | complex input
-------------------------------------------------
size | scipy | Numeric | scipy | Numeric
-------------------------------------------------
100 | 1.28 | 1.59 | 10.06 | 1.57 (secs for 7000 calls)
1000 | 1.08 | 3.06 | 9.36 | 3.00 (secs for 2000 calls)
256 | 2.39 | 3.74 | 19.29 | 3.68 (secs for 10000 calls)
512 | 3.54 | 8.27 | 26.81 | 8.10 (secs for 10000 calls)
1024 | 0.57 | 1.44 | 4.29 | 1.41 (secs for 1000 calls)
2048 | 0.99 | 3.18 | 7.40 | 3.12 (secs for 1000 calls)
4096 | 0.96 | 3.04 | 6.93 | 2.99 (secs for 500 calls)
8192 | 2.04 | 7.91 | 14.40 | 7.85 (secs for 500 calls)
Multi-dimensional Fast Fourier Transform
===================================================
| real input | complex input
---------------------------------------------------
size | scipy | Numeric | scipy | Numeric
---------------------------------------------------
100x100 | 0.83 | 2.33 | 0.82 | 2.24 (secs for 100 calls)
1000x100 | 0.57 | 2.04 | 0.58 | 2.13 (secs for 7 calls)
256x256 | 0.68 | 1.62 | 0.67 | 1.63 (secs for 10 calls)
512x512 | 1.85 | 3.28 | 1.71 | 3.41 (secs for 3 calls)
Do you have any idea, what could be causing this?
Best, Arnd
More information about the Scipy-dev
mailing list