Georg Lehmann
f17cb6b714
amd: replace ACCESS_TYPE_SMEM with ACCESS_SMEM_AMD
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36764 >
2025-08-15 08:26:10 +00:00
Corentin Noël
6da8752758
tgsi: Remove return type from tgsi_instruction_texture
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This return type is never used.
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36765 >
2025-08-15 08:03:04 +00:00
Samuel Pitoiset
eb1a093965
radv: stop using the pipeline layout for uploading push constants with DGC
...
Pass the push constant size as a parameter instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36777 >
2025-08-15 07:45:00 +00:00
Samuel Pitoiset
b527a4f23e
radv: split uploading push constants with DGC in two parts
...
The first part is for copying "normal" push constant values to the
upload space in the preprocess buffer. The second part is only for
updating the push constants set for DGC.
This will allow us to remove using the pipeline layout in the DGC
shader.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36777 >
2025-08-15 07:45:00 +00:00
Samuel Pitoiset
3e0d4a1df1
radv: stop using the pipeline layout for inlined push constants with DGC
...
This only updates the inlined push constants set for DGC and doesn't
need the pipeline layout if the index is computed differently.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36777 >
2025-08-15 07:45:00 +00:00
Samuel Pitoiset
95e387d283
radv: remove useless inline push constant emission with DGC IES
...
This is actually not needed because the base pipeline/shader is
required to be bind before preprocess()/execute() are called. Also,
the push constant layout must be similar between all pipelines/shaders
in the same IES.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36777 >
2025-08-15 07:45:00 +00:00
Georg Lehmann
6ba462bf26
aco/disable_wqm: optimize local mask creation
...
Foz-DB Navi48:
Totals from 7861 (9.79% of 80287) affected shaders:
Instrs: 13276809 -> 13183483 (-0.70%)
CodeSize: 71221260 -> 70852500 (-0.52%); split: -0.52%, +0.00%
Latency: 124001421 -> 123976480 (-0.02%); split: -0.02%, +0.00%
InvThroughput: 17820119 -> 17817551 (-0.01%); split: -0.01%, +0.00%
SALU: 1736356 -> 1666673 (-4.01%)
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:47 +00:00
Georg Lehmann
fc53cf146c
aco: disable wqm for sampled buffer loads when not needed
...
Foz-DB GFX1201:
Totals from 318 (0.40% of 80287) affected shaders:
Instrs: 313039 -> 314064 (+0.33%); split: -0.00%, +0.33%
CodeSize: 1684104 -> 1688212 (+0.24%); split: -0.00%, +0.24%
VGPRs: 15120 -> 15144 (+0.16%)
Latency: 2515023 -> 2518610 (+0.14%); split: -0.06%, +0.20%
InvThroughput: 447468 -> 447615 (+0.03%); split: -0.02%, +0.05%
VClause: 4866 -> 4914 (+0.99%)
SClause: 6564 -> 6559 (-0.08%); split: -0.09%, +0.02%
Copies: 23577 -> 23673 (+0.41%); split: -0.04%, +0.45%
PreSGPRs: 16019 -> 16029 (+0.06%)
VALU: 172157 -> 172143 (-0.01%)
SALU: 52816 -> 53867 (+1.99%)
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:47 +00:00
Georg Lehmann
883b1ca364
aco: disable wqm for tex loads when not needed
...
By only executing VMEM loads for lanes where the result is used, we can save
bandwidth.
The NIR pass only handles tex for now, but those are most common anyway.
We can extend it handle image/ssbo/ubo/global loads in the future.
Foz-DB GFX1201:
Totals from 32633 (40.66% of 80251) affected shaders:
Instrs: 22635910 -> 23193509 (+2.46%); split: -0.00%, +2.46%
CodeSize: 122880044 -> 125093428 (+1.80%); split: -0.00%, +1.81%
VGPRs: 1481868 -> 1481712 (-0.01%)
SpillSGPRs: 3877 -> 4301 (+10.94%); split: -0.52%, +11.45%
Latency: 171480552 -> 171685219 (+0.12%); split: -0.18%, +0.30%
InvThroughput: 24364743 -> 24373441 (+0.04%); split: -0.08%, +0.12%
VClause: 388318 -> 388557 (+0.06%); split: -0.06%, +0.13%
SClause: 774781 -> 776492 (+0.22%); split: -0.29%, +0.51%
Copies: 1416586 -> 1541199 (+8.80%); split: -0.16%, +8.96%
Branches: 419591 -> 419673 (+0.02%); split: -0.02%, +0.04%
PreSGPRs: 1330303 -> 1416540 (+6.48%)
PreVGPRs: 964864 -> 964863 (-0.00%)
VALU: 12919601 -> 12920254 (+0.01%); split: -0.01%, +0.01%
SALU: 2685402 -> 3224147 (+20.06%); split: -0.00%, +20.07%
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
7159fd21f8
aco: don't restrict vmem load scheduling by inserting p_end_wqm early
...
Foz-DB GFX1201:
Totals from 7 (0.01% of 80251) affected shaders:
Instrs: 703 -> 729 (+3.70%)
CodeSize: 4032 -> 4136 (+2.58%)
Latency: 5840 -> 4715 (-19.26%)
InvThroughput: 441 -> 405 (-8.16%)
Copies: 61 -> 67 (+9.84%)
PreSGPRs: 216 -> 218 (+0.93%)
SALU: 93 -> 113 (+21.51%)
When reordered after the next commit:
Foz-DB GFX1201:
Totals from 1609 (2.00% of 80251) affected shaders:
MaxWaves: 47984 -> 47986 (+0.00%)
Instrs: 1326847 -> 1332797 (+0.45%); split: -0.05%, +0.50%
CodeSize: 7248720 -> 7275364 (+0.37%); split: -0.04%, +0.41%
VGPRs: 74968 -> 75148 (+0.24%); split: -0.06%, +0.30%
SpillSGPRs: 182 -> 184 (+1.10%)
Latency: 10370602 -> 10172524 (-1.91%); split: -2.06%, +0.15%
InvThroughput: 1446508 -> 1445920 (-0.04%); split: -0.11%, +0.06%
VClause: 23567 -> 23559 (-0.03%); split: -0.35%, +0.32%
SClause: 43143 -> 43203 (+0.14%); split: -0.52%, +0.66%
Copies: 80948 -> 81622 (+0.83%); split: -0.32%, +1.16%
Branches: 21599 -> 21727 (+0.59%)
PreSGPRs: 69963 -> 70732 (+1.10%)
VALU: 778968 -> 779024 (+0.01%); split: -0.02%, +0.03%
SALU: 159797 -> 165329 (+3.46%); split: -0.01%, +3.47%
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
c1b29174b4
aco: use a smaller wqm section for strict_wqm sampling
...
It's only important that the coordinate is created in WQM,
the sample itself doesn't care.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
de4b345949
aco/insert_exec: remove per instruction wqm/exact exec handling
...
No Foz-DB changes on GFX1201.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
11cee3d634
aco: use new disable_wqm for p_dual_src_export_gfx11
...
No Foz-DB changes on GFX1201.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
8e53ba9a0a
aco: use new disable_wqm for exp
...
No Foz-DB changes on GFX1201.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
bd6647e21e
aco/builder: support new disable_wqm
...
Create the additional undef operands that are filled by insert_exec.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
0e66f2b2cc
aco: use new disable_wqm for mimg
...
Foz-DB GFX1201:
Totals from 88 (0.11% of 80251) affected shaders:
Instrs: 81954 -> 82218 (+0.32%); split: -0.02%, +0.34%
CodeSize: 451824 -> 452880 (+0.23%); split: -0.02%, +0.25%
Latency: 308818 -> 308746 (-0.02%); split: -0.05%, +0.02%
VClause: 1324 -> 1318 (-0.45%)
Copies: 2795 -> 2784 (-0.39%)
PreSGPRs: 4029 -> 4035 (+0.15%)
SALU: 6563 -> 6809 (+3.75%); split: -0.15%, +3.90%
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
922f559c3c
aco: use new disable_wqm for flatlike
...
No Foz-DB changes on GFX1201.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
a4c537c5b3
aco: use new disable_wqm for mubuf/mtbuf
...
Foz-DB GFX1201:
Totals from 66 (0.08% of 80251) affected shaders:
Instrs: 45373 -> 45663 (+0.64%); split: -0.01%, +0.65%
CodeSize: 251708 -> 252900 (+0.47%); split: -0.00%, +0.48%
Latency: 278977 -> 278652 (-0.12%); split: -0.14%, +0.02%
InvThroughput: 38259 -> 38245 (-0.04%); split: -0.05%, +0.02%
VClause: 982 -> 962 (-2.04%)
Copies: 2882 -> 2808 (-2.57%)
PreSGPRs: 2564 -> 2599 (+1.37%)
SALU: 4748 -> 5010 (+5.52%)
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
63af48ae2e
aco/insert_exec: new way to handle instructions that need wqm disabled
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
ca25553b92
aco: add a post-RA pass to disable wqm
...
By disabling WQM post-RA, we don't have RA/spilling mov issues with image_sample
operands that need to be computed in WQM.
We also don't restrict scheduling by inserting exec writes.
The only downside is more scalar ALU usage, but the SALU is almost always underutilized.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Georg Lehmann
34b154866f
aco/insert_exec: remove p_jump_to_epilog from needs exact
...
p_end_wqm will always be emitted before it by isel.
No Foz-DB changes on GFX1201.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35970 >
2025-08-15 07:03:46 +00:00
Yonggang Luo
5e51c707ed
lavapipe: Revise HAVE_LIBDRM to guard on drm only variables
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36731 >
2025-08-15 05:58:23 +00:00
Karol Herbst
da8e990a0a
rusticl: specify FD type when importing fences
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:09 +00:00
Karol Herbst
f543b36178
rusticl/mesa: port PipeFence to use ThreadSafeCPtr
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:08 +00:00
Karol Herbst
ec88e83796
rusticl: handle failures when importing fences
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:08 +00:00
Karol Herbst
c3a331234d
rusticl/icd: sort extension functions by extension name
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:07 +00:00
Karol Herbst
dda52143d4
rusticl/icd: qualify CLResult inside impl_cl_type_trait_base macro
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:07 +00:00
Karol Herbst
ad0402fc57
rusticl/util: drop uneccesary Arc in event_list_from_cl
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:06 +00:00
Karol Herbst
495a46bf49
rusticl/util: use read_and_advance in Properties
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:06 +00:00
Karol Herbst
4826e37f24
rusticl/util: add read_and_advance methods for pointers
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:06 +00:00
Karol Herbst
060a084a12
rusticl: fix a bunch of warnings
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36780 >
2025-08-15 00:13:06 +00:00
Emma Anholt
d6a79f7e9f
ci/tu: generalize the multisample_resolve tess/gs flakes.
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
More variants have shown up, no reason to think formats are special.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36781 >
2025-08-14 19:26:27 +00:00
Emma Anholt
8fb872159b
ci/tu: Drop highp.scalar xfail.
...
Fixes: 99f09f8047 ("Revert "tu: Use nir_opt_reassociate."")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36781 >
2025-08-14 19:26:27 +00:00
Emma Anholt
7090ad706b
ci/tu: Generalize the FDM flakes and link an issue.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36781 >
2025-08-14 19:26:27 +00:00
Karol Herbst
a1aed20842
rusticl: implement cl_ext_immutable_memory_objects
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630 >
2025-08-14 18:40:35 +00:00
Karol Herbst
d483566271
rusticl/mem: turn bool argument into enum in validate_mem_flags
...
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630 >
2025-08-14 18:40:35 +00:00
Karol Herbst
bcec4acbd3
rusticl/mem: split out mem_flags validation for creation operations
...
validate_mem_flags is used by clCreate* and clGetSupportedImageFormats
which is a bit akward as those APIs have slightly different semantics on
the image flags and the clCreate* APIs support more flags with more
complex validation rules. And clGetSupportedImageFormats should be very
permissive in what combination of flags to accept.
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630 >
2025-08-14 18:40:35 +00:00
Karol Herbst
61ad2bdf7f
rusticl/kernel: create shader constants as immutable
...
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630 >
2025-08-14 18:40:35 +00:00
Karol Herbst
c5f57f6594
rusticl/mesa: add ResourceType::Immutable
...
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630 >
2025-08-14 18:40:34 +00:00
Yinjie Yao
4cb6094f2e
ac,radeonsi/vcn: Use correct swizzle_mode for vcn4
...
On VCN4 SWIZZLE_MODE_8x8_1D_THIN_12_24BPP use different value
than previous VCN generations
Signed-off-by: Yinjie Yao <yinjie.yao@amd.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36775 >
2025-08-14 17:24:40 +00:00
Eric Engestrom
0aef7ede1e
zink+radv/ci: give gfx1201 piglit tests a display to use
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:10 +02:00
Eric Engestrom
d0ef3c02c7
zink+radv/ci: give vangogh piglit tests a display to use
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:10 +02:00
Eric Engestrom
ef4b6808b9
zink+radv/ci: give navi31 piglit tests a display to use
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:10 +02:00
Eric Engestrom
c789def7a6
zink+radv/ci: give navi10 piglit tests a display to use
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:10 +02:00
Eric Engestrom
7f0b5a2c92
zink+radv/ci: give polaris10 piglit tests a display to use
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:09 +02:00
Eric Engestrom
003df4bb64
zink+radv/ci: add common fails for the next commits
...
The GPU-specific fails will be in each commit.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36579 >
2025-08-14 18:10:09 +02:00
Eric Engestrom
c038839eb3
zink+radv/ci: fix typo in skips comment
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36648 >
2025-08-14 16:07:04 +00:00
Eric Engestrom
c8c1541cd4
zink+radv/ci: deduplicate zink-radv-*-fails.txt files
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36648 >
2025-08-14 16:07:04 +00:00
Eric Engestrom
2e26e1e86f
zink+radv/ci: deduplicate zink-radv-*-skips.txt lists
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36648 >
2025-08-14 16:07:04 +00:00
Eric Engestrom
90d692bd32
zink+radv/ci: set DRIVER_NAME=zink-radv to allow using common expectation files
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36648 >
2025-08-14 16:07:04 +00:00