octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SLATEC error: Chebyshev series too short for specified accuracy


From: Camillo
Subject: Re: SLATEC error: Chebyshev series too short for specified accuracy
Date: Tue, 1 Mar 2011 19:47:41 +0100

On 01/mar/2011, at 18.58, Jarno Rajahalme wrote:

> 
> On Mar 1, 2011, at 18:12 , ext Camillo wrote:
> 
>> On 27/feb/2011, at 11.29, Jarno Rajahalme wrote:
>> 
>>> On Feb 25, 2011, at 3:30 , ext Ben Abbott wrote:
>>> 
>>>> On Feb 24, 2011, at 7:57 PM, Camillo wrote:
>>>> 
>>>>> Hello,
>>>>> 
>>>>> I am working on a Mac build of Octave 3.4.0. It's almost complete: it 
>>>>> passes 6908 tests, has 2 known failures, and 5 unexpected ones. Four of 
>>>>> these five are due to the same issue, an exception inside SLATEC: 
>>>>> "Chebyshev series too short for specified accuracy". I don't know Fortran 
>>>>> and I'm not sure how to best debug the issue. The compilers I am using 
>>>>> are gcc and gfortran 4.2.1.
>>>>> 
>>>>> I first posted this question on the general mailing list, where Ben Abbot 
>>>>> asked for more information, so here it is:
>>>>> 
>>>>>> Where did you get your gfortran?
>>>>> 
>>>>> http://r.research.att.com/gfortran-42-5664.pkg
>>>>> 
>>>>>> What dependencies did you install?
>>>>> 
>>>>> All, except for gnuplot and ghostscript.
>>>>> 
>>>>>> What was the result of running ./configure? (it gives a summary at the 
>>>>>> end)
>>>>>> 
>>>>>> Finally, please copy-n-paste the actual error.
>>>>> 
>>>>> I'll attach the configure summary, and here are the insteresting parts of 
>>>>> the output of "make check":
>>>>> 
>>>>> --------------------------------------------------------------------------------
>>>>> src/DLD-FUNCTIONS/besselj.cc ........................... PASS  180/180 
>>>>> src/DLD-FUNCTIONS/betainc.cc ........................... ***MESSAGE FROM 
>>>>> ROUTINE INITS IN LIBRARY SLATEC.
>>>>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>>>>> *  Chebyshev series too short for specified accuracy
>>>>> *  ERROR NUMBER = 1
>>>>> *   
>>>>> ***END OF MESSAGE
>>>>> 
>>>>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>>>>> 0          ERROR MESSAGE SUMMARY
>>>>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>>>>> SLATEC     INITS      Chebyshev series too         1         1         1
>>>>> 
>>>>> ***MESSAGE FROM ROUTINE INITS IN LIBRARY SLATEC.
>>>>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>>>>> *  Chebyshev series too short for specified accuracy
>>>>> *  ERROR NUMBER = 1
>>>>> *   
>>>>> ***END OF MESSAGE
>>>>> 
>>>>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>>>>> 0          ERROR MESSAGE SUMMARY
>>>>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>>>>> SLATEC     INITS      Chebyshev series too         1         1         2
>>>>> 
>>>>> PASS    4/6    FAIL 2
>>>>> 
>>>>> ...
>>>>> 
>>>>> src/DLD-FUNCTIONS/gammainc.cc .......................... ***MESSAGE FROM 
>>>>> ROUTINE INITS IN LIBRARY SLATEC.
>>>>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>>>>> *  Chebyshev series too short for specified accuracy
>>>>> *  ERROR NUMBER = 1
>>>>> *   
>>>>> ***END OF MESSAGE
>>>>> 
>>>>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>>>>> 0          ERROR MESSAGE SUMMARY
>>>>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>>>>> SLATEC     INITS      Chebyshev series too         1         1         3
>>>>> 
>>>>> ***MESSAGE FROM ROUTINE INITS IN LIBRARY SLATEC.
>>>>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>>>>> *  Chebyshev series too short for specified accuracy
>>>>> *  ERROR NUMBER = 1
>>>>> *   
>>>>> ***END OF MESSAGE
>>>>> 
>>>>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>>>>> 0          ERROR MESSAGE SUMMARY
>>>>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>>>>> SLATEC     INITS      Chebyshev series too         1         1         4
>>>>> 
>>>>> PASS    2/4    FAIL 2
>>>>> --------------------------------------------------------------------------------
>>>>> 
>>>>> This is the information about the fifth error from fntests.log:
>>>>> 
>>>>> --------------------------------------------------------------------------------
>>>>>>>>>> processing 
>>>>>>>>>> /private/tmp/homebrew-octave-3.4.0-kEbx/octave-3.4.0/src/mappers.cc
>>>>> ***** assert(arg (single(-1)), single(pi));
>>>>> !!!!! test failed
>>>>> assert (arg (single (-1)),single (pi)) expected
>>>>> 3.1416
>>>>> but got
>>>>> 3.1416
>>>>> values do not match
>>>>> --------------------------------------------------------------------------------
>>>>> 
>>>>> I know about the problem with Apple's BLAS and gfortran, and I am using a 
>>>>> small wrapper library for the affected routines (as suggested in 
>>>>> <http://developer.apple.com/hardwaredrivers/ve/errata.html#fortran_conventions>);
>>>>>  this is the "dotwrp" library you can see in the configure summary. I was 
>>>>> told that a different wrapper has been proposed on this list, replacing 
>>>>> some functions from LAPACK as well; I was wondering if anybody has a 
>>>>> simple test case for some of those functions, so I could quickly check if 
>>>>> the library I'm using is sufficient.
>>>>> 
>>>>> Best regards,
>>>>> Camillo Lugaresi
>>>>> 
>>>>> <configure summary>
>>>> 
>>>> I am also using 4.2.1 and the gfortran from AT&T.
>>>> 
>>>> Iv'e compiled for 32bit and do not see the SLATEC problem.
>>>> 
>>>> Jarno / Richard, might this be related to the 64bit vecLib problem?
>>>> 
>>> 
>>> I recall seeing similar error messages in the past. I recommend trying with 
>>> the patch at http://savannah.gnu.org/patch/index.php?7468.
>>> 
>>> That patch provider gfortran native calling convention stubs for Apple BLAS 
>>> and LAPACK calls. However, it does not otherwise replace any LAPACK 
>>> routines. 
>>> 
>>> Jarno
>> 
>> I tried applying that patch. Rather than fighting with autotools (OS X comes 
>> with an older version than needed), I edited the configuration manually, but 
>> I think I got it to work. However, when I run "make check", I get this:
>> 
>> --------------------------------------------------------------------------------
>> Integrated test scripts:
>> 
>> src/DLD-FUNCTIONS/besselj.cc ........................... PASS  180/180 
>> src/DLD-FUNCTIONS/betainc.cc ........................... ***MESSAGE FROM 
>> ROUTINE INITS IN LIBRARY SLATEC.
>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>> *  Chebyshev series too short for specified accuracy
>> *  ERROR NUMBER = 1
>> *   
>> ***END OF MESSAGE
>> 
>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>> 0          ERROR MESSAGE SUMMARY
>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>> SLATEC     INITS      Chebyshev series too         1         1         1
>> 
>> ***MESSAGE FROM ROUTINE INITS IN LIBRARY SLATEC.
>> ***POTENTIALLY RECOVERABLE ERROR, PROG ABORTED, TRACEBACK REQUESTED
>> *  Chebyshev series too short for specified accuracy
>> *  ERROR NUMBER = 1
>> *   
>> ***END OF MESSAGE
>> 
>> ***JOB ABORT DUE TO UNRECOVERED ERROR.
>> 0          ERROR MESSAGE SUMMARY
>> LIBRARY    SUBROUTINE MESSAGE START             NERR     LEVEL     COUNT
>> SLATEC     INITS      Chebyshev series too         1         1         2
>> 
>> PASS    4/6    FAIL 2
>> src/DLD-FUNCTIONS/bsxfun.cc ............................ PASS   72/72  
>> src/DLD-FUNCTIONS/cellfun.cc ........................... PASS   77/77  
>> src/DLD-FUNCTIONS/chol.cc .............................. PASS   26/26  
>> src/DLD-FUNCTIONS/conv2.cc ............................. PASS    4/4   
>> src/DLD-FUNCTIONS/convhulln.cc ......................... PASS    2/2   
>> src/DLD-FUNCTIONS/dassl.cc ............................. PASS    4/4   
>> src/DLD-FUNCTIONS/det.cc ............................... PASS    5/5   
>> src/DLD-FUNCTIONS/dlmread.cc ........................... PASS   20/20  
>> src/DLD-FUNCTIONS/dmperm.cc ............................ PASS    5/5   
>> src/DLD-FUNCTIONS/eig.cc ............................... PASS   20/20  
>> src/DLD-FUNCTIONS/eigs.cc ..............................panic: Segmentation 
>> fault -- stopping myself...
>> make[2]: *** [check] Segmentation fault
>> make[1]: *** [check-recursive] Error 1
>> make: *** [check] Error 2
>> --------------------------------------------------------------------------------
>> 
>> What output do you get for "make check"?
>> 
> 
> I get only one FAIL on mappers, which is known and due to how Apple 
> implements atan2f.
> 
> Did you note that with the BLAS wrapper you should NOT use -ff2c for Octave 
> nor any dependencies (all fortran libraries).
> 
>  Jarno


Yes, I am not using -ff2c. But I remember now that I had compiled qrupdate with 
my BLAS workaround instead of yours, so there may be a conflict there. Or 
perhaps I simply made a mistake in editing the configuration by hand. I'll try 
to set up all the necessary tools to bootstrap a development snapshot when I 
have time (unless someone wants to provide a tarball with the patch applied and 
configure regenerated).

CL

reply via email to

[Prev in Thread] Current Thread [Next in Thread]