I assume you’re referring to the installation of WSL rather than cmdstanr?
Here’s an interim update:
I have now (finally) successfully installed WSL in order to reap the performance benefits described here. I don’t see much difference in fitting speed, at least not when using brms with its default backend in the following mock example:
require(brms)
set.seed(2022)
x1 <- rnorm(200)
x2 <- rnorm(200)
y <- rbinom(200, 1, plogis(-0.5 + 1*x1))
d <- data.frame(x1, x2, y)
t0 <- Sys.time();summary(mod <- brm(y ~ x1 + x2, family = bernoulli, data = d, seed = 2022,
prior = prior(normal(0, 2.5), class = b) + prior(normal(0, 2.5), class = Intercept)));Sys.time()-t0
On my machine, the model takes between 38 and 63 seconds to fit in both Windows and WSL. There appears to be a lot of variability depending on compilation time. With real models, however, it’s probably sampling speed rather than compilation speed that matters, so the jury is still out.
A major problem is that I cannot make beepr
work from within WSL to notify me when models finish fitting. The library installs and loads correctly, but there’s no sound. I’ve installed the PulseAudio service as instructed here, and I’ve also installed the VLC
Linux program as instructed in the documentation of beepr. I can’t even play .wavs from the command line. I get a whole bunch of error messages, including ALSA lib confmisc.c:767:(parse_card) cannot find card ‘0’ . But I guess this is the wrong forum for troubleshooting WSL audio issues.
Even with all these problems, however, it is still possible that WSL might offer a significant advantage over Windows. This is because in Windows, RStudio crashes after about once per four brms fits. If WSL turns out not to have this problem, it will still be an overall improvement. I’ll post further updates (perhaps in a whole new thread as Andrew suggests) once I know more.