Breaking changes in Spconv 2.x for spconv 1.x users
spconv.xxxmove tospconv.pytorch.xxx, change allimport spconvtoimport spconv.pytorch as spconvand fromspconv.xxx importtofrom spconv.pytorch.xxx import.use_hashandfused_bnin Sparse Convolution is removed, we only use hash table in 2.x.x.features = F.relu(x.features)now raise error. usex = x.replace_feature(F.relu(x.features))instead.- weight layout has been changed to RSKC (native algorithm) or KRSC (implicit gemm), no longer RSCK (spconv 1.x). RS is kernel size, C is input channel, K is output channel. 权重布局已更改为 RSKC(本机算法)或 KRSC(隐式 gemm),不再是 RSCK(spconv 1.x)。RS是内核大小,C是输入通道,K是输出通道。
- all util ops are removed (pillar scatter/nms/rbbox_iou…)
VoxelGeneratorhas been replaced byspconv.pytorch.utils.PointToVoxel(torch API) or Point2VoxelGPU[1-4]d/Point2VoxelCPU[1-4]d (tv.Tensor API).- spconv < 2.1 don’t support CPU. spconv 2.1+ support cpu for debug usage.
- test spconv 1.x model in spconv 2.x: Firstly set environment variable before run program, Then set all
algoin conv/pool toConvAlgo.Native. Linux:export SPCONV_FILTER_HWIO="1", Windows powershell:$Env:SPCONV_FILTER_HWIO = "1". WARNING test spconv 1.x model don’t support implicit gemm algorithm.**

spconv 2.x针对1.x用户引入了重大更改,包括移除util ops,权重布局变化为RSKC或KRSC,不再支持 和 ,并用 替换 。此外,2.1+版本开始支持CPU调试。
4899





