ubuntu中通过源码安装pointnet2_ops_lib
注:本帖所用环境为:ubuntu 24.04、 cuda 12.04
文章目录
- 1. 克隆 `PointNet++` 源码库
- 2. 安装依赖
- 3. 编译 `pointnet2_ops_lib`
- 4. 测试安装
1. 克隆 PointNet++
源码库
首先,克隆 PointNet++
的 GitHub 仓库:
git clone https://github.com/erikwijmans/Pointnet2_PyTorch.git
cd Pointnet2_PyTorch
2. 安装依赖
确保你已经安装了 PyTorch,并且系统已经正确配置了 CUDA(如果你打算使用 GPU 加速)。你可以通过以下命令来安装必要的依赖:
pip install -r requirements.txt
这个安装过程可能出现如下问题:
这是由于当前cuda版本比较新导致的,这个时候可以修改pointnet2_ops_lib/setup.py中找到类似以下部分的代码:
extra_compile_args={
'cxx': ['-O2'],
'nvcc': [
'-O2',
'-arch=compute_37',
...
]
}
你需要将 compute_37
改为 CUDA 12.4 支持的架构代码,例如 compute_80
或更高:
'nvcc': ['-arch=compute_80', '-arch=sm_80', ...]
常见的 CUDA 架构如下:
- compute_50: Maxwell 架构
- compute_52: Maxwell 架构
- compute_60: Pascal 架构
- compute_61: Pascal 架构,例如Tesla P40
- compute_70: Volta 架构
- compute_75: Turing 架构
- compute_80: Ampere 架构,例如RTX4090
3. 编译 pointnet2_ops_lib
pip install -e .
pip install pointnet2_ops_lib/.
4. 测试安装
编译和安装完成后,可以测试库是否安装成功。运行以下 Python 代码以确保 pointnet2_ops_lib
可正常导入:
import pointnet2_ops_lib
如果没有报错,说明安装成功。