无法在Windows上成功运行Rx中的mxnet
我花了整整一天的时间尝试弄清楚如何在R上运行mxnet GPU。软件包安装好的,但在库(mxnet)我得到一个错误:无法在Windows上成功运行Rx中的mxnet
错误:包或命名空间加载失败“mxnet”: .onLoad在loadNamespace失败()为“mxnet”,细节: 电话: inDL(x,as.logical(local),as.logical(now),...) 错误:无法加载共享对象'C:/Users/Po/Documents/R/win-library/3.4/mxnet/ libs/x64/libmxnet.dll': LoadLibrary失败:找不到指定的模块。
真的被带上了所有'帮助'的话题。这似乎是一个常见问题,但不是广泛适用的解决方案。我已经下载并更新:CUDA,CUDAnn,NVIDIA驱动程序,OpenBLAS,cmake,opencv,MS visual studio,git,mlbench,mingw,MS visual cpp社区....不胜枚举。
一些解决方案认为构建和编译是一种解决方法,但坦白地说,构建和编译远远超出了范围,我不得不下载半打的程序,只留下说明“使用CMake创建Visual Studio解决方案in ./build“。那有什么意思。
我检查了目录,并且确定存在libmxnet.dll。我觉得我失去了一些明显的东西。
我会帮你解决这个问题。
I have checked the directory and am sure libmxnet.dll exists. I feel like I am missing something obvious.
如果libmxnet.dll存在,但我们得到的缺失模块错误,这意味着在其libmxnet.dll取决于缺少一个或多个DLL。
您可以从“https://live.sysinternals.com/Procmon.exe”下载Process Monitor并捕获文件系统活动。
的指令
- 下载 “https://live.sysinternals.com/Procmon.exe”
- 开始 “Procmon.exe”
- 点击按Ctrl +大号到带来过滤UI
- 选择 “路径”,“以“,”.dll“结尾,然后”包含“来自 的过滤器”显示符合这些条件的条目“
- 点击确定。我们配置了Procmon来监视DLL活动
- 现在尝试重现导致缺少模块错误的问题
- 从进程监视器中,选择“文件”|“保存选项(或按下Ctrl + S)
- 确保“机进程监视器格式(PML)”被选择使用当前的滤波器被选择
生成PML文件 - 确保事件显示。
- 邮件的PML文件,我在[email protected]
构建和安装MXNet自己,你需要下面的依赖关系。安装所需的依赖项:
- 如果[Microsoft Visual Studio 2017(https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=Community&rel=15)尚未安装,请下载并安装它。您可以下载并安装免费社区版。
- 如果尚未安装,请下载并安装CMake GUI version。
- 下载并安装OpenCV。
- 解压缩OpenCV软件包。
- 将环境变量“OpenCV_DIR”设置为值“OpenCV build directory”。
- 如果您没有安装英特尔数学核心函数库(MKL),请下载并安装OpenBlas。
- 将环境变量“OpenBLAS_HOME”设置为指向包含“include”和“lib”目录的“OpenBLAS”目录。通常,您可以在“C:\ Program files(x86)\ OpenBLAS \”中找到该目录。
- 下载并安装CuDNN。要访问下载链接,请注册为NVIDIA社区用户。
你已经安装了所有必需的依赖关系后,建立MXNet源代码:
- 从GitHub下载MXNet源代码。
- 打开本机工具命令提示符的Visual Studio 2017年(选择64位或x86要求本地)
- 启动CMake的GUI工具之前安装的,从这个命令提示符
- 在CMake的工具UI,“浏览源代码”按钮中并导航到下载MXNet源的文件夹。例如 - “/ GitHub上/孵化器 - mxnet”
- 下创建“/ GitHub上/孵化器 - mxnet”的文件夹,说releasex64
- 单击“浏览构建..”,选择以上
- 点击创建的文件夹“配置“按钮,对话框提示出现选择发电机
- 选择合适的发电机,例如Visual Studio的2017年Win64中,如果建设64
- 保留‘使用默认本地编译器’选项
- 单击Finish
- 点击”打开项目“打开ge在Visual Studio IDE nerated项目
- 选择“ALL_BUILD”,并建立要建立
- 在例如上述步骤5中创建的文件夹下libmxnet.dll找到配置“\ GitHub的\孵化器mxnet \ releasex64 \调试\ libmxnet.dll“
@ Thomas Fritsch,非常感谢上面格式化我的文章。我很感激。 – Eftiquar
你好,你想共享进程监控日志来进一步分析这个吗?我会很高兴为你分析这个。 – Eftiquar