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 running VulkanSample application's tests with my AMD 7950X (AMD Radeon(TM) Graphics), I get a validation error caused by TestAllocationAliasing(). Running the tests with my Intel Arc A770 works without any problems. (I use the --GPUIndex command line to enforce which physical device will be chosen)
When I continue the tests, there is another issue with ProcessDefragmentationPass, but I will create a separate issue for this.
Vulkan Memory Allocator Sample 3.0.1
Vulkan API version used: 1.3
physicalDeviceProperties:
driverVersion: 0x8000FA
vendorID: 0x1002 (AMD)
deviceID: 0x164E
deviceType: 1 (INTEGRATED_GPU)
deviceName: AMD Radeon(TM) Graphics
limits:
maxMemoryAllocationCount: 4096
bufferImageGranularity: 1 B
nonCoherentAtomSize: 128 B
physicalDeviceVulkan11Properties:
maxMemoryAllocationSize: 2147483648 B (2.00 GB)
physicalDeviceVulkan12Properties:
driverID: 1 (AMD_PROPRIETARY)
driverName: AMD proprietary driver
driverInfo: 22.40.40 (AMD proprietary shader compiler)
MEMORY HEAPS:
heapCount=3, typeCount=8
Heap 0: 268435456 B (256.00 MB) DEVICE_LOCAL, MULTI_INSTANCE
Type 0: DEVICE_LOCAL
Type 4: DEVICE_LOCAL, DEVICE_COHERENT (AMD), DEVICE_UNCACHED (AMD)
Heap 1: 16437477376 B (15.31 GB)
Type 1: HOST_VISIBLE, HOST_COHERENT
Type 3: HOST_VISIBLE, HOST_COHERENT, HOST_CACHED
Type 5: HOST_VISIBLE, HOST_COHERENT, DEVICE_COHERENT (AMD), DEVICE_UNCACHED (AMD)
Type 7: HOST_VISIBLE, HOST_COHERENT, HOST_CACHED, DEVICE_COHERENT (AMD), DEVICE_UNCACHED (AMD)
Heap 2: 268435456 B (256.00 MB) DEVICE_LOCAL, MULTI_INSTANCE
Type 2: DEVICE_LOCAL, HOST_VISIBLE, HOST_COHERENT
Type 6: DEVICE_LOCAL, HOST_VISIBLE, HOST_COHERENT, DEVICE_COHERENT (AMD), DEVICE_UNCACHED (AMD)
Conclusions:
- 2 heaps are DEVICE_LOCAL, total 512.00 MB.
- 2 heaps are HOST_VISIBLE, total 15.56 GB.
- 1 heaps are DEVICE_LOCAL and HOST_VISIBLE, total 256.00 MB.
- No types are HOST_VISIBLE but not HOST_COHERENT.
- No types are not DEVICE_LOCAL and not HOST_VISIBLE.
- 4 types are AMD-specific DEVICE_COHERENT or DEVICE_UNCACHED.
- No types are LAZILY_ALLOCATED.
- A buffer with VERTEX_BUFFER usage can be created in some non-DEVICE_LOCAL type.
- An image with OPTIMAL tiling and SAMPLED usage can be created in some non-DEVICE_LOCAL type.
Enabled extensions and features:
Validation layer: 1
Sparse binding: 1
VK_EXT_memory_budget: 1
VK_AMD_device_coherent_memory: 1
bufferDeviceAddress: 1
VK_EXT_memory_priority: 1
TESTING:
Test JSON
Saving JSON dump to file "JSON_VULKAN.json"
Test basics
Test vnaGetAllocatorInfo
Test virtual blocks
Test virtual blocks algorithms
Benchmark virtual blocks algorithms
Alignment,Algorithm,Strategy,Alloc time ms,Random operation time ms,Free time ms
1,TLSF,Default,0.5684,1.802,0.6351
1,Linear,Default,0.6116,2.0894,1.0173
1,TLSF,MIN_MEMORY,0.4404,1.7821,0.6319
1,Linear,MIN_MEMORY,0.3802,1.8538,0.9999
1,TLSF,MIN_TIME,0.421,1.7144,0.6522
1,Linear,MIN_TIME,0.3785,1.9067,0.9979
16,TLSF,Default,1.4293,2.2369,0.6939
16,Linear,Default,0.3765,1.8518,1.0022
16,TLSF,MIN_MEMORY,1.8616,3.6379,0.7029
16,Linear,MIN_MEMORY,0.3808,1.8713,1.0271
16,TLSF,MIN_TIME,0.7092,2.1489,0.7045
16,Linear,MIN_TIME,0.3808,1.8795,1.0175
64,TLSF,Default,1.6448,4.1676,0.7037
64,Linear,Default,0.3809,1.8937,1.0152
64,TLSF,MIN_MEMORY,1.817,4.6938,0.6869
64,Linear,MIN_MEMORY,0.3966,2.0087,1.0144
64,TLSF,MIN_TIME,0.7245,2.0992,0.7062
64,Linear,MIN_TIME,0.3808,1.8716,1.0115
256,TLSF,Default,1.8157,4.7682,0.7052
256,Linear,Default,0.3891,1.8862,1.0088
256,TLSF,MIN_MEMORY,1.8568,4.765,0.6778
256,Linear,MIN_MEMORY,0.3837,1.8848,1.0349
256,TLSF,MIN_TIME,0.7472,2.0387,0.7257
256,Linear,MIN_TIME,0.382,1.8839,1.0164
Test allocation versus resource size
Test Pool MinBlockCount
Test Pool MinAllocationAlignment
Test pools and allocation parameters
Test heap size limit
Testing memory usage:
VMA_MEMORY_USAGE_UNKNOWN:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=0
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=0
VMA_MEMORY_USAGE_GPU_ONLY:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=0
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=0
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=0
VMA_MEMORY_USAGE_CPU_ONLY:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=1
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=1
VMA_MEMORY_USAGE_CPU_TO_GPU:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=2
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=2
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=2
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=2
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=2
VMA_MEMORY_USAGE_GPU_TO_CPU:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=3
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=3
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=3
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=3
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=3
VMA_MEMORY_USAGE_CPU_COPY:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=1
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, memoryTypeIndex=1
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, memoryTypeIndex=1
VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED:
Buffer TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, FAILED with res=-8
Buffer TRANSFER_DST + VERTEX_BUFFER: memoryTypeBits=0xFF, FAILED with res=-8
Image OPTIMAL TRANSFER_DST + TRANSFER_SRC: memoryTypeBits=0xFF, FAILED with res=-8
Image OPTIMAL TRANSFER_DST + SAMPLED: memoryTypeBits=0xFF, FAILED with res=-8
Image OPTIMAL SAMPLED + COLOR_ATTACHMENT: memoryTypeBits=0xFF, FAILED with res=-8
Testing device coherent memory...
Testing budget...
Testing aliasing...
size: max(1441792, 8896880) = 8896880
alignment: max(65536, 65536) = 65536
memoryTypeBits: 255 & 255 = 255
Testing allocation aliasing...
VUID-vkAllocateMemory-pAllocateInfo-01713 ║ Validation Error: [ VUID-vkAllocateMemory-pAllocateInfo-01713 ] Object 0: handle =
0x1cbd17a8e20, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xe9a2b96f | vkAllocateMemory: attempting to allocate 314572800
bytes from heap 0,but size of that heap is only 268435456 bytes. The Vulkan spec states: pAllocateInfo->allocationSize must be less than
or equal to VkPhysicalDeviceMemoryProperties::memoryHeaps[memindex].size where memindex =
VkPhysicalDeviceMemoryProperties::memoryTypes[pAllocateInfo->memoryTypeIndex].heapIndex as returned by
vkGetPhysicalDeviceMemoryProperties for the VkPhysicalDevice that device was created from (https://vulkan.lunarg.com/doc/view
/1.3.246.0/windows/1.3-extensions/vkspec.html#VUID-vkAllocateMemory-pAllocateInfo-01713)
The text was updated successfully, but these errors were encountered:
Hello
When running VulkanSample application's tests with my AMD 7950X (AMD Radeon(TM) Graphics), I get a validation error caused by TestAllocationAliasing(). Running the tests with my Intel Arc A770 works without any problems. (I use the
--GPUIndex
command line to enforce which physical device will be chosen)When I continue the tests, there is another issue with ProcessDefragmentationPass, but I will create a separate issue for this.
The text was updated successfully, but these errors were encountered: