i386-apple-darwin9 failures
Ben Abbott
bpabbott at mac.com
Sat Dec 8 12:59:43 CST 2007
On Dec 8, 2007, at 11:44 AM, Ben Abbott wrote:
>
> On Dec 8, 2007, at 1:20 AM, Jack Howarth wrote:
>
>> John,
>> With qhull installed, the octave 2.9.18 build on
>> powerpc-apple-darwin9 against only gcc 4.2.2 compilers
>> is reduced to a single failure...
>>
>>>>>>> processing test_signal
>> ***** test
>> N=32;
>> x = (0:1:N-1)/N + 2;
>> y = detrend(x);
>> assert(all (all (abs (y) < 10*eps)));
>> !!!!! test failed
>> error: assert (all (all (abs (y) < 10 * eps))) failed
>>
>> Any ideas on how to debug that?
>> Jack
>
> Jack,
>
> The detrend function is a m-file script. It should be rather easy to
> debug.
>
> What are your values for "y" and "eps"?
>
> Ben
>
I've built 2.9.18 with jwe's patch regarding tm_zone on my ppc
running MacOSX 10.4 (Tiger) and encounter the same error as Jack. The
details for my build are below. All dependencies are installed using
the Fink package manager.
./autogen
[...]
./configure '--prefix=/sw' '--infodir=${prefix}/share/info' '--
mandir=${prefix}/share/man' '--libexecdir=${prefix}/lib' 'CFLAGS=-O0 -
g -ggdb3' 'LDFLAGS=-L/sw/lib' 'CPPFLAGS=-I/sw/include' 'CXXFLAGS=-O0 -
g -ggdb3' 'F77=/sw/bin/g95' 'FFLAGS=-O0'
[...]
checking for strptime... yes
[...]
checking whether strptime is broken... yes
[...]
configure: running /bin/sh ./configure --prefix=/sw '--infodir=$
{prefix}/share/info' '--mandir=${prefix}/share/man' '--libexecdir=$
{prefix}/lib' 'CFLAGS=-O0 -g -ggdb3' 'LDFLAGS=-L/sw/lib' 'CPPFLAGS=-I/
sw/include' 'CXXFLAGS=-O0 -g -ggdb3' 'F77=/sw/bin/g95' 'FFLAGS=-O0' --
cache-file=/dev/null --srcdir=.
[...]
Octave is now configured for powerpc-apple-darwin8.11.0
Source directory: .
Installation prefix: /sw
C compiler: gcc -Wall -W -Wshadow -O0 -g -ggdb3
C++ compiler: g++ -Wall -W -Wshadow -Wold-style-cast -O0
-g -ggdb3
Fortran compiler: /sw/bin/g95 -O0
Fortran libraries: -L/sw/lib -L/sw/bin/../lib/gcc-lib/powerpc-
apple-darwin8/4.0.3/ -L/sw/bin/../lib/gcc-lib/powerpc-apple-
darwin8/4.0.3 -L/sw/lib/gcc-lib/powerpc-apple-darwin8/4.0.3/ -L/usr/
lib/gcc// -L/sw/bin/../lib/gcc-lib/powerpc-apple-darwin8/4.0.3/// -L/
sw/lib/gcc-lib/powerpc-apple-darwin8/4.0.3/// -L/usr/lib// -lhdf5 -lz
-lf95 -lm -lgcc_eh -lSystemStubs -lmx -lSystem
BLAS libraries: -Wl,-framework -Wl,vecLib
FFTW libraries: -lfftw3
GLPK libraries: -lglpk
UMFPACK libraries: -lumfpack
AMD libraries: -lamd
CAMD libraries: -lcamd
COLAMD libraries: -lcolamd
CCOLAMD libraries: -lccolamd
CHOLMOD libraries: -lcholmod
CXSPARSE libraries: -lcxsparse
HDF5 libraries: -lhdf5
CURL libraries: -lcurl
REGEX libraries: -L/sw/lib -lpcre
QHULL libraries: -lqhull
LIBS: -lreadline -lncurses -lhdf5 -lz -lm
Default pager: less
gnuplot: gnuplot
Do internal array bounds checking: false
Build static libraries: false
Build shared libraries: true
Dynamic Linking: true (dyld)
Include support for GNU readline: true
64-bit array dims and indexing: false
[...]
make
[...]
make check
[...]
test_signal.m .......................................... PASS
7/8 FAIL 1
[...]
Summary:
PASS 3769
FAIL 1
from ./test/fntests.log
---------------------------------
>>>>> processing test_signal
***** test
N=32;
x = (0:1:N-1)/N + 2;
y = detrend(x);
assert(all (all (abs (y) <= 10*eps)));
!!!!! test failed
error: assert (all (all (abs (y) <= 10 * eps))) failed
---------------------------------
Checking "y" and "10*eps"
max(y)
ans = 2.2204e-15
octave:4> 10*eps
ans = 2.2204e-15
Replacing "<" with "<=" works, i.e.
assert(all (all (abs (y) <= 10*eps)));
On my Intel based Mac running 10.5 each element of y = 8.8818e-16
For my ppc based Mac running 10.4 the elements of y are varied and
increase monotonically
octave:11> y'
ans =
2.2204e-16
4.4409e-16
4.4409e-16
4.4409e-16
4.4409e-16
4.4409e-16
4.4409e-16
8.8818e-16
8.8818e-16
8.8818e-16
8.8818e-16
8.8818e-16
8.8818e-16
8.8818e-16
8.8818e-16
1.3323e-15
1.3323e-15
1.3323e-15
1.3323e-15
1.3323e-15
1.3323e-15
1.3323e-15
1.7764e-15
1.7764e-15
1.7764e-15
1.7764e-15
1.7764e-15
1.7764e-15
1.7764e-15
1.7764e-15
2.2204e-15
2.2204e-15
Thoughts? ... is there reason for concern?
If there is no reason to suspect a deeper problem, we might modify
the inequality to use ">=", or the tolerance of 10*eps to something
like N*eps.
Jack, can you confirm these solutions would work in your case as well?
Ben
More information about the Bug-octave
mailing list