Re: [Rd] make check of R-alpha_2006-04-08_r37675 fails: qbeta

From: Prof Brian Ripley <ripley_at_stats.ox.ac.uk>
Date: Sun 09 Apr 2006 - 20:30:46 GMT

On Sun, 9 Apr 2006, Peter Dalgaard wrote:

> bhs2@mevik.net (Bjørn-Helge Mevik) writes:
>
>> make check of R-alpha_2006-04-08_r37675 fails on Debian GNU/Linux 3.1 running
>> on an Intel P4 computer.
>>
>>> version
>> _
>> platform i686-pc-linux-gnu
>> arch i686
>> os linux-gnu
>> system i686, linux-gnu
>> status alpha
>> major 2
>> minor 3.0
>> year 2006
>> month 04
>> day 08
>> svn rev 37675
>> language R
>> version.string Version 2.3.0 alpha (2006-04-08 r37675)
>>
>> I'm using ATLAS with the SSE2 extensions, and get the same error with ATLAS
>> 3.2.1 (packages atlas2-* 3.2.1ln-15 in Debian) and 3.6.0 (packages atlas3-*
>> 3.6.0-19 in Debian). I've also tried without external BLAS (--without-blas),
>> but the error still occurs.
>>
>> 43 (0) $ ./configure
>> [...]
>> R is now configured for i686-pc-linux-gnu
>>
>> Source directory: .
>> Installation directory: /usr/local
>>
>> C compiler: gcc -g -O2 -std=gnu99
>> Fortran 77 compiler: g77 -g -O2
>>
>> C++ compiler: g++ -g -O2
>> Fortran 90/95 compiler: g77 -g -O2
>>
>> Interfaces supported: X11, tcltk
>> External libraries: readline, BLAS(ATLAS)
>> Additional capabilities: PNG, JPEG, iconv, MBCS, NLS
>> Options enabled: R profiling
>>
>> Recommended packages: yes
>>
>> 44 (0) $ make
>> [...]
>>
>> 45 (0) $ make check
>> [...]
>> running code in 'd-p-q-r-tests.R' ... OK
>> comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save' ...777,778d776
>> < Warning message:
>> < full precision was not achieved in 'qbeta'
>> make[3]: *** [d-p-q-r-tests.Rout] Error 1
>> [...]
>>
>> 46 (0) $ diff tests/d-p-q-r-tests.Rout.{save,fail}
>> 3c3
>> < Version 2.3.0 alpha (2006-04-03 r37628)
>> ---
>>> Version 2.3.0 alpha (2006-04-08 r37675)
>> 791a792,793
>>> Warning message:
>>> full precision was not achieved in 'qbeta'
>> 1073c1075
>> < Time elapsed: 2.53 0.03 2.55 0 0
>> ---
>>> Time elapsed: 4.939 0.024 4.967 0 0
>>
>> The (hopefully) interesting part of tests/d-p-q-r-tests.Rout.fail:
>>
>>> ## Check q*(p* ( log ), log) = identity
>>> All.eq(Rbeta, qbeta (log(Pbeta), shape1 = .8, shape2 = 2, log=TRUE))
>> [1] TRUE
>> Warning message:
>> full precision was not achieved in 'qbeta'
>>

>> Please let me know if there is more I can provide to help trace this!
>
> I suspect that this is related to recent changes in the zero-finder,
> and that it is relatively benign. (If it is the effect that I'm
> thinking of, then the warning is spurious, and it is mainly a matter
> of whether we want to try to get rid of the warning or update the
> .Rout.save file.)

I am not seeing it on my platforms (FC3 x86_64 and i686 Linux with gcc 3.4.5 and 4.1.0, i386 Windows and Solaris, with various compilers) and the zero-finder changes postdate r37675 (and qbeta does not use it). I think several other people are testing i686 Debian, including the daiuly CRAN package checks ....

I suspect it is a real (and long-standing) problem of loss of accuracy (2.2.1 did a check but did not report the results: it seems to be a convergence failure looking at qbeta.c). What compiler version is this?

ATLAS is not involved. You'll need to trace qbeta.c.

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595


______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel

Received on Mon Apr 10 06:56:49 2006

This archive was generated by hypermail 2.1.8 : Mon 10 Apr 2006 - 00:16:57 GMT