I have found the extension VK_LAYER_LUNARG_device_simulation
to be a godsend in replicating issues found on other devices - I'm using an RTX 2080 and have been able to successfully replicate an issue on an AMD 5700.
However, for fun I thought I would try using a device file for the same model device I have, and I am getting buffer mapping errors, specifically ERROR_MEMORY_MAP_FAILED
when trying to map a buffer that has been successfully created, of size 65536 bytes).
There is no such error when not using the device simulation layer. I don't have the memory mapping failure when using the amd 5700 simulation file.
Any ideas on whether this is a false positive, or something I should look into more deeply?
I've since found the debug output flag for device simulation (environment variable VK_DEVSIM_DEBUG_ENABLE=1
), which lets me see some warnings about some json values being higher than existing, the only pertinent ones seemed to be heap sizes, which are zero when loaded.
If I set the heap size to zero in the file, I can't allocate anything because the heap is then restricted to zero size.
If I remove the section VkPhysicalDeviceMemoryProperties
from the file, I don't see the issue.
I've now cross posted on the LunarG issues page, so there is some more detailed output here.
question from:
https://stackoverflow.com/questions/65600940/vulkan-device-simulation-why-might-i-be-having-memory-map-failures-when-using-a 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…