[SciPy-dev] new core, Itanium/Intel compiler probs

Arnd Baecker arnd.baecker at web.de
Mon Dec 5 05:21:38 EST 2005


Hi,

we just got access to a new 64 Bit toy with many CPUs - so scipy
has to be installed there ;-).

The recommended compiler is the Intel one (icc,ifc).
Scipy core builds/installs alright, using
  python setup.py config --compiler=intel  build
  python setup.py install --prefix=$DESTDIR

but a scipy.test(10,10) gives the folling failures.

Note that during compile *many* warnings pass by
(Already compiling python 2.4.2 gives many warnings ...,
but that's a different story...)



======================================================================
FAIL: check_nd (scipy.base.index_tricks.test_index_tricks.test_grid)
----------------------------------------------------------------------
Traceback (most recent call last):
  File
"/home/baecker/python/newscipy/lib/python2.4/site-packages/scipy/base/tests/test_index_tricks.py",
line 30, in check_nd
    assert_array_almost_equal(c[0][-1,:],ones(10,'d'),11)
  File
"/home/baecker/python//newscipy/lib/python2.4/site-packages/scipy/test/testing.py",
line 758, in assert_array_almost_equal
    assert cond,\
AssertionError:
Arrays are not almost equal (mismatch 100.0%):
        Array 1: [-0.555555555556 -0.555555555556 -0.555555555556
-0.555555555556
 -0.555555555556 -0.555555555556 -0.555555555556 -0.555...
        Array 2: [ 1.  1.  1.  1.  1.  1.  1.  1.  1.  1.]


======================================================================
FAIL: check_basic
(scipy.base.function_base.test_function_base.test_cumprod)
----------------------------------------------------------------------
Traceback (most recent call last):
  File
"/home/baecker/python/newscipy/lib/python2.4/site-packages/scipy/base/tests/test_function_base.py",
line 163, in check_basic
    1320, 6600, 26400],ctype))
  File
"/home/baecker/python//newscipy/lib/python2.4/site-packages/scipy/test/testing.py",
line 733, in assert_array_equal
    assert cond,\
AssertionError:
Arrays are not equal (mismatch 57.1428571429%):
        Array 1: [  1.   2.  20.   0.   0.   0.   0.]
        Array 2: [  1.0000000000000000e+00   2.0000000000000000e+00
2.0000000000000000e+01
   2.2000000000000000e+02   1.32000000000000...


======================================================================
FAIL: check_basic
(scipy.base.function_base.test_function_base.test_cumsum)
----------------------------------------------------------------------
Traceback (most recent call last):
  File
"/home/baecker/python/newscipy/lib/python2.4/site-packages/scipy/base/tests/test_function_base.py",
line 122, in check_basic
    assert_array_equal(cumsum(a), array([1,3,13,24,30,35,39],ctype))
  File
"/home/baecker/python//newscipy/lib/python2.4/site-packages/scipy/test/testing.py",
line 733, in assert_array_equal
    assert cond,\
AssertionError:
Arrays are not equal (mismatch 57.1428571429%):
        Array 1: [  1.   3.  13.  11.  17.   5.   9.]
        Array 2: [  1.   3.  13.  24.  30.  35.  39.]


======================================================================
FAIL: Test add, sum, product.
----------------------------------------------------------------------
Traceback (most recent call last):
  File
"/home/baecker/python/newscipy/lib/python2.4/site-packages/scipy/base/tests/test_ma.py",
line 163, in check_testAddSumProd
    self.failUnless (eq(scipy.add.accumulate(x), add.accumulate(x)))
AssertionError

----------------------------------------------------------------------
Ran 157 tests in 1.532s

FAILED (failures=4)
Out[2]: <unittest.TextTestRunner object at 0x200000000186b110>


There is more lurking: Trying to find out the version afterwards:
  In [3]: import scipy
  In [4]: scipy.__c<TAB>Segmentation fault
(Aha, works reproducibly, also from a fresh shell  ... - see
the idb backtrace below)

Anyway, this is
In [2]: scipy.__core_version__
Out[2]: '0.7.4.1561'
and I just checked that the very same version works fine
on the other 64 Bit machine.

What should I do next? I will look into the definitions
of the tests which fail.
One option might be that I send the full build log with all
its warnings...

For example, there are

build/src/scipy/base/src/arraytypes.inc(5007): warning #1338: arithmetic
on pointer to void or function type
  	for(i=0; i<n; i++, ip+=skip, op+=oskip) {

build/src/scipy/base/src/arraytypes.inc(7028): remark #869: parameter
"ignore" was never referenced
  SHORT_scan (FILE *fp, short *ip, char *sep, void *ignore)

scipy/corelib/fftpack_lite/fftpack_litemodule.c(168): remark #1682:
implicit conversion of a 64-bit integral type to a smaller integral type
(potential portability problem)
    npts = data->dimensions[data->nd-1];

and many more


Best, Arnd

P.S.:
Concerning the segfault with ipython:

idb -gdb
Linux Application Debugger for Itanium(R)-based applications, Version
9.0-10, Build 20050413
(idb) file /home/baecker/python/bin/ipython
Reading symbols from /work/home/baecker/python/bin/python...
Warning: bad source correlation found. Further instances ignored.
done.
Warning: expected to attach to loader, but couldn't: Invalid argument
(idb) run
Warning: expected to attach to loader, but couldn't: Invalid argument
Starting program: /work/home/baecker/python/bin/python
Python 2.4.2 (#1, Dec  2 2005, 18:05:36)
Type "copyright", "credits" or "license" for more information.

IPython 0.6.16.svn -- An enhanced Interactive Python.
?       -> Introduction to IPython's features.
%magic  -> Information about IPython's 'magic' % functions.
help    -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.

In [1]: import scipy
Importing test to scipy
Importing base to scipy
Importing basic to scipy

In [2]: scipy.__coThread received signal SEGV
rl_complete_internal () in /lib/libreadline.so.4.3
(idb) bt
#0  0x2000000000cf7c40 in rl_complete_internal () in
/lib/libreadline.so.4.3
#1  0x2000000000cf8550 in rl_complete () in /lib/libreadline.so.4.3
#2  0x2000000000ce7950 in _rl_dispatch_subseq () in
/lib/libreadline.so.4.3
#3  0x2000000000ce7bc0 in _rl_dispatch () in /lib/libreadline.so.4.3
#4  0x2000000000ce7ec0 in readline_internal_char () in
/lib/libreadline.so.4.3
#5  0x2000000000ce8f70 in readline () in /lib/libreadline.so.4.3
#6  0x2000000000cadcb0 in readline_until_enter_or_signal (prompt=0x0,
signal=0x0) at readline.c:834
#7  0x2000000000cad8d0 in call_readline (sys_stdin=0x0, sys_stdout=0x0,
prompt=0x0) at readline.c:864
#8  0x400000000021dea0 in PyOS_Readline (sys_stdin=0x0, sys_stdout=0x0,
prompt=0x0) at Parser/myreadline.c:208
#9  0x4000000000135510 in builtin_raw_input (self=0x0, args=0x0) at
Python/bltinmodule.c:1631
#10 0x400000000023bb80 in PyCFunction_Call (func=0x0, arg=0x0, kw=0x0) at
Objects/methodobject.c:73
#11 0x40000000001597f0 in call_function (pp_stack=0x0, oparg=0) at
Python/ceval.c:3558
#12 0x4000000000149a60 in PyEval_EvalFrame (f=0x8000000000015201) at
Python/ceval.c:2163
#13 0x4000000000147b10 in PyEval_EvalCodeEx (co=0x6b6f6f, globals=0x0,
locals=0x6000000000049210, args=0x2000000000ac65a8, argcount=2462048,
kws=0x4000000000259140, kwcount=0, defs=0xa8c7e0, defcount=1, closure=0x0)
at Python/ceval.c:2736
#14 0x400000000015b2b0 in fast_function (func=0x6000000000049210,
pp_stack=0x2000000000ac65a8, n=2462048, na=2462016, nk=0) at
Python/ceval.c:3651
#15 0x400000000015a260 in call_function (pp_stack=0x6000000000049210,
oparg=11298216) at Python/ceval.c:3579
#16 0x4000000000149a60 in PyEval_EvalFrame (f=0x6) at Python/ceval.c:2163
#17 0x4000000000147b10 in PyEval_EvalCodeEx (co=0x4000000000259160,
globals=0x4000000000259140, locals=0x6000000000240510, args=0x0,
argcount=7249808, kws=0x0, kwcount=0, defs=0x0, defcount=1, closure=0x0)
at Python/ceval.c:2736
#18 0x400000000015b2b0 in fast_function (func=0x6000000000240510,
pp_stack=0x0, n=7249808, na=0, nk=0) at Python/ceval.c:3651
#19 0x400000000015a260 in call_function (pp_stack=0x6000000000240510,
oparg=0) at Python/ceval.c:3579
#20 0x4000000000149a60 in PyEval_EvalFrame (f=0x0) at Python/ceval.c:2163
#21 0x4000000000147b10 in PyEval_EvalCodeEx (co=0x0, globals=0x0,
locals=0x0, args=0x2000000000030073, argcount=0, kws=0x200000000067d930,
kwcount=0, defs=0x4000000000000001, defcount=1, closure=0x0) at
Python/ceval.c:2736
#22 0x400000000015b2b0 in fast_function (func=0x0,
pp_stack=0x2000000000030073, n=0, na=6805808, nk=0) at Python/ceval.c:3651
#23 0x400000000015a260 in call_function (pp_stack=0x0, oparg=196723) at
Python/ceval.c:3579
#24 0x4000000000149a60 in PyEval_EvalFrame (f=0x1a3301) at
Python/ceval.c:2163
#25 0x4000000000147b10 in PyEval_EvalCodeEx (co=0x60000fffffffa5c0,
globals=0x0, locals=0x6000000000049210, args=0x6000000000049218,
argcount=2462048, kws=0x4000000000259140, kwcount=0,
defs=0x60000000000129a0, defcount=2, closure=0x0) at Python/ceval.c:2736
#26 0x400000000015b2b0 in fast_function (func=0x6000000000049210,
pp_stack=0x6000000000049218, n=2462048, na=2462016, nk=0) at
Python/ceval.c:3651
#27 0x400000000015a260 in call_function (pp_stack=0x6000000000049210,
oparg=299544) at Python/ceval.c:3579
#28 0x4000000000149a60 in PyEval_EvalFrame (f=0x60000000000472ac) at
Python/ceval.c:2163
#29 0x4000000000147b10 in PyEval_EvalCodeEx (co=0x0, globals=0x0,
locals=0x60000000000b1240, args=0x6000000000053cd0, argcount=0,
kws=0xfff5, kwcount=248200, defs=0x0, defcount=0, closure=0x0) at
Python/ceval.c:2736
#30 0x40000000001463a0 in PyEval_EvalCode (co=0x60000000000b1240,
globals=0x6000000000053cd0, locals=0xf200000000000000) at
Python/ceval.c:484
#31 0x40000000001c6d60 in run_err_node (n=0x60000000000b1240,
filename=0x6000000000053cd0 "\360cn", globals=0xf200000000000000,
locals=0xfff5, flags=0x200000000003c988) at Python/pythonrun.c:1265
#32 0x40000000001c2010 in PyRun_SimpleFileExFlags (fp=0x10,
filename=0x60000fffffffb022 "/home/baecker/python/bin/ipython", closeit=0,
flags=0x0) at Python/pythonrun.c:1243
#33 0x40000000001c38d0 in PyRun_AnyFileExFlags (fp=0x10,
filename=0x60000fffffffb022 "/home/baecker/python/bin/ipython", closeit=0,
flags=0x0) at Python/pythonrun.c:664
#34 0x4000000000013e70 in Py_Main (argc=0, argv=0x0) at Modules/main.c:484
#35 0x4000000000012b70 in main (argc=0, argv=0x0) at Modules/python.c:23
#36 0x200000000044d850 in __libc_start_main () in /lib/tls/libc.so.6.1
#37 0x4000000000012980 in _start () in
/work/home/baecker/python/bin/python




More information about the SciPy-Dev mailing list