-
-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Bevy 0.19 VRAM usage regression on Vulkan #24722
Copy link
Copy link
Open
Labels
A-RenderingDrawing game state to the screenDrawing game state to the screenC-BugAn unexpected or incorrect behaviorAn unexpected or incorrect behaviorC-PerformanceA change motivated by improving speed, memory usage or compile timesA change motivated by improving speed, memory usage or compile timesD-ComplexQuite challenging from either a design or technical perspective. Ask for help!Quite challenging from either a design or technical perspective. Ask for help!O-VulkanSpecific to the Vulkan render APISpecific to the Vulkan render APIP-RegressionFunctionality that used to work but no longer does. Add a test for this!Functionality that used to work but no longer does. Add a test for this!S-Needs-InvestigationThis issue requires detective work to figure out what's going wrongThis issue requires detective work to figure out what's going wrong
Description
Metadata
Metadata
Assignees
Labels
A-RenderingDrawing game state to the screenDrawing game state to the screenC-BugAn unexpected or incorrect behaviorAn unexpected or incorrect behaviorC-PerformanceA change motivated by improving speed, memory usage or compile timesA change motivated by improving speed, memory usage or compile timesD-ComplexQuite challenging from either a design or technical perspective. Ask for help!Quite challenging from either a design or technical perspective. Ask for help!O-VulkanSpecific to the Vulkan render APISpecific to the Vulkan render APIP-RegressionFunctionality that used to work but no longer does. Add a test for this!Functionality that used to work but no longer does. Add a test for this!S-Needs-InvestigationThis issue requires detective work to figure out what's going wrongThis issue requires detective work to figure out what's going wrong
Type
Fields
Give feedbackNo fields configured for issues without a type.
Projects
StatusShow more project fields
Needs SME Triage
Bevy 0.19
System: 7950x, 128GB ram, 4070ti, 16GB vram.
If I run bistro or sponza using the Vulkan backend (on both linux and windows) I OOM:
ERROR bevy_render::error_handler: Caught rendering error: Out of MemoryThis doesn't appear to be an issue with the Metal or DX12 backends. If I set
WGPU_BACKEND=dx12on windows I am able to open multiple instances of bistro without issues, and can see that I am spilling into system RAM as expected. This was also the behavior with the Vulkan backend in Bevy 0.18Tried bisecting, ran into different issues/crashes at different times. I believe the issue started when Bevy updated to wgpu 28 and the issue persists with wgpu 29.
@JMS55 Started work on a wgpu PR to try to resolve the issue: gfx-rs/wgpu#9462
Timelime
Before 543b305 the scene loads as expected. Each of these are the first commit that the behavior changes:
Trying to destroy a SwapchainAcquireSemaphore that is still in use by a SurfaceTexturewgpu error: Out of Memorywgpu error: Out of MemoryPreviously in the 0.19 dev cycle, the oom would result in cause flashing, this was resolved. This older issue addressed both the flashing and the oom: #23183