Ubuntu22.04安装MinkowskiEngine0.5.4

记录在复现论文pc2wf时安装MinkowskiEngine踩过的坑。

最初我使用cuda12.0进行安装,由于官方没有给出cuda12.0对应的pytorch版本,但查阅资料发现cuda12.0可以兼容cuda11.8对应的pytorch,但在安装时出现检测cuda版本和编译版本不匹配问题,在cpp_extention文件中注释检测cuda版本代码,仍然出现编译错误问题,当时认为是gcc版本问题,于是更换多个版本都无法解决问题。

最后通过更换cuda版本成功安装。测试过很多版本都有坑,亲测以下环境可以正常安装。

环境:cuda11.1 、gcc9.5.0、python3.8

安装过程:

1.安装pytorch:

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

2.安装依赖

conda install openblas-devel -c anaconda

3.安装MinkowskiEngine

git clone https://github.com/NVIDIA/MinkowskiEngine.git
cd MinkowskiEngine
python setup.py install --blas_include_dirs=${CONDA_PREFIX}/include --blas=openblas

4.检查是否成功安装

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

安装MinkowskiEngine最大的问题就是cuda、pytorch和gcc的版本匹配问题,如果需要建议使用大家尝试过且成功的版本,尝试不同版本很容易心态崩!

### MinkowskiEngine安装与 GCC 编译器的要求 MinkowskiEngine 是一种专为稀疏张量运算设计的深度学习库,广泛应用于三维计算机视觉领域。为了成功编译并运行该库,需满足特定的依赖项以及环境配置需求。 #### 环境准备 在使用 GCC 进行 MinkowskiEngine安装前,需要确认以下条件已达成: - **Python 版本**:建议 Python 3.6 或更高版本[^2]。 - **PyTorch 支持**:MinkowskiEngine 基于 PyTorch 构建,因此需要先安装合适的 PyTorch 版本(推荐最新稳定版)。可以通过官方文档获取支持的具体版本号[^3]。 - **C++ 编译工具链**:GCC 应至少为 v7.0 及以上版本以兼容 C++17 标准[^4]。 #### 安装步骤概述 以下是基于 GCC 的 MinkowskiEngine 安装指南: 1. **克隆源码仓库** 需要从 GitHub 上拉取最新的 MinkowskiEngine 源代码: ```bash git clone https://github.com/StanfordVL/MinkowskiEngine.git cd MinkowskiEngine ``` 2. **设置构建选项** 在根目录下创建 `setup.cfg` 文件来指定编译参数。例如: ```ini [build_ext] parallel = 8 define = USE_GPU=ON undef = DEBUG include_dirs = /path/to/pytorch/include library_dirs = /path/to/pytorch/lib extra_compile_args = -O3 -fopenmp -std=c++17 ``` 3. **执行安装命令** 利用 pip 工具完成本地化安装过程: ```bash python setup.py install --user ``` 如果遇到权限不足的情况可以加上 sudo 权限或者通过虚拟环境隔离开发路径[^5]。 4. **验证安装结果** 执行简单的测试脚本来检验是否正常工作: ```python import MinkowskiEngine as ME print(ME.__version__) ``` #### 注意事项 - 若目标平台涉及 GPU 加速,则还需额外引入 CUDA Toolkit 并调整相应的链接标志位[^6]。 - 对于某些特殊硬件架构可能还需要定制化的优化策略,比如 AVX/SSE 指令集的支持情况会影响性能表现[^7]。 ```cpp // 示例:自定义扩展模块实现部分功能加速 #include <minkowski/MinkowskiCommon.hpp> using namespace minkowski; void customFunction(const CoordinateMapKey& key) { // 自定义逻辑处理... } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值