PDA

View Full Version : Nvidia Bindless and glVertexAttribDivisor



ViolentHamster
04-18-2012, 01:43 PM
We're having problems with the newer Nvidia drivers when both bindless and vertex attribute instancing via glVertexAttribDivisor are enabled. Are there any known issues with using both at the same time? Bindless and vertex attribute instancing used to work together with the 280ish drivers.

Thanks.

GhostfromTexas
04-30-2012, 09:38 AM
We are experiencing the problem too. Been trying to mimic this in a small test program to try and simplify the problem and pinpoint it to a single thing.
If we disable bindless and use the alternative "bind" method then everything works fine.

We are running Linux 64 bit. I've traced the problem to driver version 285.03 (BETA). The prior version 280.13 did not have this issue.

We are seeing tearing graphics with bindless enabled. Reverting back to the previous driver version makes the problem go away, but hard to go to the new GTX 600 series without the latest drivers!

Dark Photon
05-02-2012, 06:38 PM
Was having the same problem myself (http://www.opengl.org/discussion_boards/showthread.php/175939-NVidia-285-x-and-ARB_instanced_arrays?p=1228959&viewfull=1#post1228959), and you prompted me to looking back at it (hadn't had a big reason to move on past 280.x yet). Looks like 302.07b drivers just released today resolves the problem I was having with this -- at least on a GTX560Ti-448 cores (though I didn't queue on the bindless interaction -- good catch!). Might give it a shot and see if it fixes your issues too.

Kudos to NVidia for following these forums and resolving issues reported here!

Will have to see if this resolves my GTX480 corruption/lockup issues with 285.x onward as well (don't have one handy right now).

GhostfromTexas
05-03-2012, 04:30 PM
Glad to see that this is fixed in the drivers. I happened to figure out what the problem was and was able to reproduce it in a test program.

Turns out the stride in glVertexAttribFormatNV(...) was not being set even though you passed in a correct value. No matter what value you give stride, it is still set to 0 when the shader references the gpu addresses.

I didn't notice this before in my test app because I wasn't using interleaved VBOs (grouped like attributes together with offsets). So my stride before was supposed to be 0. As soon as I switched to interleaved VBOs and it became necessary to use a non-zero stride, the problem reared it's ugly head.

I am still going to report this to NVIDIA and give them the test app since there was no reference made on the 302.07b drivers that this was a solved problem. Hopefully this isn't a loose bug on their end that could show up again in the future, but at least this post will live on.

peterfilm
08-08-2012, 09:55 AM
i'm having this same problem and it doesn't seem to be fixed in the current 297.03 drivers for Quadro 4000/windows 7.

peterfilm
08-08-2012, 10:39 AM
rolling back to 276.52 fixes it. I'm not happy at all with the current state of nvidias drivers.