[R] R on 64-bit Linux machine

Prof Brian Ripley ripley at stats.ox.ac.uk
Sat Nov 13 15:57:45 CET 2004


On Sat, 13 Nov 2004, Peter Dalgaard wrote:

> Peter Dalgaard <p.dalgaard at biostat.ku.dk> writes:
>
>> Prof Brian Ripley <ripley at stats.ox.ac.uk> writes:
>>
>>>> ATLAS, you need to build shared ATLAS libraries (rather than
>>>> static).  This requires some modifications to the configuation files
>>>> for ATLAS.  But my experience shows that R itself builds out of the
>>>> box on these systems.
>>>
>>> However, you will almost certainly get better performance out of the
>>> Goto BLAS implementations, and they are shared (and easy to use, much
>>> more so than ATLAS).
>>
>> I actually have different experience in the multithreaded case, at
>> least with my favourite "benchmark suite": inversion of a large
>> matrix. I'd do some timings, but I have this ATLAS compile running
>> just now...
>
> Specifically, here's what I got:
>
> pd at linux:~/r-devel> echo 'set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))' | BUILD/bin/R -q --vanilla
>> set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))
> [1] 218.00   1.27 219.62   0.00   0.00
>>
> pd at linux:~/r-devel> echo 'set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))' | BUILD-GOTO/bin/R -q --vanilla
>> set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))
> [1] 29.12  1.39 32.21  0.00  0.00
>>
> pd at linux:~/r-devel> echo 'set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))' | BUILD-ATLAS/bin/R -q --vanilla
>> set.seed(1);M<-matrix(rnorm(9e6),3e3);system.time(solve(M))
> [1]  3.24  1.31 21.45 31.75  0.24
>>
>
> So ATLAS is faster than GOTO by about 10 seconds. It is a bit odd that

Not on total CPU time (it's slower by about the margin I would expect), 
only on elapsed time.

> the GOTO timings don't seem to include any subprocess time but it
> should be the threaded library libgoto_opt64p-r0.93.so (I know;
> there's a 0.96 now, will upgrade).

I get (on a dual Opteron 248 with 0.96-2)

[1] 20.59  1.01 19.10  0.00  0.00

which note is using more than 100% CPU time.  Are you sure you are using
multiple threads with Goto?

I have never built a threaded ATLAS for that machine, as in our 
environment people are normally running multiple jobs and it is total CPU 
time that counts.

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




More information about the R-help mailing list