Vulkan-ExtensionLayer icon indicating copy to clipboard operation
Vulkan-ExtensionLayer copied to clipboard

Decompression Layer Testing fails on Pixel 7 and Galaxy S23

Open johnzupin opened this issue 2 years ago • 11 comments

Seeing the following tests fail on a pixel 7 device:

[==========] Running 17 tests from 3 test suites.
[----------] Global test environment set-up.
[----------] 14 tests from Sync2Test
[ RUN      ] Sync2Test.OwnershipTranfersImage
/home/john/work/repos/Vulkan-ExtensionLayer/tests/synchronization2_tests.cpp:120: Skipped
             TEST SKIPPED:Required queue families not present (non-graphics capable required).


[  SKIPPED ] Sync2Test.OwnershipTranfersImage (20 ms)
[ RUN      ] Sync2Test.OwnershipTranfersBuffer
/home/john/work/repos/Vulkan-ExtensionLayer/tests/synchronization2_tests.cpp:174: Skipped
             TEST SKIPPED:Required queue families not present (non-graphics capable required).


[  SKIPPED ] Sync2Test.OwnershipTranfersBuffer (17 ms)
[ RUN      ] Sync2Test.SecondaryCommandBufferBarrier
[       OK ] Sync2Test.SecondaryCommandBufferBarrier (17 ms)
[ RUN      ] Sync2Test.SecondaryCommandBufferImageLayoutTransitions
[       OK ] Sync2Test.SecondaryCommandBufferImageLayoutTransitions (18 ms)
[ RUN      ] Sync2Test.QueueSubmitSemaphoresAndLayoutTracking
[       OK ] Sync2Test.QueueSubmitSemaphoresAndLayoutTracking (17 ms)
[ RUN      ] Sync2Test.CommandBufferSimultaneousUseSync
[       OK ] Sync2Test.CommandBufferSimultaneousUseSync (14 ms)
[ RUN      ] Sync2Test.BarrierLayoutToImageUsage
[       OK ] Sync2Test.BarrierLayoutToImageUsage (20 ms)
[ RUN      ] Sync2Test.WaitEventThenSet
[       OK ] Sync2Test.WaitEventThenSet (16 ms)
[ RUN      ] Sync2Test.TwoQueueSubmitsSeparateQueuesWithSemaphoreAndOneFenceTwoWFF
[       OK ] Sync2Test.TwoQueueSubmitsSeparateQueuesWithSemaphoreAndOneFenceTwoWFF (14 ms)
[ RUN      ] Sync2Test.TwoSubmitInfosWithSemaphoreOneQueueSubmitsOneFence
[       OK ] Sync2Test.TwoSubmitInfosWithSemaphoreOneQueueSubmitsOneFence (15 ms)
[ RUN      ] Sync2Test.ClearDepthStencilWithValidRange
[       OK ] Sync2Test.ClearDepthStencilWithValidRange (17 ms)
[ RUN      ] Sync2Test.QueueSubmitTimelineSemaphore
[       OK ] Sync2Test.QueueSubmitTimelineSemaphore (15 ms)
[ RUN      ] Sync2Test.SwapchainImage
[       OK ] Sync2Test.SwapchainImage (31 ms)
[ RUN      ] Sync2Test.EnumerateDeviceExtensionProperties
[       OK ] Sync2Test.EnumerateDeviceExtensionProperties (15 ms)
[----------] 14 tests from Sync2Test (254 ms total)

[----------] 1 test from Sync2CompatTest
[ RUN      ] Sync2CompatTest.Vulkan10
[       OK ] Sync2CompatTest.Vulkan10 (9 ms)
[----------] 1 test from Sync2CompatTest (9 ms total)

[----------] 2 tests from DecompressionTest
[ RUN      ] DecompressionTest.DecompressMemory
/home/john/work/repos/Vulkan-ExtensionLayer/tests/decompression_tests.cpp:121: Failure
Value of: compareResult == 0
  Actual: false
Expected: true

[  FAILED  ] DecompressionTest.DecompressMemory (607 ms)
[ RUN      ] DecompressionTest.DecompressMemoryIndirect
/home/john/work/repos/Vulkan-ExtensionLayer/tests/decompression_tests.cpp:221: Failure
Value of: compareResult == 0
  Actual: false
Expected: true

[  FAILED  ] DecompressionTest.DecompressMemoryIndirect (574 ms)
[----------] 2 tests from DecompressionTest (1182 ms total)

[----------] Global test environment tear-down
[==========] 17 tests from 3 test suites ran. (1448 ms total)
[  PASSED  ] 13 tests.
[  SKIPPED ] 2 tests, listed below:
[  SKIPPED ] Sync2Test.OwnershipTranfersImage
[  SKIPPED ] Sync2Test.OwnershipTranfersBuffer
[  FAILED  ] 2 tests, listed below:
[  FAILED  ] DecompressionTest.DecompressMemory
[  FAILED  ] DecompressionTest.DecompressMemoryIndirect

 2 FAILED TESTS

You can duplicate this issue by running a manual-Vulkan-ExtensionLayer test, then selecting tcubuand2 as the NODE, and putting --devices pixel_7 into the ARGS option so it only runs on the pixel 7.

Test run link: http://tcubuser:8080/view/Manual/job/manual-Vulkan-ExtensionLayer/15/artifact/vulkantest-results/Pixel_7-33301FDH2005F6/out.txt

johnzupin avatar Aug 30 '23 22:08 johnzupin

FYI @vkushwaha-nv

juan-lunarg avatar Aug 30 '23 22:08 juan-lunarg

Testing passes on a GalaxyS22 so the bug isn't as simple as not working on Android.

juan-lunarg avatar Aug 30 '23 22:08 juan-lunarg

Was this recently enabled? Trying to understand why wasn't this seen before.

vkushwaha-nv avatar Aug 31 '23 12:08 vkushwaha-nv

Was this recently enabled? Trying to understand why wasn't this seen before.

The LunarG CI is being updated with a newer Android device. This issue was found on the pixel7 which is the newer device.

KarenGhavam-lunarG avatar Aug 31 '23 13:08 KarenGhavam-lunarG

Can you please attach or email me the full failing log with additional logging enabled?

see in decompresison.cpp on how to turn on logging :

#define kLayerSettingsLogging "logging" or static bool logging_enabled = false;

vkushwaha-nv avatar Sep 01 '23 17:09 vkushwaha-nv

[==========] Running 17 tests from 3 test suites.
[----------] Global test environment set-up.
[----------] 14 tests from Sync2Test
[ RUN      ] Sync2Test.OwnershipTranfersImage
/home/lunarg/.jenkins/mel/Vulkan-ExtensionLayer/tests/synchronization2_tests.cpp:120: Skipped
             TEST SKIPPED:Required queue families not present (non-graphics capable required).


[  SKIPPED ] Sync2Test.OwnershipTranfersImage (18 ms)
[ RUN      ] Sync2Test.OwnershipTranfersBuffer
/home/lunarg/.jenkins/mel/Vulkan-ExtensionLayer/tests/synchronization2_tests.cpp:174: Skipped
             TEST SKIPPED:Required queue families not present (non-graphics capable required).


[  SKIPPED ] Sync2Test.OwnershipTranfersBuffer (19 ms)
[ RUN      ] Sync2Test.SecondaryCommandBufferBarrier
[       OK ] Sync2Test.SecondaryCommandBufferBarrier (19 ms)
[ RUN      ] Sync2Test.SecondaryCommandBufferImageLayoutTransitions
[       OK ] Sync2Test.SecondaryCommandBufferImageLayoutTransitions (19 ms)
[ RUN      ] Sync2Test.QueueSubmitSemaphoresAndLayoutTracking
[       OK ] Sync2Test.QueueSubmitSemaphoresAndLayoutTracking (16 ms)
[ RUN      ] Sync2Test.CommandBufferSimultaneousUseSync
[       OK ] Sync2Test.CommandBufferSimultaneousUseSync (14 ms)
[ RUN      ] Sync2Test.BarrierLayoutToImageUsage
[       OK ] Sync2Test.BarrierLayoutToImageUsage (19 ms)
[ RUN      ] Sync2Test.WaitEventThenSet
[       OK ] Sync2Test.WaitEventThenSet (20 ms)
[ RUN      ] Sync2Test.TwoQueueSubmitsSeparateQueuesWithSemaphoreAndOneFenceTwoWFF
[       OK ] Sync2Test.TwoQueueSubmitsSeparateQueuesWithSemaphoreAndOneFenceTwoWFF (16 ms)
[ RUN      ] Sync2Test.TwoSubmitInfosWithSemaphoreOneQueueSubmitsOneFence
[       OK ] Sync2Test.TwoSubmitInfosWithSemaphoreOneQueueSubmitsOneFence (17 ms)
[ RUN      ] Sync2Test.ClearDepthStencilWithValidRange
[       OK ] Sync2Test.ClearDepthStencilWithValidRange (15 ms)
[ RUN      ] Sync2Test.QueueSubmitTimelineSemaphore
[       OK ] Sync2Test.QueueSubmitTimelineSemaphore (13 ms)
[ RUN      ] Sync2Test.SwapchainImage
[       OK ] Sync2Test.SwapchainImage (35 ms)
[ RUN      ] Sync2Test.EnumerateDeviceExtensionProperties
[       OK ] Sync2Test.EnumerateDeviceExtensionProperties (14 ms)
[----------] 14 tests from Sync2Test (262 ms total)

[----------] 1 test from Sync2CompatTest
[ RUN      ] Sync2CompatTest.Vulkan10
[       OK ] Sync2CompatTest.Vulkan10 (12 ms)
[----------] 1 test from Sync2CompatTest (12 ms total)

[----------] 2 tests from DecompressionTest
[ RUN      ] DecompressionTest.DecompressMemory
Memory decompression feature not available in the driver, enabling decompression layer.
Info: subgroupSize 16
Info: bytecodeIndex 5
Info: Memory Heaps/Types:
    Heap 0: Size 7786545152, Flags 1
    Heap 1: Size 104857600, Flags 1
    Memory Type 0: HeapIndex 0, Flags 7
    Memory Type 1: HeapIndex 0, Flags 11
    Memory Type 2: HeapIndex 0, Flags 17
    Memory Type 3: HeapIndex 1, Flags 33
Info: Using memory index 0 for indirectDispatch Buffer.
Info: vkCmdDecompressMemoryNV: Using VK_LAYER_KHRONOS_memory_decompression layer
Info: vkCmdDecompressMemoryNV: Using VK_LAYER_KHRONOS_memory_decompression layer
/home/lunarg/.jenkins/mel/Vulkan-ExtensionLayer/tests/decompression_tests.cpp:121: Failure
Value of: compareResult == 0
  Actual: false
Expected: true

[  FAILED  ] DecompressionTest.DecompressMemory (592 ms)
[ RUN      ] DecompressionTest.DecompressMemoryIndirect
Memory decompression feature not available in the driver, enabling decompression layer.
Info: subgroupSize 16
Info: bytecodeIndex 5
Info: Memory Heaps/Types:
    Heap 0: Size 7786545152, Flags 1
    Heap 1: Size 104857600, Flags 1
    Memory Type 0: HeapIndex 0, Flags 7
    Memory Type 1: HeapIndex 0, Flags 11
    Memory Type 2: HeapIndex 0, Flags 17
    Memory Type 3: HeapIndex 1, Flags 33
Info: Using memory index 0 for indirectDispatch Buffer.
Info: vkCmdDecompressMemoryIndirectCountNV: Using VK_LAYER_KHRONOS_memory_decompression layer
/home/lunarg/.jenkins/mel/Vulkan-ExtensionLayer/tests/decompression_tests.cpp:221: Failure
Value of: compareResult == 0
  Actual: false
Expected: true

[  FAILED  ] DecompressionTest.DecompressMemoryIndirect (571 ms)
[----------] 2 tests from DecompressionTest (1163 ms total)

[----------] Global test environment tear-down
[==========] 17 tests from 3 test suites ran. (1441 ms total)
[  PASSED  ] 13 tests.
[  SKIPPED ] 2 tests, listed below:
[  SKIPPED ] Sync2Test.OwnershipTranfersImage
[  SKIPPED ] Sync2Test.OwnershipTranfersBuffer
[  FAILED  ] 2 tests, listed below:
[  FAILED  ] DecompressionTest.DecompressMemory
[  FAILED  ] DecompressionTest.DecompressMemoryIndirect

 2 FAILED TESTS

johnzupin avatar Sep 01 '23 20:09 johnzupin

To be able to update the CI on this repository to the Pixel 7 device, the test for this layer has been added to a blacklist to prevent it from running. Once this layer is corrected to operate correctly on the Pixel 7, the test can be removed from the blacklist.

KarenGhavam-lunarG avatar Sep 08 '23 20:09 KarenGhavam-lunarG

@vkushwaha-nv The tests are failing on Samsung Galaxy S23 Ultra as well

ziga-lunarg avatar Sep 29 '23 18:09 ziga-lunarg

Can we check if this fixes the issue? https://github.com/KhronosGroup/Vulkan-ExtensionLayer/pull/325

vkushwaha-nv avatar Oct 01 '23 14:10 vkushwaha-nv

Note these tests also fail on MacOS with MoltenVK.

juan-lunarg avatar Nov 18 '23 00:11 juan-lunarg

Note these tests also fail on MacOS with MoltenVK.

You'll need to remove the skips added explicitly for MacOS. Currently testing skips decompression layer testing if it detects the portability layer.

juan-lunarg avatar Nov 18 '23 00:11 juan-lunarg