You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When the Hierarchical Depth Buffer is enabled (either for the old SSAO, or the new Filmic Post FX passes), I see problems on Integrated GPUs as follows:
On the master branch when running Vulkan on Linux + Intel iGPU: Game crashes after loading a level with a device lost error.
On the push constants branch when running Vulkan on M1 Apple Silicon GPU: Game crashes after loading a level with device out of memory followed by device lost errors. I suspect this one does not show up on the master branch since the code is far too slow over there (< 10 fps). To get a reassonable frame rate I have to test on the push constants branch.
If I set r_useHierarchicalDepthBuffers = 0 the problem goes away for both cases above. I have looked at the mipmapgen shader code and played with the parameters a bit, but I don't see anything obviously wrong, other than potential memory issues. I am wondering whether there is a subtle sync + resource release delay problem that is exposed on iGPUs that are slower and have more limited memory.
If you don't want to research this, I can easily patch it by adding the following code to DeviceManager_VK.cpp:
if( !otherGPUs.empty() )
{
---> //FIXME: On integrated GPUs disable HiZ buffer to avoid device out of memory/lost errors
---> r_useHierarchicalDepthBuffer.SetBool( false );
m_VulkanPhysicalDevice = otherGPUs[0];
return true;
}
Please let me know what you want to do with this.
The text was updated successfully, but these errors were encountered:
When the Hierarchical Depth Buffer is enabled (either for the old SSAO, or the new Filmic Post FX passes), I see problems on Integrated GPUs as follows:
If I set
r_useHierarchicalDepthBuffers = 0
the problem goes away for both cases above. I have looked at the mipmapgen shader code and played with the parameters a bit, but I don't see anything obviously wrong, other than potential memory issues. I am wondering whether there is a subtle sync + resource release delay problem that is exposed on iGPUs that are slower and have more limited memory.If you don't want to research this, I can easily patch it by adding the following code to DeviceManager_VK.cpp:
Please let me know what you want to do with this.
The text was updated successfully, but these errors were encountered: