Strange Optix RT Exception after Driver update

Hi,

after updating the driver version from 472.47 to 496.49 on my Quadro RTX A3000 (Notebook), I suddenly get the following RT Exception during Unit Tests:

Caught RT_EXCEPTION_PAYLOAD_ACCESS_OUT_OF_BOUNDS
launch index : 0, 0, 0
location : n/a (invoke nvcc with the -lineinfo option, or no useful information for that block present)
value offset : 612
value size : 4
payload size : 620

I’m using the Optix 6.5.0 API. I retested with the older driver and the tests run successfully without code changes. The error also happens on another System with RTX3080Ti.

Strangely, it claims that an out of bounds access to the ray payload happened, even though the value offset and size in the error suggest otherwise (612+4 < 620). The total payload size of 620 is correct and matches the source code.

I enabled the -lineinfo flag for PTX generation. The line number which causes the error does not even access the ray payload, but only a rtVariable which is not related, and only performs very simple integer operations. Disabling the line resulted in the error “jumping” to the next line, accessing a different, unrelated rtVariable. The error happens during the first lines of the closest hit program.

This seems like a driver bug to me. Is this a known issue? What can be done?

Regards,
Philipp

Would you be able to provide a minimal and complete reproducer in failing state to be able to investigate?
If that requires confidentiality or is too big we can discuss file exchange methods via private messages.

I assume you’ve not disabled the RTX execution strategy? Because that error is only supported with the RTX execution strategy.

Thank you for your quick response!

Unfortunately the code is part of a large, commercial code base and we can not share it.
We also noticed that there is other Raytracing Code on our side which still works fine - So it seems to be something that is different between implementations (E.g. Payload size). Unfortunately, we do not know what it is so we can not provide a minimal example.

Still, we think this issue is worth investigating by Nvidia because the large code base worked fine for many months and the error message as well as the error location does seem suspicious to us.

Regards,
Philipp

Still, we think this issue is worth investigating by Nvidia because the large code base worked fine for many months and the error message as well as the error location does seem suspicious to us.

This is not actionable without reproducer.

Does the program work when not enabling the RT_EXCEPTION_PAYLOAD_ACCESS_OUT_OF_BOUNDS?