r OpenMP崩溃

时间:2017-12-30 15:51:03

标签: r openmp

我遇到openMP崩溃问题。这是一个简单的例子

library(data.table)
library(caret)

dt1 <- data.table(replicate(5,sample(0:100,50,rep=TRUE)))
dt2 <- data.table(replicate(5,sample(0:100,50,rep=TRUE)))
dtList <- c("dt1", "dt2")
dtList <- mget(dtList)
mergedDT <- Reduce(function(...) merge(..., all = TRUE), dtList)

在RStudio中,我没有获得崩溃以外的任何信息。但是当我在shell中运行我的代码时,我收到如下消息。我认为问题是我的一个或多个其他加载的软件包初始化OMP,可能使用不同的版本。

我已经复制了正在加载的软件包列表,版本号作为评论。但是特别是在安装插入符时,有很多依赖项,我在本地编译,我想这可能会导致问题。

我的具体问题是我使用什么过程来诊断有问题的包以及找到它们时该怎么做。

  

OMP:错误#15:初始化libomp.dylib,但找到了libomp.dylib   已初始化。 OMP:提示:这意味着多个副本   OpenMP运行时已链接到该程序中。这很危险   因为它会降低性能或导致错误的结果。最好的   要做的是确保只链接一个OpenMP运行时   进入该过程,例如通过避免OpenMP的静态链接   任何库中的运行时。作为不安全,不受支持,无证件   解决方法,您可以设置环境变量   KMP_DUPLICATE_LIB_OK = TRUE以允许程序继续执行,   但这可能会导致崩溃或无声地产生不正确的结果。对于   更多信息,请参阅   http://www.intel.com/software/products/support/。中止陷阱:6

library(data.table) # 1.10.5
library(ggplot2) # 2.2.1.9000
library(lattice) # 0.20-35
library(caret) # 6.0-78

我使用的是Mac,OS 10.13.2。 R为3.4.2。

我已经安装了openMP作为llvm的一部分(我想)。当我在shell中type brew info llvm时,它会返回 llvm:稳定5.0.1

0 个答案:

没有答案