[Rd] ATLAS threaded 64 bit Opteron build for R: need -fPIC

Douglas Bates bates at stat.wisc.edu
Fri Feb 27 18:39:45 MET 2004


Martin Maechler <maechler at stat.math.ethz.ch> writes:

> >>>>> "PD" == Peter Dalgaard <p.dalgaard at biostat.ku.dk>
> >>>>>     on 26 Feb 2004 15:44:16 +0100 writes:
> 
>     PD> Douglas Bates <bates at stat.wisc.edu> writes:
>     >> Have you tried configuring R with Goto's BLAS
>     >> http://www.cs.utexas.edu/users/kgoto/
>     >> 
>     >> I haven't worked with Opteron or Athlon64 computers but I understand
>     >> that Goto's BLAS are very effective on those machines.  Furthermore
>     >> Goto's BLAS are (only) available as .so libraries so you don't need to
>     >> mess with creating the .so version.
> 
>     PD> I tried it, yes. Somewhat to my surprise, it seemed to be not quite as
>     PD> fast as the threaded ATLAS, but I wasn't very systematic about the
>     PD> benchmarking.
> 
>     PD> (and the Goto items have license issues, which get in the way for
>     PD> binary distributions.)
> 
> Thanks a lot, Peter, Brian, Doug, for your feedbacks!
> In the mean time, I have three running versions of R(-devel) on
> the 64-Opteron
> - "plain"
> - linked against threaded GOTO
> - linked against threaded (static) ATLAS  (using -fPIC for compilation;
> 					   "large" Rlapack)
> and I find that GOTO is faster than ATLAS
> consistently (between ~ 5-20%) for several tests
> (square matrices; %*% and solve).
> ATLAS is still an order of magnitude faster than "plain" for
> 3000x3000 matrices.

Would you be willing to post a brief summary of comparative timings?

I have thought at times that it may be worthwhile collecting
comparative timings for different combinations of
                 processor/OS/memory size and speed/
on "typical" tasks in R.  As with any benchmark the results will
artificial but they can be of some help when considering what hardware
to purchase.  Bioconductor users may find it particularly helpful to
be able to evaluate how much they will need to pay to be able to
analyze large data sets reasonably quickly.

One easily-obtained timing is at the end of
$RSRC/tests/Examples/base-Ex.Rout after 'make;make check'.



More information about the R-devel mailing list