On Tue, 18 Dec 2007, S Ellison wrote: > Hiding in the windows faq is the observation that "R's computation is > single-threaded, and so it cannot use more than one CPU". So multi-core > should make no difference other than allowing R to run with less > interruption from other tasks. That is often a significant advantage, > though.
Yes, but that is Windows-specific. On most other platforms you can benefit from using a multi-threaded BLAS, such as ATLAS, ACML or Dr Goto's. The speedup for linear algebra can be substantial (although sometimes it will slow things down). Luke Tierney has an experimental package to make use of parallel threads for some basic R computations which may appear in R 2.7.0. It should be possible to use a multi-threaded BLAS under Windows, but I know no one who has done it. There is a viable pthreads implementation for Windows, and I've tested Luke's experimental package using it. Some compilers' runtimes will be able to use parallel threads for other tasks. Since all the examples I am aware of are expensive commercial compilers, I suspect R will make limited use of them. (In particular, base R does not use the Fortran 9x vector operations at which many of these features are targeted: we probably would if we routinely used such compilers.) I've had dual-CPU desktops for more than ten years. Given how little speedup you are likely to get via parallel processing (only under ideal conditions do the optimized BLASes run >1.5x faster using two CPUs), the most effective way to make use of multiple CPUs has been to run multiple jobs: I typically run 3-4 at once to keep the CPUs fully used. One way to run multiple R processes to cooperate on a single task is to use a package such as snow to distribute the load. >>>> Andrew Perrin <[EMAIL PROTECTED]> 18/12/2007 01:13 >>> > On Mon, 17 Dec 2007, Kitty Lee wrote: > >> Dear R-users, >> >> I use R to run spatial stuff and it takes up a lot of ram. Runs can > take hours or days. I am thinking of getting a new desktop. Can R take > advantage of the dual-core system? >> >> I have a dual-core computer at work. But it seems that right now R is > using only one processor. >> >> The new computers feature quad core with 3GB of RAM. Can R take > advantage of the 4 chips? Or am I better off getting a dual core with > faster processing speed per chip? >> >> Thanks! Any advice would be really appreciated! >> >> K. > > If I have my information right, R will use dual- or quad-cores if it's > doing two (or four) things at once. The second core will help a little > bit > insofar as whatever else your machine is doing won't interfere with the > one core on which it's running, but generally things that take a single > thread will remain on a single core. > > As for RAM, if you're doing memory-bound work you should certainly be > using a 64-bit machine and OS so you can utilize the larger memory > space. They only have 3GB of RAM, which 32-bit OSes can address. The benefits really come with more than that. -- Brian D. Ripley, [EMAIL PROTECTED] 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 ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.