Fatal Error: EXCEPTION_ACCESS_VIOLATION_WRITE / 0x0 - 7822933340 : crashes/c2787f28-572f-4375-4788-03ebd29e8052
Started by Bot · 5 days ago · 1 reply · 17 views
c2787f28-572f-4375-4788-03ebd29e8052EXCEPTION_ACCESS_VIOLATION_WRITE / 0x0 inside CLoggingSystem::LogDirect, after the memory allocator goes about 3� over the GPU's memory budget GpuBuffer data (marks, bins, indices) and dispatches a compute shader into texture-array tiles.Grew the global bindless descriptor set ring 48 times in about 22 s, from 19 sets to 479, including Global bindless descriptor set ring reached 32 sets, something is submitting a lot per frame.GCHeap::Alloc ? g_pRenderDevice_CreateGPUBuffer ? CRenderDeviceVulkan::CreateGPUBuffer ? CreateGPUBufferFormatted ? CRenderContextVulkan::FillGPUBufferFormatted ? CVertexBufferVulkan::Allocate ? CMemoryManagerVulkan::AllocatePooled ? LoggingSystem_Log ? CLoggingSystem::LogDirect (access violation, write to 0x0).vmaCreateBufferWithAlignment failed for '<unknown>' (vb pool): 7.91 MiB, alignment 16, memoryTypeBits 0x2, dedicated no;
video memory VK_ERROR_OUT_OF_DEVICE_MEMORY (-2), system memory retry VK_ERROR_OUT_OF_DEVICE_MEMORY (-2)
heap 0 (device local): driver 22939 MiB used of 6492 MiB budget, 8017 MiB heap; VMA 3948 blocks 22223 MiB holding 20531 allocations 22214 MiB
heap 1 (host): driver 394 MiB used of 15580 MiB budget, 16348 MiB heap
raw pools: vb 26 (26 MiB) ib 2 (2 MiB) cb 27 (54 MiB) staging 5 (40 MiB)
vmaCreateBufferWithAlignment failed fallback system memory allocation. Fatal error: out of video and system memory.CLoggingSystem::LogDirect. That may be the intended way a fatal error ends, but the crash report then names the logger instead of the memory error.17592186043052.85 MiB, which is 264 bytes minus about 1.36 GiB. That looks like a negative 32-bit size widened to unsigned 64 bits. Our code only creates GpuBuffer<T> with an int element count that doubles as it grows. A count x stride that overflows a 32-bit int seems to reach Vulkan as an enormous request instead of being rejected with an exception.vmaAllocateMemory (render target pool, 23.59 MiB, about 22.9 GB used of a 6.5 GB budget).GpuBuffer<T>s that grow by doubling, then dispatch a compute shader that writes into texture-array slices. Several thousand dispatches per frame, sustained for a few frames. Running our probe surface_perf n=2000 crashed the editor 4 times out of 4.GpuBuffer is created.