[R-sig-Debian] R and multi cpu ATLAS

Paul Johnson pauljohn32 at gmail.com
Thu Jun 3 18:31:02 CEST 2010

On Wed, Jun 2, 2010 at 3:27 PM, Jonathan Greenberg
<greenberg at ucdavis.edu> wrote:
> Dirk suggested I move this thread over here.  I am trying to get a
> multithreaded (multi CPU) version of ATLAS working with R, and have
> been unable, thus far, to get it working.  Has anyone gotten an
> multithreaded version of ATLAS working on Debian (64 bit)?  I've tried
> this:
> apt-get source atlas -t unstable
> cd atlas-3.8.3
> DEFAULTS=n fakeroot debian/rules custom
> but it is APPEARING to only install a single threaded version of
> ATLAS.  Running the test:
> a = matrix(rnorm(5000*5000), 5000, 5000)
> b = matrix(rnorm(5000*5000), 5000, 5000)
> c = a%*%b
> only shows a spike on a single CPU.
> Thanks to Dirk, I can confirm R is using the ATLAS I have
> configured/compiled/installed above, so that (I don't think) is the
> issue.

I've not done this, but will look into it.  I've recently installed
gotoblas2 on Ubuntu64 and I've run your test and see the same effect.
The calculations stay on one thread.

I wonder, though, if you can point me at some documentation that says
how it is *supposed* to work with R and Atlas. From what I can tall, R
is single threaded.  The Atlas routines want your program to ask for a
certain number of threads, they don't automatically spread out across
processors, do they?  I've only been reading on this 10 minutes, maybe
they do. Anyway, if you point us to some documents that show a single
threaded R is supposed to be able to fan out matrix algebra with
Atlas, please let me know.

Along similar lines, I've been investigating Scalapack to see how they
make it work.


Paul E. Johnson
Professor, Political Science
1541 Lilac Lane, Room 504
University of Kansas

More information about the R-SIG-Debian mailing list