[SciPy-dev] 64-bit testing needed

Andrew Straw strawman at astraw.com
Wed Nov 9 04:24:36 CST 2005

Travis Oliphant wrote:
> I just made some changes to the slice parsing code to allow numbers 
> larger than a platform int.  This only affects 64-bit platforms where 
> sizeof(intp) != sizeof(int).
> I need someone to test the new SVN to make sure I changed all the right 
> places.  The changed subroutines are in arrayobject.c
> parse_index
> parse_subindex
> slice_GetIndices
> slice_coerce_index
> I'm especially interested in warnings on compile. 
> -Travis

I'm getting a segfault on my AMD64 debian sarge system in
scipy/fftpack/tests/test_basic.py. I haven't delved into it, and I don't
have fftw installed, FWIW.

newcore v. 1452
newscipy v. 1429

$ gdb ~/py24-amd64-dbg/bin/python
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-linux"...Using host libthread_db
library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /mnt/s2/home/astraw/py24-amd64-dbg/bin/python
[Thread debugging using libthread_db enabled]
[New Thread 46912507521968 (LWP 21586)]
Python 2.4.2 (#1, Nov  9 2005, 01:00:47)
[GCC 3.3.5 (Debian 1:3.3.5-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import scipy
Importing io to scipy
Importing fftpack to scipy
Importing special to scipy
Importing cluster to scipy
Importing sparse to scipy
Importing utils to scipy
Importing interpolate to scipy
Importing lib to scipy
Importing integrate to scipy
Importing signal to scipy
Importing optimize to scipy
Importing linalg to scipy
Importing stats to scipy
[190578 refs]
>>> scipy.test(10,10)

[snip: lots of tests passed]

bench_random (scipy.fftpack.basic.test_basic.test_fft)
                 Fast Fourier Transform
      |    real input     |   complex input
 size |  scipy  | Numeric |  scipy  | Numeric
  100 |    0.18
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912507521968 (LWP 21586)]
0x00002aaab2b06e35 in array_getattr (self=0x2aaab29cca48,
    name=0x2aaaabb51671 "__array_struct__") at Src/arrayobject.c:2206
2206                    inter->shape[i] = self->dimensions[i];
(gdb) bt
#0  0x00002aaab2b06e35 in array_getattr (self=0x2aaab29cca48,
    name=0x2aaaabb51671 "__array_struct__") at Src/arrayobject.c:2206
#1  0x00000000004401bb in PyObject_GetAttrString (v=0x2aaab29cca48,
    name=0x2aaaabb51671 "__array_struct__") at Objects/object.c:1012
#2  0x00002aaaabb3c221 in array_fromstructinterface (input=0x2aaab29cca48,
    intype=0x7fffffb0e620, flags=64) at arrayobject.c:5377
#3  0x00002aaaabb3d199 in array_fromobject (op=0x2aaab29cca48,
    typecode=0x7fffffb0e620, min_depth=0, max_depth=0, flags=64)
    at arrayobject.c:5606
#4  0x00002aaaabb3d587 in PyArray_FromAny (op=0x2aaab29cca48,
    typecode=0x7fffffb0e620, min_depth=0, max_depth=0, requires=64)
    at arrayobject.c:5758
#5  0x00002aaaabb4e038 in _array_fromobject (ignored=0x0,
    kws=0x103ce08) at scipy/base/src/multiarraymodule.c:2959
#6  0x00000000004dd3a0 in PyCFunction_Call (func=0x2aaaab6f7670,
    arg=0x2aaab2906260, kw=0x103ce08) at Objects/methodobject.c:77
#7  0x0000000000418982 in PyObject_Call (func=0x2aaaab6f7670,
    arg=0x2aaab2906260, kw=0x103ce08) at Objects/abstract.c:1756
#8  0x000000000048a83e in do_call (func=0x2aaaab6f7670,
    pp_stack=0x7fffffb0ece0, na=2, nk=2) at Python/ceval.c:3766
#9  0x000000000048a087 in call_function (pp_stack=0x7fffffb0ece0, oparg=514)
    at Python/ceval.c:3581
#10 0x0000000000485bb6 in PyEval_EvalFrame (f=0x1023958) at

[snip: rest of backtrace]

(gdb) up 10
#10 0x0000000000485bb6 in PyEval_EvalFrame (f=0x1023958) at
2163                            x = call_function(&sp, oparg);
(gdb) pystack
(66): asarray
(716): assert_array_almost_equal
(137): bench_random
/home/astraw/py24-amd64-dbg/lib/python2.4/unittest.py (245): run
/home/astraw/py24-amd64-dbg/lib/python2.4/unittest.py (280): __call__
(159): __call__
/home/astraw/py24-amd64-dbg/lib/python2.4/unittest.py (420): run
/home/astraw/py24-amd64-dbg/lib/python2.4/unittest.py (427): __call__
/home/astraw/py24-amd64-dbg/lib/python2.4/unittest.py (692): run
(348): test
<stdin> (1): ?

More information about the Scipy-dev mailing list