PointCloudLibrary / PointCloudLibrary/pcl

frequently cudaDeviceSynchronize

Open
#711 7 comments 0 reactions 1 assignee View on GitHub

@haritha-j is already working on this.

Since May 21, 2020.

status: stale
Dominant language
C++
Stars
11.1k
Forks
4.7k
Avg merge
4d 10h
Merged PRs (30d)
6

Description

The cuda code is full of cudaDeviceSynchronize() (especially KinFu). This reduces the framerate but I don't see any need.
I'm not sure, but I suppose every cudaDeviceSynchronize can be removed.

e.g.: What is the reason for patch https://github.com/PointCloudLibrary/pcl/commit/7e964742d2275dd955073198e3320fcb65eacc95 ?

e.g.: https://github.com/PointCloudLibrary/pcl/blob/master/gpu/kinfu/src/kinfu.cpp#L427 significantly reduces the framerate, because the CPU could go on with the visualization (painting the depth image), there is no need to wait (depending on the GPU ca. 6ms) for the GPU. I see just one advantage: The time effort of the kinfu algorithm can be measured more exactly.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.