Mike Blumenkrantz
3b39ecbdf8
zink: stop trying to oom prune batch states
...
this should be regular enough now that such checks are no longer
necessary
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
ffa5518c45
zink: stop using atomics to check fence submit/complete
...
this isn't actually achieving anything since reading a "wrong" value
here isn't harmful
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
d1f8cd54f4
zink: check ctx batch states first when finding a usable one
...
this ensures the completed ones get queued for recycling faster
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
067873d4a4
zink: defer batch state resets more competently
...
previously batch states would defer resource object destruction until
"later", which was somewhat unreliable in the event that the batch state
wasn't checked again for a long while
instead, defer all "large" batch states and then reset them in the submit
thread, which should yield more consistent results, including in scenarios
with multiple contexts in use
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
6dd081ab1b
zink: null out zink_batch_state::next when reusing a batch state
...
this is harmless at present
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
cec2b1327b
zink: split out batch state finding
...
should be no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:34 +00:00
Mike Blumenkrantz
6246590da1
zink: add a util function for appending a batch state
...
these are a singly-linked list with a tail pointer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37068 >
2025-09-02 14:43:33 +00:00
Gert Wollny
c1611edc3a
r600/sfn: remove superfluous semicolon
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37123 >
2025-09-02 13:50:31 +00:00
Gert Wollny
d41ac790d0
r600/sfn: Increase limit for lowering local arrays to scratch
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37123 >
2025-09-02 13:50:31 +00:00
Gert Wollny
47c1880275
r600: remove hack to force a new CF if TEX grad is set
...
The sfn scheduler takes care that we don't hit the slot limit for TEX
instructions when doing this.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37123 >
2025-09-02 13:50:31 +00:00
Hans-Kristian Arntzen
f28f72a5a2
nvk: Avoid passing garbage data in descriptor buffers for UBOs.
...
With the existing union setup, only the first 8 bytes are initialized
properly for UBOs, yet the UBO size is 16, and all 16 bytes are copied
to applications. This leads to broken capture-replay since the
descriptor payload is no longer invariant.
Fix this by ensuring all union members are 16 bytes, which then get
properly initialized with the designated initializers.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Fixes: 8b5835af31 ("nvk: Use bindless cbufs on Turing+")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37053 >
2025-09-02 15:24:22 +02:00
Job Noorman
603d6fe240
ir3: use nir_lower_bit_size for 8-bit bit_count
...
8-bit bit_count cannot simply use the masked result of a 16-bit
bit_count. Make sure it is properly lowered to a 16-bit bit_count.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Fixes: 8aa2cad5df ("ir3: lower relevant 8-bit ALU ops in nir_lower_bit_size")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37116 >
2025-09-02 12:02:03 +00:00
Tapani Pälli
4035520ca9
anv: change some image qualifiers as coherent for Last Of Us
...
This fixes graphics artifacts happening with particular shader.
This 'heuristic' hits few very similar shaders but should provide better
performance than current fix to turn off caching from all shaders.
Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35929 >
2025-09-02 11:04:35 +00:00
David Rosca
3f317348c2
radv/video: Fix VP9 loop filter and segmentation params
...
Fixes: b8ac2d47e7 ("radv/video: add KHR_video_decode_vp9 support.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13801
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37080 >
2025-09-02 10:46:23 +00:00
Daniel Schürmann
441d5aab08
aco/ra: coalesce vector affinities with tied definitions
...
Totals from 19310 (24.19% of 79839) affected shaders: (Navi48)
MaxWaves: 564238 -> 564542 (+0.05%); split: +0.06%, -0.01%
Instrs: 10856428 -> 10803360 (-0.49%); split: -0.53%, +0.04%
CodeSize: 56405088 -> 56189384 (-0.38%); split: -0.41%, +0.02%
VGPRs: 986120 -> 985952 (-0.02%); split: -0.50%, +0.48%
Latency: 53956142 -> 53940850 (-0.03%); split: -0.11%, +0.09%
InvThroughput: 8769260 -> 8735595 (-0.38%); split: -0.49%, +0.11%
VClause: 237471 -> 237452 (-0.01%); split: -0.05%, +0.04%
SClause: 225385 -> 225389 (+0.00%)
Copies: 799792 -> 744150 (-6.96%); split: -7.25%, +0.30%
Branches: 208574 -> 208572 (-0.00%); split: -0.00%, +0.00%
VALU: 6116920 -> 6061448 (-0.91%); split: -0.95%, +0.04%
SALU: 1442068 -> 1441990 (-0.01%); split: -0.01%, +0.00%
VOPD: 1914 -> 1744 (-8.88%); split: +0.10%, -8.99%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36851 >
2025-09-02 10:24:27 +00:00
Daniel Schürmann
2f303636f3
aco/ra: consider precolor affinities in get_reg_vector()
...
No fossil changes.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36851 >
2025-09-02 10:24:27 +00:00
Daniel Schürmann
6dbf8f7b90
aco/ra: don't set precolor affinities for already assigned temporaries
...
Also don't overwrite existing precolor affinities.
Totals from 248 (0.31% of 79839) affected shaders: (Navi48)
Instrs: 154427 -> 154401 (-0.02%); split: -0.12%, +0.10%
CodeSize: 812880 -> 812568 (-0.04%); split: -0.12%, +0.08%
VGPRs: 12432 -> 12408 (-0.19%)
Latency: 851623 -> 851801 (+0.02%); split: -0.03%, +0.05%
InvThroughput: 156569 -> 156581 (+0.01%); split: -0.04%, +0.05%
VClause: 2672 -> 2681 (+0.34%); split: -0.34%, +0.67%
Copies: 12645 -> 12660 (+0.12%); split: -0.53%, +0.65%
VALU: 82894 -> 82909 (+0.02%); split: -0.08%, +0.10%
SALU: 25406 -> 25424 (+0.07%); split: -0.07%, +0.14%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36851 >
2025-09-02 10:24:26 +00:00
Daniel Schürmann
eb557fd090
aco/ra: add vector_info::index to indicate the Operand's index into the vector
...
This simplifies the code and will allow for a mismatch between the index and
the Operand's temporary.
Totals from 28 (0.04% of 79839) affected shaders: (Navi48)
Instrs: 18453 -> 18440 (-0.07%); split: -0.08%, +0.01%
CodeSize: 98588 -> 98532 (-0.06%); split: -0.06%, +0.00%
Copies: 1347 -> 1333 (-1.04%); split: -1.11%, +0.07%
VALU: 10431 -> 10417 (-0.13%); split: -0.14%, +0.01%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36851 >
2025-09-02 10:24:26 +00:00
Robert Mader
1772380307
nir: Fixup 10/12 bit SW decoder YCbCr formats
...
The highest possible values that can be represented with
16/12/10 bits are 65535/4095/1023, not 65536/4096/1024.
In order to ensure 1023 maps to 65535 in the Sx10 case
we thus need to multiply by 65535 / 1023 ~= 64.06158
instead of 64.
Fixes: a166d7609f ("gles: Add support for 10/12/16 bit SW decoder YCbCr formats")
Suggested-by: Benjamin Otte <otte@redhat.com >
Signed-off-by: Robert Mader <robert.mader@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37077 >
2025-09-02 09:08:51 +00:00
Martin Roukala (né Peres)
4a42ea6785
nvk/ci: switch to default kernel to b2c's default kernel
...
This brings linux v6.16.3 to all CI-tron jobs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37085 >
2025-09-02 07:48:53 +00:00
Martin Roukala (né Peres)
40a632cb18
radv/ci: switch to default kernel to b2c's default kernel
...
This brings linux v6.16.3 to most jobs but the following ones:
* navi21/31: still waiting for the zerovram bug fix
* polaris10: 6.16 introduced an sdma-related hang that is being bisected
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37085 >
2025-09-02 07:48:53 +00:00
Martin Roukala (né Peres)
20dfc94bf6
ci-tron: uprev b2c to v0.9.17
...
This brings also brings Linux v6.16.3 to r300 and etnaviv.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37085 >
2025-09-02 07:48:53 +00:00
Martin Roukala (né Peres)
f1ccd93c78
nvk/ci: document some vk3d fails
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37085 >
2025-09-02 07:48:53 +00:00
Samuel Pitoiset
ff0197d44a
radv: disable VK_EXT_image_compression_control on GFX12
...
This extension is mostly only used by vkd3d-proton to disable DCC for
game bugs. On GFX12 DCC is completely transparent to the userspace
driver, so exposing this extension isn't very useful.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37122 >
2025-09-02 06:36:16 +00:00
Samuel Pitoiset
9b90d3fa4d
radv: remove unnecessary radv_graphics_pipeline::is_ngg
...
Use the last VGT shader to know if it's using NGG.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37120 >
2025-09-02 06:18:05 +00:00
Samuel Pitoiset
2ccdae24cf
radv: remove set but unused radv_graphics_pipeline fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37120 >
2025-09-02 06:18:05 +00:00
Samuel Pitoiset
478cbb6113
radv: remove set but unused has_nggc in radv_cmd_state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37120 >
2025-09-02 06:18:05 +00:00
Samuel Pitoiset
8958acb424
radv: remove unused radv_pipeline::user_data_0
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37120 >
2025-09-02 06:18:04 +00:00
Rob Clark
0600266d45
freedreno/a6xx: Format table fixes
...
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37129 >
2025-09-02 01:07:31 +00:00
Rob Clark
c6aba9abfa
freedreno/a6xx: Mark tex and samp descriptors for dumping
...
Fixes: c1aaef71da ("freedreno/a6xx: Make tex/samp descriptors a normal BO")
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37129 >
2025-09-02 01:07:31 +00:00
Rob Clark
39d8dcabf2
freedreno/a6xx: Disallow impossible image swizzles
...
The image instructions can't do arbitrary swizzles, so L/LA/I formats
would require shader lowering.
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37129 >
2025-09-02 01:07:31 +00:00
Eric Engestrom
a6bfb7e869
zink+lavapipe/ci: document recent flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37127 >
2025-09-01 20:46:42 +00:00
Eric Engestrom
9d73641b39
zink+radv/ci: document recent flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37127 >
2025-09-01 20:46:42 +00:00
Eric Engestrom
b599fd8612
radv/ci: document recent flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37127 >
2025-09-01 20:46:42 +00:00
Eric Engestrom
5177ee68de
radeonsi/ci: document recent flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37127 >
2025-09-01 20:46:42 +00:00
Eric Engestrom
8fecb6fc02
broadcom/ci: document recent flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37127 >
2025-09-01 20:46:41 +00:00
Christian Gmeiner
ff008db792
etnaviv: blt: Add hardware based mipmap generation
...
This provides a hardware-accelerated path for mipmap generation
on supported formats.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35991 >
2025-09-01 19:10:34 +00:00
Christian Gmeiner
23b26c94f5
etnaviv: blt: Extend translate_blt_format(..)
...
Add A8_UNORM, L8_UNORM, and L8A8_UNORM format translations to
translate_blt_format(..) to enable BLT-based mipmap generation for
these formats.
This enables passing dEQP-GLES2/3 functional texture mipmap
generation tests for these additional formats.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35991 >
2025-09-01 19:10:34 +00:00
Job Noorman
0c1ebc63ca
ir3/cf: don't swap signedness of (sat) instructions
...
Signed and unsigned saturation give different results.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Fixes: e894e83e47 ("ir3/cf: Rewrite pass")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37105 >
2025-09-01 12:03:06 +00:00
Job Noorman
e78bd88a06
nir/opt_offsets: add callback to set need_nuw per intrinsic
...
Wether need_nuw is used is currently decided in two different ways:
- globally through the allow_offset_wrap option;
- per intrinsic but hard-coded in opt_offsets.
Make this more flexible by creating a callback that is called per
intrinsic. This will allow backends to decide, on a per-intrinsic basis,
whether need_nuw is needed.
Note that the main use case for ir3 is to add support for opt_offsets
for global memory accesses. Other intrinsics don't need need_nuw but
global memory accesses do.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37114 >
2025-09-01 11:25:07 +00:00
Job Noorman
bc03086320
nir/opt_offsets: rename max_offset_data to cb_data
...
We want to add more callbacks and pass the same data.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37114 >
2025-09-01 11:25:07 +00:00
David Rosca
e394244a89
radv: Use extra context for video encode queue with multiple VCN instances
...
amdgpu does VCN instance scheduling per context, so we need to use
different context in order to allow decode to run on one instance
and encode on the other one.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36642 >
2025-09-01 10:56:31 +00:00
David Rosca
2667db1114
radeonsi/vcn: Correctly set chroma location with EFC
...
EFC supports horizontal left and vertical top/center.
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36977 >
2025-09-01 10:30:38 +00:00
Erik Faye-Lund
b8ccbc414a
panvk: enable KHR_maintenance9
...
Seems this just works, so let's enable it.
Unlike maintenance 4 through 8, VK_KHR_maintenance9 doesn't have a hard
dependency on Vulkan 1.1, and can also be supported on Bifrost.
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987 >
2025-09-01 10:08:35 +00:00
Erik Faye-Lund
fffd94c550
panvk: respect VK_QUERY_POOL_CREATE_RESET_BIT_KHR-flag
...
Techically speaking, this isn't needed. Allocating a new BO should zero
out the memory in the first place.
But let's do this anyway, because that assumption might change at some
point. Besides, this adds fairly little overhead, and happens in a
non-critical code-path.
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987 >
2025-09-01 10:08:35 +00:00
Erik Faye-Lund
e78a3854a5
panvk: enable KHR_maintenance8
...
Seems like we already support everyhing in this extension. Let's enable
it.
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987 >
2025-09-01 10:08:35 +00:00
Erik Faye-Lund
e5c54cf33b
panvk: enable KHR_maintenance7
...
In theory, we should be able to support
separateDepthStencilAttachmentAccess, but in practice this occasionally
fails tests. So let's disable it for now, and deal with that feature
down the line.
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987 >
2025-09-01 10:08:33 +00:00
Mary Guillemard
e84262b77d
pan/bi: Ensure to merge adjacent ifs after bifrost_nir_lower_shader_output
...
nir_opt_if was unable to optimize some ifs later on so let's get ride of
them as soon as we generated them for simplicity.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37030 >
2025-09-01 09:42:03 +00:00
Danylo Piliaiev
df83008ed6
tu/a7xx: Don't disable LRZ for empty FS when FDM is used
...
Fixes: 2797069e9a ("tu: Enable LRZ with FDM")
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37091 >
2025-09-01 09:17:42 +00:00
Mike Blumenkrantz
213a63f236
radv: ALWAYS_INLINE radv_upload_graphics_shader_descriptors and relateds
...
Reduce the CPU overhead of these functions.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37022 >
2025-09-01 08:53:02 +00:00