From ripley@stats.ox.ac.uk  Fri Mar 15 17:13:31 2002
From: ripley@stats.ox.ac.uk (ripley@stats.ox.ac.uk)
Date: Fri, 15 Mar 2002 17:13:31 +0000 (GMT)
Subject: [Rd] Thought on crossprod
In-Reply-To: <Pine.A41.4.44.0203150840250.25112-100000@homer14.u.washington.edu>
Message-ID: <Pine.LNX.4.31.0203151701340.26291-100000@gannet.stats>

On Fri, 15 Mar 2002, Thomas Lumley wrote:

> On Fri, 15 Mar 2002, Martin Maechler wrote:
>
> > >>>>> "JonR" == Jonathan Rougier <J.C.Rougier@durham.ac.uk> writes:
> >
> >     JonR> does not recognise the case where y is the same as x as special.  I'd
> >     JonR> like to extend crossprod to something like
> >
> >     >> crossprod
> >     JonR> function(x, y = NULL)
> >     JonR> if (is.null(y))
> >     JonR>    .Internal(crossprod.symm(x))
> >     JonR> else
> >     JonR>    .Internal(crossprod(x, y))
> >
> >     JonR> Before I start mesing up my R-1.4.1 installation, does anyone have any
> >     JonR> thoughts on this?
> >
> > Just for clarification:
> > The main point of your suggestion is to pass only half as much
> > data down to C, right?
> >
>
> If this can be done with the BLAS functions then halving the necessary
> memory bandwidth will also help -- that's one of the limiting factors in
> ATLAS, for example.

Looks like dsyrk can do this: despite the definition of *sy* BLAS routines
on my quick reference card it does not need a symmetric matrix, which is
why I overlooked it in earlier correspondence with Jonathan.  As from
1.5.0 dsyrk will be available in R.

-- 
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 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._


[Rd] Thought on crossprod
ripley@stats.ox.ac.uk