traveller59/spconv

Cuda Illegal Memory 700 Error

rangganast opened this issue · 0 comments

Hi, I was trying voxel_gen.py included in the example of this repository

import numpy as np
import spconv.pytorch as spconv
from spconv.utils import Point2VoxelCPU3d
from spconv.pytorch.utils import PointToVoxel
import torch


pc = np.random.uniform(-2, 8, size=[100, 3]).astype(np.float32)

device = torch.device("cuda")

gen = PointToVoxel(vsize_xyz=[0.25, 0.25, 0.25],
                   coors_range_xyz=[0, 0, 0, 10, 10, 10],
                   num_point_features=3,
                   max_num_voxels=500,
                   max_num_points_per_voxel=5,
                   device=device)

pc_th = torch.from_numpy(pc).to(device)

voxels_th, indices_th, num_p_in_vx_th = gen(pc_th)

batch_idx = torch.zeros((indices_th.shape[0], 1), dtype=torch.int32).to(device)
indices_th = torch.cat((batch_idx, indices_th), dim=1)
voxels_th = torch.mean(voxels_th, dim=1)

voxel_feature = spconv.SparseConvTensor(features=voxels_th, indices=indices_th, 
                                        spatial_shape=[10, 10, 10], 
                                        batch_size=1)

simple_net = spconv.SubMConv3d(in_channels=3, out_channels=6,
                                 kernel_size=3, padding=1, stride=2)
output = simple_net(voxel_feature)

I got error:

mask_width, tune_res_cpp = ConvGemmOps.implicit_gemm(
RuntimeError: /io/build/temp.linux-x86_64-cpython-310/spconv/build/core_cc/src/cumm/conv/main/ConvMainUnitTest/ConvMainUnitTest_matmul_split_Simt_f32f32f32_0.cu:1047
cuda execution failed with error 700 an illegal memory access was encountered
Simt_f32f32f32f32f32tnt_m32n128k16m32n32k8A1_200_C301LLL_SK error with params [48, 3] [6, 27, 3] [48, 6] [27, 48] [48, 1] [48] [] -1

Please help me. Thanks.