[Rd] NA %*% 0 == 0 (PR#4582)
Prof Brian D Ripley
ripley at stats.ox.ac.uk
Wed Oct 15 13:50:01 MEST 2003
non-complex %*% is fundamentally done via a call to dgemm, so the answer is
going to depend on the BLAS library in use. When Doug Bates introduced
that version of matprod, we did discuss a bit the potential problems of
cases like this.
I've cross-checked, and that _is_ what is going on with my Linux box: try
tracing around the call to dgemm in matprod in array.c.
On Wed, 15 Oct 2003, Duncan Murdoch wrote:
> On Wed, 15 Oct 2003 09:06:39 +0200 (MET DST), you wrote:
> >R-1.8.0: Does not happen for me on WindowsNT4.0 either (self compiled
> >binary, gcc-3.3.1).
> >> Does for me (RedHat, R 1.8.0 and 1.7.0).
> >I guess the problem is compiler-dependend, because I get that "0" in a
> >self-compiled R-1.7.1 (has been compiled with gcc-3.2.?).
> >Is your binary self-compiled or from CRAN (Duncan Murdoch compiled the
> >CRAN binary with gcc-3.3.1 as well, AFAIK)?
> I get it in Win XP with both 1.8.0 (compiled with 3.3.1) and 1.7.1
> (compiled with 3.2.x). I'd guess one of two things:
> - it depends on the runtime library. (Windows versions use MSVCRT,
> but the exact version used depends on the system you're running on.)
> This doesn't seem to explain what happens on Linux, does it?
> - it depends on some uninitialized variable. do_matprod is
> surprisingly complicated, so I can't tell if this is what's happening.
> For some reason Insight won't debug that function properly.
Brian D. Ripley, ripley at 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 272860 (secr)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel