MinkowskiEngine安装避坑

【ubuntu】MinkowskiEngine安装

1. 简介

Minkowski 引擎是稀疏张量的自动微分库。它支持所有标准的神经网络层,例如稀疏张量的卷积、池化、反池化和广播操作。
因实验需要, 笔者先后在ubuntu18.04和Ubuntu20.04中配置了MinkowskiEngine,现将遇到的一些问题进行存档。所述内容仅供参考,如有不对的地方也请大佬指正。

2. 安装流程

笔者个人建议直接采用conda安装,具体安装步骤可以参照官网链接: MinkowskiEngine.

注意事项

有博主指出:要先安装pytorch再安装openblas-devel,而不是像官方这样,因为先安装openblas-devel,之后安装pytorch可能会报版本不兼容的错。但笔者安装openblas-devel后,原本环境中的pytorch失效,无奈只能卸载并重新安装的pytorch。因此建议先安装openblas-devel ,运行指令:

conda install openblas-devel -c anaconda # 安装依赖

再安装pytorch,运行指令:

conda install pytorch=1.9.0 torchvision cudatoolkit=11.1 -c pytorch -c nvidia
# -c anaconda/-c nvidia 表示从指定官网中下载,具体pytorch版本需要参照cuda版本

其次,在执行安装MinkowskiEngine指令之前,需要配置ninja库以防止出现问题2,而官方文档并未指明。

pip install torch ninja

安装完成之后测试一下是否能正常导入MinkowskiEngine:

python
>>> import MinkowskiEngine as ME
>>> print(ME.__version__)
0.5.4

3. 避坑

g++与gcc问题

Cudn10.1\10.2需要指定版本>=7.4.0且<8,因此个人建议7.5.0;Cudn>=11.0时,没有特定要求。因此在cudn10.X的环境下需要执行:

export CXX=g++-7

而在cudn11.X的环境下无需执行。
关于g++与gcc的配置与版本切换,可以参照下文 gcc/g++傻傻分不清?如何实现ubuntu多版本gcc/g++切换.

ninja: build stopped: subcommand failed.

ninja是一种编译工具,类似cmake,这里很爱使用ninja对torch库进行编译。出现上述报错往往是因为torch 、torchvision 、ninja版本问题,torch版本与ninja版本不匹配,无法满足对torch库的编译。
解决办法:安装最新版本的ninja:

pip install torch ninja

参考博客:pytorch配置安装 ninja报错:ninja: build stopped: subcommand failed.(个人趟坑).

nvcc fatal : Unsupported gpu architecture ‘compute_86‘

compute_86 是说当前 GPU 3090 的算力是 8.6,而当前 CUDA 11.0 不支持算力 8.6。
关于 GPU 算力和 CUDA 算力的关系是:CUDA 支持的最高算力要大于等于GPU本身的算力,CUDA 10.x 最高支持算力为 7.x,CUDA 11.x 最高支持算力为 8.x。
解决方案: 设置环境变量,降低算力要求。

# 打开配置文件
vi ~/.bashrc
# 在配置文件中添加如下一行
export TORCH_CUDA_ARCH_LIST="8.0"  # 因为是CUDA11.0,对应的算力为8.0
# 保存后source更新
source ~/.bashrc

在更改算力时,有时需要把引号去掉,即:

export TORCH_CUDA_ARCH_LIST=8.0

原文链接:https://blog.csdn.net/qq_31347869/article/details/123348901

raise RuntimeError(message) from e

RuntimeError: Error compiling objects for extension

很多同学的最后报错信息为“raise RuntimeError(message) from e RuntimeError: Error compiling objects for extension” ,如下图所示,但其错误原因往往是因为第二条和第三条,可以上翻报错信息进行查看。
在这里插入图片描述

安装过程卡顿、卡死

如果是个人电脑,CPU核数不够多的,安装之前先把并行安装的thread数降低,否则会导致进程卡死;即把setup.py文件内位于142行的MAX_COMPILATION_THREADS变量值从12改成4。若是实验室服务器配置比较好的可以忽略此步骤。
在这里插入图片描述

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
MinkowskiEngine是一个计算稀疏张量的常用库,它在Windows系统上的安装可能会有一些坑。根据引用\[1\]中的描述,你可以按照以下步骤在Windows上安装MinkowskiEngine: 1. 首先,你需要下载MinkowskiEngine的代码。你可以通过在命令行中运行以下命令来手动下载并解压代码: ``` git clone https://github.com/NVIDIA/MinkowskiEngine.git ``` 2. 进入MinkowskiEngine目录: ``` cd MinkowskiEngine ``` 3. 接下来,根据引用\[2\]中的描述,如果你使用的是最新的显卡(如3090、4090等),则不需要进行额外的设置。但是,如果你使用的是1080Ti这样的显卡,你需要指定一下算力。你可以在命令行中运行以下命令来查询算力: ``` export TORCH_CUDA_ARCH_LIST="6.1" ``` 4. 最后,你可以使用pip来安装MinkowskiEngine。根据引用\[2\]中的描述,你可以在命令行中运行以下命令来安装MinkowskiEngine: ``` pip install -U MinkowskiEngine --install-option="--blas=openblas" -v --no-deps ``` 这样,你就可以在Windows系统上成功安装MinkowskiEngine了。希望对你有帮助! #### 引用[.reference_title] - *1* *3* [MinkowskiEngine安装](https://blog.csdn.net/xsy_0416/article/details/130151909)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [闵可夫斯基引擎Minkowski Engine安装指南](https://blog.csdn.net/u013531940/article/details/127489101)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值