写在前面
自己的测试环境:
Ubuntu20.04,CUDA 11.4
1. 功能描述
SpConv , 全称是Spatially Sparse Convolution Library (空间稀疏卷积库)。它是一个提供重度优化的稀疏卷积实现的项目,支持张量核心。
2. 安装步骤
2.1 安装前准备
安装前必须首先卸载环境中的 spconv/cumm/spconv-cuxxx/cumm-cuxxx
。可以通过 pip list | grep spconv
和 pip list | grep cumm
,两条指令进行查看。如果存在某个包,则需要卸载掉。
比如,我这里提示有 cumm-cu102
,则需要首先卸载掉 pip uninstall cumm-cu102
.
2.2 软件安装
官方github地址给出来安装指令:
需要根据自己的电脑环境,使用相应的指令进行安装。
比如,我自己的 CUDA 11.4
(执行nvcc -V
可查看 CUDA
版本), 则需要执行 pip install spconv-cu114
进行安装。
2.3 注意事项、版本选择建议
- (来自官方github地址)作者不再为
spconv 1.x
提供任何支持,因为它已弃用。如果可能,请使用spconv 2.x
。 - (来自官方github地址)如果可能的话,使用
spconv >= cu114
的版本。CUDA 11.4
在某些情况下可以编译更快的内核。 - 如果要指定
spconv
的版本,可以使用类似如下指令pip install spconv-cu114==2.1.25
。 - 在运行其他的程序时,如果要求其他的spconv版本,比如该程序要求
CUDA 10.2
环境下的spconv-cu102=2.1.25
。 为了能够在本机CUDA 11.4
环境成功运行该程序,安装在CUDA 11.4
环境下的spconv-cu114=2.1.25
, 也是能够成功运行该程序的。也就是说在保证spconv-cuxxx=2.1.25
版本号一致的前提下,应该是可以运行程序的。(上述操作在自己电脑环境测试有效。)pip install spconv-cu114==2.1.25
参考链接
[1] traveller59. spconv [EB/OL]. https://github.com/traveller59/spconv, 2023-04-19/2024-11-10.