Add a --gpu-robustness debug option #12330
spencer-lunarg
started this conversation in
Engine Core
Replies: 1 comment 1 reply
-
Are there use cases for using robust buffer access without validation layers? If not, |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hey, so I am the tech lead of the Vulkan Validation Layers
We are trying to create a tool called GPU-AV which is an optional setting the Validation Layers to help detect errors that occur on the GPU.
While testing various Godot samples and open sourced games with the tool, I noticed a lot of the larger shaders have these huge SSBO structs with dozen of members. One of our checks is for making sure the bound
VkBuffer
was bound so that when you access the SSBO you are not going OOBI noticed in https://github.com/godotengine/godot/blob/ce94b26de74a0a0f2463c5dc61b9b683a1e3676b/drivers/vulkan/rendering_device_driver_vulkan.cpp#L671 that
robustBufferAccess
is turned off (for good reasons)The GPU-AV tool has a "force on robustness for me" option, which will help speed up us having to add this check, but I think this could be used as a proper debugging option inside Godot itself (as I know it is used in many other engines)
Basically by having a
--gpu-robustness
option that turns on the various robustness options, if someone is debugging a the harder GPU level issue, they can easily turn on the setting and if the problem is magically fixed, it can help lead people to narrow down the issue.I have not tried looking into the Godot source, and seems like something I could try and prototype, but wanted to first gauge interest from those who are working on the core Vulkan rendering backend
Some links for more information:
Beta Was this translation helpful? Give feedback.
All reactions