首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装rstan/brms后出现浮点异常

安装rstan/brms后出现浮点异常
EN

Stack Overflow用户
提问于 2021-04-30 03:59:25
回答 1查看 119关注 0票数 1

我目前正在尝试在我的Fedora34机器上运行rstan和brms,但几个小时后就失败了。至关重要的是,测试示例模型或其他模型总是会给我一个“浮点异常”。当我在RStudio中运行代码时,它只是崩溃并中止一切,而从终端运行基本上是相同的,但给了我浮点异常的提示,如下所示。遗憾的是,错误消息仅限于“浮点异常”的信息。

make命令为:

代码语言:javascript
复制
  make -f '/usr/lib64/R/etc/Makeconf' -f '/usr/share/R/make/shlib.mk' \
  -f '/root/.R/Makevars' CXX='$(CXX14) $(CXX14STD)' \
   CXXFLAGS='$(CXX14FLAGS)' CXXPICFLAGS='$(CXX14PICFLAGS)' \
SHLIB_LDFLAGS='$(SHLIB_CXX14LDFLAGS)' SHLIB_LD='$(SHLIB_CXX14LD)' \
SHLIB='filef8256c0e3305.so' OBJECTS='filef8256c0e3305.o'

make将使用:

代码语言:javascript
复制
g++ -std=gnu++14 -I"/usr/include/R" -DNDEBUG   -I"/usr/local/lib/R/library \
/Rcpp/include/"  -I"/usr/local/lib/R/library/RcppEigen/include/" \
 -I"/usr/local/lib/R/library/RcppEigen/include/unsupported"  \
-I"/usr/local/lib/R/library/BH/include" \
-I"/usr/local/lib/R/library/StanHeaders/include/src/" \
 -I"/usr/local/lib/R/library/StanHeaders/include/"  \
-I"/usr/local/lib/R/library/RcppParallel/include/"  -I"/usr/local/lib/R/library/rstan/include" \
-DEIGEN_NO_DEBUG  -DBOOST_DISABLE_ASSERTS  \
-DBOOST_PENDING_INTEGER_LOG2_HPP  -DSTAN_THREADS  -DBOOST_NO_AUTO_PTR  \
-include '/usr/local/lib/R/library/StanHeaders/include/stan/math/prim/mat/fun/Eigen.hpp' \
 -D_REENTRANT -DRCPP_PARALLEL_USE_TBB=1   -I/usr/local/include   -fpic  \
-O3 -march=native -mtune=native -fPIC \
-c filef8256c0e3305.cpp -o filef8256c0e3305.o
if test  "zfilef8256c0e3305.o" != "z"; then \
  echo g++ -std=gnu++14 -shared -L"/usr/lib64/R/lib" -Wl,-z,relro \
-Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld  \
-o filef8256c0e3305.so filef8256c0e3305.o  '/usr/local/lib/R/library/rstan/lib//libStanServices.a' \
-L'/usr/local/lib/R/library/StanHeaders/lib/' -lStanHeaders \
-L'/usr/local/lib/R/library/RcppParallel/lib/' -ltbb  \
-L"/usr/lib64/R/lib" -lR; \
  g++ -std=gnu++14 -shared -L"/usr/lib64/R/lib" -Wl,-z,relro \
-Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld  -o filef8256c0e3305.so filef8256c0e3305.o \
 '/usr/local/lib/R/library/rstan/lib//libStanServices.a' \
 -L'/usr/local/lib/R/library/StanHeaders/lib/' -lStanHeaders \
-L'/usr/local/lib/R/library/RcppParallel/lib/' -ltbb  \
-L"/usr/lib64/R/lib" -lR; \
fi
Floating point exception

这对我来说似乎很奇怪,因为不应该有这样的错误,因为我不想做任何花哨的事情,只是运行示例模型。我尝试完全重新安装R,从源码重新安装rstan,但都不起作用。此外,cmdstanr还提供了所有c++链和路径都已正确设置的信息。cmdstanr的MCMC也运行正常,因此问题似乎是brms和rstan的问题。

一些软件包信息: OS: x86_64 (Fedora34),linux-gnu;rstan: 2.21.2;Rcpp: 1.0.6;inline: 0.3.17,R 4.0.4

EN

回答 1

Stack Overflow用户

发布于 2021-04-30 04:59:09

我不知道实际的问题是什么,但是考虑到cmdstanr可以工作,您可以通过以下方式解决问题

代码语言:javascript
复制
brms(..., backend="cmdstanr")

有关rstancmdstanr之间的差异的讨论,请参见here

通过外部进程运行Stan的

减少了意外崩溃,尤其是在RStudio中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67324273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档