Hi, Create /etc/profile.d/openblas.sh. Write the following during in this file. OPENBLAS_NUM_THREADS = 1 export OPENBLAS_NUM_THREADS
OPENBLAS_NUM_THREADS environment variable does not affect the OMP_NUM_THREADS. 2016-08-01 20:06 GMT+09:00 Gordon Ball <gor...@chronitis.net>: > What is the correct way to globally configure R to default to single (or > at least, << NUM_CPUS) threaded operation? > > > Using R 3.3.1 (both in debian unstable or using the CRAN repository for > xenial) with OpenBLAS (0.2.18) defaults to using one thread per > available CPU, which isn't ideal for machines more than a couple of CPUs. > > Setting the environment (OMP_NUM_THREADS or OPENBLAS_NUM_THREADS) in the > shell works: > > $ OMP_NUM_THREADS=1 R >> Sys.getenv("OMP_NUM_THREADS") > [1] "1" >> system.time({x <- replicate(5e3, rnorm(5e3)); tcrossprod(x) }) > [runs in one thread] > > but adding it to /etc/R/Renviron.site doesn't: > > $ R >> Sys.getenv("OMP_NUM_THREADS") > [1] "1" >> system.time({x <- replicate(5e3, rnorm(5e3)); tcrossprod(x) }) > [runs multi-threaded] > > (nor does setting the variable at runtime with `Sys.setenv`) > > Presumably Renviron is read after the library is already loaded and so > the environment variable is set too late to matter. > > > > > I can think of these solutions, but none of them are ideal: > > * remove OpenBLAS (but even single threaded it performs quite a lot > better than the basic libblas) > > * set OMP_NUM_THREADS globally in people's shells with the system > bashrc (but this doesn't work for non-shell, RStudio server sessions) > > * use a library like RhpcBLASctl to set the number of threads in the > global Rprofile > > * compile a custom openblas with threading disabled, or at least a > small default number of threads > > > Any better ideas? > > > Thanks > > Gordon > > _______________________________________________ > R-SIG-Debian mailing list > R-SIG-Debian@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-debian -- Best Regards, -- Eiji NAKAMA <nakama (a) ki.rim.or.jp> "\u4e2d\u9593\u6804\u6cbb" <nakama (a) ki.rim.or.jp> _______________________________________________ R-SIG-Debian mailing list R-SIG-Debian@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-debian