[Rd] R, Wine, and multi-threadedness.
Prof Brian Ripley
ripley at stats.ox.ac.uk
Thu Oct 13 13:28:21 CEST 2005
On Thu, 13 Oct 2005, Hin-Tak Leung wrote:
> I managed to install Win32 R 2.2.0 with the CRAN Innosetup
> installer under Wine on x86 linux a few days ago. However, on trying
> to run it, MSVCP60.DLL is missing. So here is a sort of a bug
> report, and a couple of questions:
This is a sort of bug report on your report. The rw-FAQ makes clear that
DLL is _only_ required by R if you select East Asian support, and that is
not the default. It seems you chose a non-default option. Please go back
and reinstall R without East Asian support.
> (1) I think the R binary in the CRAN Innosetup installer was built with
> mingw. The R-windows FAQ did mention that this DLL is required *for
> Chinese/Japanese/Korean* (which I wasn't trying to do). In this
> circumstance, it isn't particularly legal to copy the dll from
> elsewhere. So I would suggest enhancing R-windows FAQ and even the main
> R FAQ for this...
For what? As far as we know the rw-FAQ is accurate about all the
dependencies.
(Note that all current and recently obselete versions of Windows do have
it, so its absence is a problem of Wine, not for Windows users of R.)
> also, is it possible *not* to have this dependency,
> or have it runtime-determined (i.e. try to load the dll dynamically,
> and fall back to US/ascii only when unsuccessful)?
The MinGW project assumes a tolerably recent version of Windows (from 2000
or later).
It would be tricky to have MSVCP60.dll loaded and linked on demand, but
not impossible (and it was considered not to be a worthwile use of the
core group's time). We look forwards to your contributing code to do so
if you think it is worthwhile.
> (2) The interesting question: As I understand it (could be wrong),
> R Win32 is (partly) multi-threaded, and the native linux R is not.
> Is is possible to have better performance or CPU utilisation
> on multi-CPU systems running Win32 R under Wine rather than natively?
> At least on certain specific application areas?
Rterm.exe is multithreaded, but the second thread is only used for input.
RGui.exe is singlethreaded. As R for Windows uses a DLL it is about the
same speed (running Windows natively on the same hardware) as R under ix86
Linux using a shared library, and that is appreciably slower than R under
ix86 Linux without (see the R-admin manual). R under Linux can make use
of a multithreaded BLAS, but I know of none available for Windows.
--
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-devel
mailing list