On 3 August 2016 at 16:45, Gordon Ball wrote: | On 02/08/16 03:10, Ei-ji Nakama wrote: | > 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.
Thumbs up to using /etc/profile.d/ -- very nice hook. | Unfortunately neither this nor anything else I've tried today appears to | set the variable for sessions started through RStudio server (which may | or may not be an appropriate issue here). | | It appears that the rstudio server spawns sessions with a new minimal | environment (rstudio::core::system::launchChildProcess) and no option to | inject or inherit variables. (Various methods of controlling the session | environment are documented in the pro/paid version manual [1], but are | not implemented in the public codebase - enterprise features, presumably). | | Hence approaches like setting the environment in the | rstudio-server.service systemd unit, or creating a /etc/pam.d/rstudio | service profile including pam_env.so (to load the setting from | /etc/environment) don't work. It would probably be possible to work | round this by creating a small binary wrapper for the rsession binary | which sets the environment, but it would make a mess of the packaging. | | So I've gone with an `/etc/R/Rprofile.site` containing | | local({ | if (require("RhpcBLASctl", quietly=TRUE)) blas_set_num_threads(1) | }) | | which does mean people get this library loaded in all their sessions but | that doesn't seem to cause any particular trouble (yet). I was just working on something that needed environment variables (for automating tests to a database backend) and populating /etc/R/Renviron.site worked for me. Otherwise explicit code in Rprofile.site is of course good, as is conditioning. I do that too for some use cases. Dirk -- http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org _______________________________________________ R-SIG-Debian mailing list R-SIG-Debian@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-debian