Skip to content

Illegal memory access in gpu::octree #2103

@SergioRAgostinho

Description

@SergioRAgostinho

I detected an illegal memory access, in octree_builder.cu:246. I'm not sure how reproductible this is.

  • The pcd file (just replace the extension if needed).
  • No error is triggered in my system if the point cloud as 950 points instead of 951.
  • Hardware: GeForce GTX 1060
  • Driver: 384.90
  • CUDA Version: 8.0
#include <pcl/gpu/octree/octree.hpp>
#include <pcl/io/pcd_io.h>

int main (const int argc, const char** const argv)
{
  pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
	pcl::io::loadPCDFile(argv[1], *cloud);

  std::cout << "Point Cloud Info:\n"
            << "height: " << cloud->height
            << " width: " << cloud->width
            << std::endl;
	pcl::gpu::Octree::PointCloud cloud_device;
	cloud_device.upload(cloud->points);
	pcl::gpu::Octree octree_device;
	octree_device.setCloud(cloud_device);
	octree_device.build();

  return 0;
}
cmake_minimum_required(VERSION 3.0.0 FATAL_ERROR)
project(gpu_octree VERSION 0.1.0 LANGUAGES CXX)

find_package(PCL 1.8.1.99 REQUIRED)

add_executable (${PROJECT_NAME} "${PROJECT_NAME}.cpp")
target_include_directories(${PROJECT_NAME} PUBLIC ${PCL_INCLUDE_DIRS})
target_link_libraries (${PROJECT_NAME} ${PCL_LIBRARIES})

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions