anv: dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite and dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store very slow
These two tests
dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite
dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
Take 15+ seconds on an unloaded system. When run in parallel with other tests they time out. perf
says it's ra_allocate
and INTEL_DEBUG=fs
confirms there is a shader in each test with a huge amount of spilling.
dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite
perf report
# Overhead Command Shared Object Symbol
# ........ .............. .................... .......................................
#
78.47% deqp-vk libvulkan_intel.so [.] ra_allocate
6.43% deqp-vk libvulkan_intel.so [.] ra_reset_node_interference
4.06% deqp-vk libvulkan_intel.so [.] fs_reg_alloc::spill_reg
1.50% deqp-vk libvulkan_intel.so [.] backend_instruction::insert_before
1.27% deqp-vk libvulkan_intel.so [.] ra_add_node_interference
1.20% deqp-vk libvulkan_intel.so [.] ra_get_best_spill_node
0.81% deqp-vk libvulkan_intel.so [.] set_search
0.45% deqp-vk libvulkan_intel.so [.] ra_add_node_adjacency
Shaders
Native code for unnamed fragment shader (null) (src_hash 0x73ffc2a4) (sha1 6ded761b90df448f3fc5e7cd12dfa3fcfe9ad472)
SIMD8 shader: 29840 instructions. 2 loops. 2561812 cycles. 1531:1936 spills:fills, 1 sends, scheduled with mode top-down. Promoted 0 constants. Compacted 477440 to 450064 bytes (6%)
dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
perf report
# Overhead Command Shared Object Symbol
# ........ .............. .................... .......................................
#
74.57% deqp-vk libvulkan_intel.so [.] ra_allocate
7.48% deqp-vk libvulkan_intel.so [.] ra_reset_node_interference
6.45% deqp-vk libvulkan_intel.so [.] backend_instruction::insert_before
2.93% deqp-vk libvulkan_intel.so [.] fs_reg_alloc::spill_reg
1.61% deqp-vk libvulkan_intel.so [.] ra_get_best_spill_node
1.00% deqp-vk libvulkan_intel.so [.] ra_add_node_interference
0.72% deqp-vk libvulkan_intel.so [.] set_search
Shaders
Native code for unnamed fragment shader (null) (src_hash 0x310cd128) (sha1 225f71b11e1dd90cdba95667618f84441b7b1dc3)
SIMD8 shader: 34592 instructions. 1 loops. 2825222 cycles. 1835:2346 spills:fills, 3 sends, scheduled with mode top-down. Promoted 0 constants. Compacted 553472 to 524944 bytes (5%)
Google bug: b/298123643