CUDA and OpenGL Bindless Graphics Accessing resident buffers with CUDA

Hi,

I have upgraded my application to use CUDA for updating VBOs. Spatial coherency of the terrain enables reusing data already stored in the neighboring blocks. But to shorten the story, I have a very serious problem accessing resident buffers. External Image

For a (Bindless Graphics) resident buffer, function cudaGraphicsGLRegisterBuffer() returns cudaErrorMemoryAllocation!

It works for normal VBOs. Currently I’m using 259.09 drivers.

Another problem was returning cudaErrorPriorLaunchFailure by cudaGraphicsMapResources() call, for a normal VBO. While I was experimenting with small demo application with two VBOs everything worked perfectly, but when I tried to implement it in my application with thousands of VBOs with complex organization, the problems started to arise. External Image

Please, answer me is it possible to use CUDA along with Bindless Graphics anyway?

Thank you in advance,
Aleksandar

If you haven’t done so already, you should be applying for a registered developer account. Then you can report such mission-critical things through their nVidia’s bug tracking interface. I’ve usually had quick and professional turnaround on the two issues I’ve raised so far.

Christian

Thank you Christian for the reply! Which account should I apply for? There are four different accounts:

  • Game Developer Application
  • Workstation Developer Application
  • Tegra Developer Application
  • GPU Computing Developer Application

My problem is both OpenGL and CUDA oriented. So Workstation or GPU computing?

I think the GPU Computing Developer program is the right one, your problem seems to be an interoperability problem with CUDA and not really an OpenGL issue.

Probably! Thanks!

Can you point me out to some repository where I can find more detailed explanation what could cause certain CUDA errors?

On the Web I have found only list of errors with no explanation. External Media