Peter Ruckdeschel
2007-Jul-09 12:58 UTC
[Rd] BLAS / LAPACK version information from within R-session?
Hi, for diagnostic purposes, I would like to get information about the BLAS / LAPACK linked against R from within an R-session. An obvious application could be safety-checks for packages like Matrix and quantreg at load / attach - time. Also you could be more precise on the "framework" in which R is running for comparable benchmark timings on different systems. Perhaps this information may even be included into the output of R.Version() :-) ? So my question: Is this possible/reasonable at all? My impression is that it is not trivial, as you may ---at least on Win32--- even replace the standard Rblas.dll by some of the "better" Rblas.dll 's available on http://cran.at.r-project.org/bin/windows/contrib/ATLAS/ without telling R in any way before launching R. In the (Win32) case I imagine you could read out the StringFileInfo of the Rblas.dll being used --- which, for the time being, however, does not yet contain information on the BLAS version. But a (mid term) solution could be: (1) For building Rblas.dll from source, extend src/gnuwin/dllversion.rc from the standard R tar-ball to a new ressource file, say, src/gnuwin/blasdllversion.rc including version information on BLAS/LAPACK which is then used for building Rblas.dll. (2) Successively replace files from http://cran.at.r-project.org/bin/windows/contrib/ATLAS/ by ones built against blasdllversion.rc Unfortunately, I have no idea whether/how you could use information similar to StringFileInfo in other OS's ... Any suggestions appreciated. Best, Peter Ruckdeschel
Prof Brian Ripley
2007-Jul-10 06:02 UTC
[Rd] BLAS / LAPACK version information from within R-session?
AFAIK all platforms by default work the same: they use dynamic libraries for BLAS and LAPACK, and these may well be symbolic links. I know of no way to ask a BLAS dynamic library what version it is. On Mon, 9 Jul 2007, Peter Ruckdeschel wrote:> Hi, > > for diagnostic purposes, I would like to get information about > the BLAS / LAPACK linked against R from within an R-session. > > An obvious application could be safety-checks for packages like > Matrix and quantreg at load / attach - time.Why should that be needed? Those packages assume they are talking to working dynamic libraries, and there is no way to check that a particular library works (it might work when compiled under gcc 4.1.2 and not under 4.2.0, to take a non-random example).> Also you could be more precise on the "framework" in which R > is running for comparable benchmark timings on different systems. > > Perhaps this information may even be included into the output > of R.Version() :-) ?I can think of more worthy candidates, e.g. the compilers used to build R, and for Linux something more precise about the distro used. Remember that for most R users the BLAS/LAPACK speed is not very important: it only matters where linear algebra dominates the computations. If I run R CMD check over CRAN with an optimized BLAS the speedup is barely noticeable (but I do get more failures).> So my question: > > Is this possible/reasonable at all? > > My impression is that it is not trivial, as you may ---at least > on Win32--- even replace the standard Rblas.dll by some of the > "better" Rblas.dll 's available on > > http://cran.at.r-project.org/bin/windows/contrib/ATLAS/ > > without telling R in any way before launching R. > > > In the (Win32) case I imagine you could read out the > > StringFileInfo > > of the Rblas.dll being used --- which, for the time > being, however, does not yet contain information on > the BLAS version. But a (mid term) solution could be: > > (1) For building Rblas.dll from source, extend > > src/gnuwin/dllversion.rc > > from the standard R tar-ball to a new ressource file, say, > > src/gnuwin/blasdllversion.rc > > including version information on BLAS/LAPACK which is then > used for building Rblas.dll. > > (2) Successively replace files from > > http://cran.at.r-project.org/bin/windows/contrib/ATLAS/ > > by ones built against blasdllversion.rc > > > > Unfortunately, I have no idea whether/how you could use information > similar to StringFileInfo in other OS's ... > > Any suggestions appreciated. > > Best, > Peter Ruckdeschel > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >-- 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
Apparently Analagous Threads
- Change between 86152 and 86534 - probably 86265 - that looks for zspmv in BLAS and not LAPACK causes R with OpenBLAS to fail
- help on compile r-2.10.0 on 64 bit window
- Building R on Windows: mkdir of Rtools creates directories with read-only permissions [WEIRD]
- Building R-2.3.1 for Windows with ATLAS
- BLAS optimization by CUBLAS