Other topics
selecting the BLAS implementation used by R
By default rocker/r-ver uses the OpenBLAS (http://www.openblas.net) implementation for Linear Algebra (cf https://cran.r-project.org/doc/manuals/r-release/R-admin.html#BLAS). But it is possible to switch for the reference BLAS implementation (http://www.netlib.org/blas/) (as provided by the Debian package libblas-dev) using the Shared BLAS setup (cf https://cran.r-project.org/doc/manuals/r-release/R-admin.html#Shared-BLAS).
checking which BLAS is in use
You can see the current BLAS configuration in your image by using sessionInfo()
from the R console; e.g.
> sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 9 (stretch)
Matrix products: default
BLAS: /usr/lib/openblas-base/libblas.so.3
LAPACK: /usr/lib/libopenblasp-r0.2.19.so
Here for instance R uses OpenBLAS.
switching BLAS implementations
You can switch from withing the docker container using the Debian update-alternatives
script:
# switch to libblas
update-alternatives --set libblas.so.3-x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/blas/libblas.so.3
# switch to openBlas
update-alternatives --set libblas.so.3 /usr/lib/openblas-base/libblas.so.3
You can also pre-select which BLAS to use when running the docker using the LD_LIBRARY_PATH
environment variable, e.g:
# run R with the libblas
docker run -ti -e LD_LIBRARY_PATH=/usr/lib/libblas rocker/r-ver
X11
Singularity
See Singularity for use in HPC environments without Docker installed.