[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