[Rd] R 2.6.0 make check fails on SGI origin 350 and

Martin Maechler maechler at stat.math.ethz.ch
Thu Nov 8 18:43:57 CET 2007


Thanks a lot Kamil,
for the confirmation:

>>>>> "kM" == kamil Marcinkowski <kamil at ualberta.ca>
>>>>>     on Thu, 8 Nov 2007 09:41:05 -0700 writes:

    kM> Hello list
    kM> Here are the results of the tests on R 2.6.0 patched:

    >> R version 2.6.0 Patched (2007-11-05 r43362)
    >> Copyright (C) 2007 The R Foundation for Statistical Computing
    >> ISBN 3-900051-07-0

    kM> ...

    >> >  str(.Machine, digits=7)
    >> List of 18
    >> $ double.eps           : num 2.220446e-16
    >> $ double.neg.eps       : num 1.110223e-16
    >> $ double.xmin          : num 2.225074e-308
    >> $ double.xmax          : num 1.797693e+308
    >> $ double.base          : int 2
    >> $ double.digits        : int 53
    >> $ double.rounding      : int 2
    >> $ double.guard         : int 0
    >> $ double.ulp.digits    : int -52
    >> $ double.neg.ulp.digits: int -53
    >> $ double.exponent      : int 11
    >> $ double.min.exp       : int -1022
    >> $ double.max.exp       : int 1024
    >> $ integer.max          : int 2147483647
    >> $ sizeof.long          : int 4
    >> $ sizeof.longlong      : int 8
    >> $ sizeof.longdouble    : int 16
    >> $ sizeof.pointer       : int 4
    >> 

    >> > dpois( 10, 10^(-290:-310), log=TRUE)
    >> [1] -6692.601 -6715.627 -6738.653 -6761.679 -6784.705 -6807.730 -6830.756
    >> [8] -6853.782 -6876.808 -6899.834 -6922.860 -6945.886 -6968.911 -6991.937
    >> [15] -7014.963 -7037.989 -7061.015 -7084.041     -Inf      -Inf      -Inf
    >> 


    >> > All.eq(dpois(  10*1:2, 3e-308, log=TRUE), c(-7096.08037610806,  
    >> -14204.2875435307))
    >> Error: could not find function "All.eq"


    kM> I copied the All.eq function from d-p-q-r-tests.R file  and rerun he  
    kM> test:

    >> > All.eq <- function(x,y) {
    >> all.equal.numeric(x,y, tolerance= 64*.Machine$double.eps,
    >> scale = max(0, mean(abs(x), na.rm=TRUE)))
    >> }
    >> + + + >
    >> > All.eq(dpois(  10*1:2, 3e-308, log=TRUE), c(-7096.08037610806,  
    >> -14204.2875435307))
    >> [1] TRUE

Very good. 

So after, the SGI only has slight problems with so-called
denormalized numbers; this is not considered a big problem
and the next versions of R will have the check above, instead of
the one that gave an error.

Thank you again for your feedback!
Regards,
Martin Maechler, ETH Zurich


    kM> Cheers,

    kM> Kamil

    kM> Kamil Marcinkowski                   Westgrid System Administrator
    kM> kamil at ualberta.ca                     University of Alberta site
    kM> Tel.780 492-0354                     Research Computing Support
    kM> Fax.780 492-1729                     Academic ICT
    kM> Edmonton, Alberta, CANADA    University of Alberta



More information about the R-devel mailing list