Dave Airlie
a59efe40b2
radv/video: handle missing h265 feedback struct.
...
I'm not sure this should be missing, but handle if if it is.
Reviewed-by: Lynne <dev@lynne.ee>
Fixes: 7c6e3c70b6 ("radv/video/enc: report pps overrides in feedback for h265")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31158 >
2024-09-26 04:56:34 +00:00
Dave Airlie
db5312f842
radv/video: add encode field for vcn4
...
Reviewed-by: Lynne <dev@lynne.ee>
Fixes: 967e4e09de ("radv/video: add h265 encode support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31158 >
2024-09-26 04:56:34 +00:00
Dave Airlie
c78e32da3b
radv/video/enc: report pictureAccessGranularity of CTB size.
...
Reviewed-by: Lynne <dev@lynne.ee>
Fixes: 967e4e09de ("radv/video: add h265 encode support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31158 >
2024-09-26 04:56:34 +00:00
Dave Airlie
9fab2072a3
radv/video: use the h264 defines for macroblock w/h
...
Just a cleanup, add some comments as well.
Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31158 >
2024-09-26 04:56:34 +00:00
Colin Marc
88dacc3d80
radv/video: set TemporalId correctly
...
This is only relevant for hierarchical coding using sub-layers.
Fixes: 967e4e09de ("radv/video: add h265 encode support")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Colin Marc <hi@colinmarc.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31303 >
2024-09-26 04:18:11 +00:00
Samuel Pitoiset
a9095f0dbf
radv: do not keep executable info when compiling shaders for ESO
...
This is completely useless and it's wasting memory.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31345 >
2024-09-25 08:33:31 +00:00
Samuel Pitoiset
f7482e85ba
radv: move updating compute scratch for RT when stack size is emitted
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31347 >
2024-09-25 07:56:58 +00:00
Samuel Pitoiset
ebe66dee08
radv: move emitting some RT user SGPRs when the RT pipeline is emitted
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31347 >
2024-09-25 07:56:58 +00:00
Timothy Arceri
c1b97415fa
ci: disable gimark trace
...
gimark requires a mesa environment variable to be set to work around
a shader bug, disable it for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31353 >
2024-09-25 09:25:52 +10:00
Samuel Pitoiset
087ef34b9c
aco: fix descriptor leaking when printing assembly with CLRX
...
This can explode the maximum number of descriptors.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31344 >
2024-09-24 18:11:36 +00:00
Konstantin Seurer
25b09b9c5a
radv: Fix report_ray_intersection affecting terminated rays
...
Fixes dEQP-VK.ray_tracing_pipeline.amber.flags-accept-first.
cc: mesa-stable
Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31186 >
2024-09-24 16:18:31 +00:00
Rhys Perry
bf41cf2eef
radv/rt: don't split array/struct payload variables
...
If the shader has multiple payload variables, split passes might not
preserve the order and this can cause the offsets used for the stores to
not match the payload offsets for nir_intrinsic_trace_ray.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31204 >
2024-09-24 15:41:04 +00:00
Rhys Perry
204e446bcd
radv/rt: align constant data by 64 when inlining shaders
...
There's never any need for anything higher. If this were too high (such
as NIR_ALIGN_MUL_MAX), it would have caused issues.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31204 >
2024-09-24 15:41:04 +00:00
Eric Engestrom
76c5c49fca
radeonsi/ci: mark KHR-GL46.shader_image_load_store.basic-allTargets-atomic as fixed
...
Fixed by a commit in the range e1a53d41...1b4e1007
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31337 >
2024-09-24 07:34:11 +00:00
Eric Engestrom
bc6eae7d0a
radeonsi/ci: document spec@egl_ext_surface_compression@create as crashing
...
Fixes: 213f5e9152 ("Uprev Piglit to e9ab30aeaed97b69868cf4d6d6a3f70f3b53c362")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31337 >
2024-09-24 07:34:11 +00:00
Samuel Pitoiset
cf536f63d1
radv: introduce dirty flags for shaders state
...
Instead of re-emitting some dynamic states when a new shader is bound,
only re-emit the user SGPR states. This is slightly more optimal.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31160 >
2024-09-24 06:00:00 +00:00
Samuel Pitoiset
8beea85232
radv: rename shader_query_state to task_state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31160 >
2024-09-24 06:00:00 +00:00
Samuel Pitoiset
a0951bae70
radv: use only one user SGPR for all NGG state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31160 >
2024-09-24 06:00:00 +00:00
Samuel Pitoiset
3022282ba3
radv: make sure to re-emit shader query state when a task shader is bound
...
This doesn't change anything in practice because if we have a task
shader, we also have a mesh shader and the state was already re-emitted.
Though, this will prevent a regression from the upcoming patches because
the user SGPR layout will change.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31160 >
2024-09-24 06:00:00 +00:00
Samuel Pitoiset
16341f41e1
radv: emit all shader related user SGPR states in one place
...
This will allow us to use only one user SGPR for NGG shaders, and also
further optimizations.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31160 >
2024-09-24 05:59:59 +00:00
David Rosca
1459193b99
ac: Add VCN IB parser
...
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31275 >
2024-09-23 19:25:08 +00:00
Thong Thai
8da847560b
ci: partially emulate cdna devices using lower image opcodes
...
Use the AMD_IMAGE_OPCODES=0 environment variable to test the lower image
opcode code path used by AMD CDNA/compute devices without graphics.
Runs a very limited subset of GL tests.
Signed-off-by: Thong Thai <thong.thai@amd.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31180 >
2024-09-23 17:46:33 +00:00
Konstantin Seurer
00c94e0cd4
radv: Workaround apps using ray tracing when it is unsupported
...
Emitting bvh64_intersect_ray_amd will crash the compiler on pre-GFX10_3
hardware.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11786
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30886 >
2024-09-23 14:02:28 +00:00
Georg Lehmann
0e21cd9e15
aco/gfx10+: work around non uniform ds_append wave64 result
...
In wave64 for hw with native wave32, ds_append seems to be split in a load for
the low half and an atomic for the high half, and other LDS instructions can
be scheduled between the two.
Which means the result of the low half is unusable because it might be out of date.
I was only able to reproduce this issue in WGP mode, but be conservative and
apply the workaround in CU mode too.
Foz-DB Navi31:
Totals from 13 (0.02% of 79395) affected shaders:
Instrs: 7599 -> 7656 (+0.75%)
CodeSize: 39708 -> 39972 (+0.66%)
Latency: 83174 -> 83572 (+0.48%)
InvThroughput: 8271 -> 8357 (+1.04%)
Copies: 718 -> 717 (-0.14%)
VALU: 3689 -> 3703 (+0.38%)
SALU: 935 -> 965 (+3.21%)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11921
Fixes: 45e935800a ("aco: implement nir_shared_append/consume_amd")
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31301 >
2024-09-23 13:17:58 +00:00
Samuel Pitoiset
5c897d00ef
radv: fix assigning mesh shader outputs when clip/cull distances are read in FS
...
The per-primitive output offsets need to be recomputed.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31224 >
2024-09-23 12:12:13 +00:00
Samuel Pitoiset
80d60acb77
radv: only export KHR_video_maintenance1 with KHR_video_queue
...
It's required, otherwise dEQP-VK.info.device_extensions fails.
Fixes: b30462535b ("radv/video: add KHR_video_maintenance1 support")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31285 >
2024-09-20 15:26:28 +00:00
Samuel Pitoiset
cbae7792f9
radv: stop emulating GS invocations for legacy GS on RDNA1-2
...
This is basically a revert of !24231 . This emulation was introduced
to fix counting the number of GS invocations in cases it's VS/TES as
NGG (hw does that), but it's unnecessary.
Since the specification has been clarified and pipeline stat queries
are undefined for stages not present in pipelines.
See https://gitlab.khronos.org/vulkan/vulkan/-/merge_requests/6547
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31153 >
2024-09-20 12:28:08 +00:00
David Rosca
72ae8e25a8
ac: Add remaining VCN encode defines
...
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31113 >
2024-09-20 06:58:29 +00:00
David Rosca
aed89d28d3
ac: Add ac_vcn_init_enc_cmds
...
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31113 >
2024-09-20 06:58:29 +00:00
David Rosca
8ecad47695
ac: Fix typo RENCDOE -> RENCODE
...
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31113 >
2024-09-20 06:58:29 +00:00
David Rosca
d6cf36b4d2
radeonsi/vcn: Add rc_per_pic_ex encode command
...
This makes it a bit cleaner as VCN5 goes back to using base rc_per_pic.
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31113 >
2024-09-20 06:58:29 +00:00
Georg Lehmann
96b9f695d4
aco/isel: use upper bound for v_mul_u32_u24
...
The optimizer can use this.
Foz-DB Navi31:
Totals from 577 (0.73% of 79395) affected shaders:
Instrs: 4209237 -> 4206859 (-0.06%); split: -0.06%, +0.00%
CodeSize: 21511192 -> 21511984 (+0.00%); split: -0.02%, +0.02%
SpillSGPRs: 679 -> 671 (-1.18%)
Latency: 28448559 -> 28443863 (-0.02%); split: -0.04%, +0.03%
InvThroughput: 5221932 -> 5218443 (-0.07%); split: -0.09%, +0.02%
Copies: 297965 -> 298076 (+0.04%); split: -0.01%, +0.05%
VALU: 2385304 -> 2383500 (-0.08%)
SALU: 485553 -> 485533 (-0.00%); split: -0.01%, +0.00%
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31245 >
2024-09-19 17:08:47 +00:00
Georg Lehmann
e1b280a85f
aco: use ac_nir_opt_shared_append
...
Foz-DB Navi21:
Totals from 46 (0.06% of 79395) affected shaders:
Instrs: 85383 -> 84759 (-0.73%)
CodeSize: 449840 -> 447064 (-0.62%)
Latency: 570585 -> 566983 (-0.63%); split: -0.63%, +0.00%
InvThroughput: 133619 -> 132777 (-0.63%)
VClause: 1769 -> 1771 (+0.11%)
SClause: 2524 -> 2525 (+0.04%)
Copies: 6347 -> 6139 (-3.28%)
Branches: 4246 -> 4170 (-1.79%)
PreSGPRs: 2109 -> 2091 (-0.85%)
VALU: 50968 -> 50758 (-0.41%)
SALU: 14473 -> 14129 (-2.38%)
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31075 >
2024-09-19 16:21:48 +00:00
Georg Lehmann
45e935800a
aco: implement nir_shared_append/consume_amd
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31075 >
2024-09-19 16:21:48 +00:00
Georg Lehmann
970503a0b9
aco/assembler: support ds_append/ds_*_addtid
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31075 >
2024-09-19 16:21:48 +00:00
Georg Lehmann
2789cee0c0
amd/nir: add ac_nir_opt_shared_append
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31075 >
2024-09-19 16:21:47 +00:00
Sergi Blanch Torne
213f5e9152
Uprev Piglit to e9ab30aeaed97b69868cf4d6d6a3f70f3b53c362
...
93b4bd2e0a...e9ab30aeae
Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Reviewed-by: David Heidelberg <david@ixit.cz>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31058 >
2024-09-19 15:41:32 +00:00
Samuel Pitoiset
822139aefa
radv/ci: stop skipping dEQP-VK.api.command_buffers.many_indirect_disps_on_secondary
...
It no longer hangs.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31247 >
2024-09-19 13:53:08 +00:00
Eric Engestrom
656ba4c6aa
amd/ci: track changes to the global driver *-skips.txt files
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31253 >
2024-09-19 12:20:36 +00:00
Konstantin Seurer
60c53f5e63
radv: Initialize sqtt state before meta state
...
Sqtt needs to be initialized before BVH build pipelines are compiled to
avoid crashes on startup.
Fixes: 5fa22f9 ("radv: regroup all tools initialization in one helper")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31207 >
2024-09-19 08:27:08 +00:00
Samuel Pitoiset
28ed064a01
amd/addrlib: remove bogus assert in HwlComputeSlicePipeBankXor()
...
For some reasons, this triggers only on VanGogh with some tests that
copy layered BCn images but they all pass in release build.
Suggested-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31226 >
2024-09-19 07:52:36 +00:00
Samuel Pitoiset
1d7b7b36a8
radv: stop reporting VKCTS conformance on GFX11+
...
Only GFX10.3 is conformant against VKCTS 1.3.x but we never submitted
any packages for GFX11+.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31219 >
2024-09-19 07:14:22 +00:00
Georg Lehmann
bc3b8c3a13
radv: advertise VK_KHR_shader_float_controls2
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
b20d793774
aco/tests: fix omod signed zero tests
...
If we keep denorms, omod won't be used no matter what.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
27cf11dc8a
aco: remove per block inf/nan/sz control
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
f1a09d1f40
aco/optimizer: use new per definition float control flags
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
5c3ea47793
aco/tests: use new float control flags
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
9850f759dd
aco/isel: set per instruction float control modes
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
9f1ad7d2f3
aco/vn: handle sz/inf/nan preserve
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00
Georg Lehmann
8912f16464
aco/ir: add float control definition flags
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172 >
2024-09-18 20:46:17 +00:00