Rhys Perry
2ff53fd97c
ac/llvm: convert to integer after reductions
...
These return floating point types for floating point ops.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
8609008aeb
ac/llvm: fix mul24 intrinsic overloading
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Fixes: e3edc6029b ("ac/llvm: use mul24 intrinsics")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
3c2b3fbd03
ac/llvm: fix overloading of intrinsic names
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
ac2e36b377
ac/nir: create lowered inverse_ballot
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Fixes: b49eab68a8 ("ac/nir: use s_sendmsg(HS_TESSFACTOR) to optimize writing tess factors for gfx11")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Georg Lehmann
29787911e7
vulkan: update headers/xml for 1.4.318
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35517 >
2025-06-14 08:21:31 +00:00
Olivia Lee
a7276d0010
ci: update CI contact list
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35521 >
2025-06-13 23:21:37 -07:00
Olivia Lee
e1856d7152
ci: document process for disabling broken farms in more detail
...
Reading the previous version of the docs, I had the impression that the
correct action when a farm is broken is to ping Daniel or Emma in
the #freedesktop channel. I learned that just creating an MR to disable
it immediately is fine, and am documenting this. The farm maintainer
table also wasn't mentioned in the docs previously.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35521 >
2025-06-13 23:21:37 -07:00
Faith Ekstrand
6a77c8e953
nvk: Add an nvk_sampler_header struct and return it by value
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Faith Ekstrand
bbc6f50963
nil: Don't use Fermi bits in the Maxwell null descriptor
...
Fixes: c8d8e2249a ("nil: Add a helper for populating the null descriptor")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Faith Ekstrand
40b59a5c26
nil: Rework the descriptor interface
...
This adds a new Descriptor (nil_descriptor) struct and reworks all the
methods/functions to return a Descriptor. This is less janky than all
the output pointers. It also gives us a struct type that's the right
size so we're not declaring uint32_t[8] arrays everywhere.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Yiwei Zhang
12e94a91e3
zink: leave can_do_invalid_linear_modifier open for venus
...
Venus is able to force LINEAR modifier to ensure the handshake across
the legacy modifier-unaware boundaries. e.g. Xorg
Acked-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35453 >
2025-06-14 03:31:32 +00:00
Yiwei Zhang
d6bff136bd
venus: fix maint7 layered vk props query
...
We should not touch the pNext of the nested props2 struct.
Fixes: 8c6a5250ec ("venus: support VK_KHR_maintenance7")
Reviewed-by: Corentin Noël <corentin.noel@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35453 >
2025-06-14 03:31:32 +00:00
Yiwei Zhang
6781dcc565
lvp: fix wsi platform swapchain image bind
...
The prior incomplete ANB support broke it.
Fixes: 0dce939e6d ("lavapipe: Add android platform integration")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35506 >
2025-06-13 21:54:04 +00:00
Mel Henning
7d974c32ce
zink: Handle null instance in 2nd create_screen
...
If zink_internal_create_screen is called twice and the first call fails
with instance==NULL, then the second call also needs to goto fail
instead of just asserting that instance is non-null.
Fixes: 015eda4a ("zink: deduplicate VkDevice and VkInstance")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13337
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35518 >
2025-06-13 19:43:25 +00:00
Christian Gmeiner
6d8bc4c98a
etnaviv: tex_desc: Add seamless cube map support
...
Seamless cube map filtering requires setting the SEAMLESS_CUBE_MAP bit
in the texture descriptor's CONFIG1 field. Since this bit is controlled
by sampler state but stored in the texture descriptor, we need to handle
the mismatch between sampler state lifetime and descriptor immutability.
Create two texture descriptors per sampler view: one with seamless cube
map disabled and one enabled. At emission time, select the appropriate
descriptor based on the current sampler state's seamless_cube_map flag.
Passes all dEQP-GLES3.functional.texture.filtering.cube.* tests on GC7000.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35499 >
2025-06-13 19:28:57 +00:00
Olivia Lee
5fe5e3176f
panvk: advertise descriptor indexing on valhall
...
Our existing descriptor implementation already supports
update-after-bind on both bifrost and valhall, but on bifrost the some
of the descriptor limits are lower than the minimum required by the
extension.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
f90b9b3642
panvk: raise descriptor limits on valhall
...
Previously, our descriptor set limits were set based on the hardware
limits on bifrost. On valhall, the hardware descriptor table limits are
much higher. We need to advertise higher update-after-bind descriptor
limits for descriptor indexing, so might as well increase these also.
The 2^20 limit is the same as nvk and honeykrisp.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
88ac602cc2
panvk: implement shaderInputAttachmentArrayNonUniformIndexing
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
8e4c6990a1
panvk: implement non uniform indexing except for input attachments
...
We need to lower everything on bifrost, and everything except nonuniform
texture offsets on valhall. With texture offsets, the hardware supports
nonuniform offsets passed in a staging register, but does not support
passing nonuniform offsets as src1 in the narrow layout. We need to make
sure we check for this if we implement narrow offsetms later.
Input attachments are skipped in this commit because they need
additional changes.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
e7a439f73b
panvk: implement runtimeDescriptorArray and descriptorBindingVariableDescriptorCount
...
Runtime descriptor array doesn't require any changes, variable descriptor
count is already mostly supported and just needs handling for
maxVariableDescriptorCount.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
f725bc4475
panvk: implement shaderInputAttachmentArrayDynamicIndexing
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
a268412533
panvk: allow sysvals to be dynamically-indexed
...
We already do this for push constants, just extend the existing
implementation. We need to update the push_consts sysval inside the
cmd_prepare_push_uniforms loop now because indirect draws patch the
sysvals. Previously this value was only used to read push constant FAUs,
so we didn't care.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
7ca2d51cf6
panvk: advertise texel buffer dynamic indexing
...
These don't require any changes for support.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
9399258af6
panvk: move descriptor set limits to constant macros
...
This simplifies get_physical_device_properties and allows us to use the
limits elsewhere.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
e9388f3d2d
panvk: use constants from other headers in device properties
...
We were not able to use these previously because the headers require
PAN_ARCH.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
91ebeddbad
panvk: make extensions, features, and properties per-arch
...
This makes things a little more flexible for groups of fields that are
arch-dependent, and allows us to use existing per-arch constant macros
instead of open-coding their values.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
a681b4f107
panvk: fix outdated comment
...
The name of the struct that we're currently using is panvk_ssbo_addr.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
5554cca4a2
panvk: add missing include to panvk_cmd_draw.h
...
This is needed for the panvk_descriptor_state struct. All of the current
sites already included panvk_cmd_desc_state.h, so it wasn't a visible
issue.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
b1caa2ae86
ci: disable vmware farm
...
I am getting spurious CI failures. See:
<https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408#note_2957802 >
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35520 >
2025-06-13 18:59:26 +00:00
Lucas Stach
03c40b5aa0
etnaviv: get rid of etna_surface
...
Now that nothing calls the driver create/destroy surface hooks
anymore, we can get rid of what's left from the code.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
8b1ee7adb4
etnaviv: state: stop using etna_surface
...
Use pipe_surface to fill in the color and ZS buffer states.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
999dd209f5
etnaviv: blt: stop using etna_surface
...
Use pipe_surface to get the necessary information for the
various clears.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
f034323c20
etnaviv: rs: stop using etna_surface
...
Use pipe_surface to get the necessary information for the
various clears.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
9ee9b109ca
etnaviv: move render compatible handling from surface to resource
...
So it can be reused from different places in the driver when
etna_surface is gone.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
d479573f8e
etnaviv: return render resource from render_handle_incompatible if it exists
...
If a render resource already exists, we know that a earlier check already
determined that the resource isn't compatible with the PE requirements, so
there is no point in checking again. Simply return the render resource if
it exists.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
0acee3bfbf
etnaviv: stop caching RS clear commands on surface
...
As we want to get rid of the etna_surface, stop caching the (fast) clear
commands for the RS engine on the surface. As the pipe_surface is no
longer a CSO, we were regenerating those commands on each framebuffer
state change anyway, so the additional CPU overhead of doing this for
each clear shouldn't be too much worse.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
6111d07048
etnaviv: drop precomputed offset from etna_surface
...
As another step in the direction of getting rid of etna_surface,
plug the offset calculation into all places that need it and drop
the precomputed offset from the surface struct.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
cd58efd055
etnaviv: drop superfluous PE alignment check
...
This check and especially the XXX in the comment hasn't been valid
for a long time, as our mipmap layout and render shadow code makes
sure that all levels are properly aligned for PE usage.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:35 +00:00
Lucas Stach
324cf6c305
etnaviv: don't prepare relocs in etna_surface
...
Fill the reloc data when the framebuffer state is set. Now that
pipe_surface is no longer a CSO, it doesn't matter that we need
to pay the price for the computation at state set time instead
of surface_create time.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:35 +00:00
Lucas Stach
162a1cadd0
etnaviv: stop tracking ZS buffer address information multiple times
...
Same as with the color buffer addresses, we don't need to track the
ZS buffer relocs in different members per GPU generation. Simply
emit the part that's relevant for the targeted GPU instance. Again
TS depth surface base is always the same address as the first depth
pipe address, so we can reuse the reloc.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:35 +00:00
Lucas Stach
393d594df7
etnaviv: stop tracking color buffer address information multiple times
...
Currently we track the color buffer address information in multiple reloc
members in the compiled framebuffer state, depending on the GPU generation.
This wastes some space, as some of the relocs will never be used on any
specific GPU instance and it complicates the framebuffer state code.
Stop doing that in favor of a single PE_RT_PIPE_COLOR_ADDR reloc array to
track this information and simply fill and emit the relevant part of that
array. Additionally the TS color surface base is always equal to the first
pixel pipe color address, so we don't need to store this separately, but
can reuse the relocs from the color pipe setup.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:34 +00:00
Lucas Stach
ce124146e5
etnaviv: drop unused member PE_RT_COLOR_ADDR from compile framebuffer state
...
Those relocs were never used.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:34 +00:00
Lucas Stach
e5c77d3367
etnaviv: add screen spec bit for PE multitiling
...
There are a lot of places scattered through the driver where we check
if the GPU has more than a single pixel pipe and whether the single
buffer feature is supported. All of them are trying to work out if we
need to use multitiling for the PE render targets. Add a screen spec
flag to store the result of both checks and use it where appropriate.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35406 >
2025-06-13 18:44:33 +00:00
Job Noorman
e31b1b649c
ir3: optimize more before opt_preamble
...
This prevents hoisting values to the preamble that might still get
optimized (away). This especially has a huge impact on binning variants
because many of their outputs got removed but we never optimized after
that.
fossildb stats:
Totals:
MaxWaves: 2765084 -> 2770308 (+0.19%); split: +0.19%, -0.00%
Instrs: 56289002 -> 56226045 (-0.11%); split: -0.13%, +0.02%
CodeSize: 118071672 -> 116551008 (-1.29%); split: -1.29%, +0.00%
NOPs: 9491112 -> 9477190 (-0.15%); split: -0.25%, +0.11%
MOVs: 1790085 -> 1789548 (-0.03%); split: -0.22%, +0.19%
Full: 2156693 -> 2140043 (-0.77%); split: -0.77%, +0.00%
(ss): 1329812 -> 1326394 (-0.26%); split: -0.66%, +0.40%
(sy): 686396 -> 686244 (-0.02%); split: -0.17%, +0.15%
(ss)-stall: 4995295 -> 4993233 (-0.04%); split: -0.69%, +0.65%
(sy)-stall: 19828966 -> 19833863 (+0.02%); split: -0.32%, +0.34%
STPs: 36271 -> 33249 (-8.33%)
LDPs: 45794 -> 42537 (-7.11%)
Preamble Instrs: 14467846 -> 13645555 (-5.68%); split: -5.69%, +0.01%
Early Preamble: 129346 -> 134346 (+3.87%); split: +3.89%, -0.02%
Cat0: 10450369 -> 10436616 (-0.13%); split: -0.23%, +0.10%
Cat1: 2787946 -> 2787085 (-0.03%); split: -0.15%, +0.12%
Cat2: 21265787 -> 21251803 (-0.07%); split: -0.07%, +0.01%
Cat3: 16207098 -> 16178995 (-0.17%); split: -0.17%, +0.00%
Cat5: 1596677 -> 1596707 (+0.00%)
Cat6: 854011 -> 848522 (-0.64%)
Cat7: 1597849 -> 1597052 (-0.05%); split: -0.13%, +0.08%
Totals from 22836 (11.41% of 200220) affected shaders:
MaxWaves: 335882 -> 341106 (+1.56%); split: +1.56%, -0.01%
Instrs: 6019621 -> 5956664 (-1.05%); split: -1.23%, +0.18%
CodeSize: 14192546 -> 12671882 (-10.71%); split: -10.74%, +0.03%
NOPs: 1107562 -> 1093640 (-1.26%); split: -2.18%, +0.92%
MOVs: 270465 -> 269928 (-0.20%); split: -1.43%, +1.23%
Full: 257820 -> 241170 (-6.46%); split: -6.47%, +0.01%
(ss): 156869 -> 153451 (-2.18%); split: -5.59%, +3.41%
(sy): 80161 -> 80009 (-0.19%); split: -1.46%, +1.27%
(ss)-stall: 573278 -> 571216 (-0.36%); split: -6.01%, +5.65%
(sy)-stall: 3537926 -> 3542823 (+0.14%); split: -1.78%, +1.92%
STPs: 30563 -> 27541 (-9.89%)
LDPs: 37112 -> 33855 (-8.78%)
Preamble Instrs: 2440099 -> 1617808 (-33.70%); split: -33.76%, +0.06%
Early Preamble: 9060 -> 14060 (+55.19%); split: +55.50%, -0.31%
Cat0: 1215965 -> 1202212 (-1.13%); split: -2.00%, +0.87%
Cat1: 475910 -> 475049 (-0.18%); split: -0.90%, +0.72%
Cat2: 1940479 -> 1926495 (-0.72%); split: -0.81%, +0.09%
Cat3: 1680902 -> 1652799 (-1.67%); split: -1.68%, +0.01%
Cat5: 151246 -> 151276 (+0.02%)
Cat6: 269190 -> 263701 (-2.04%)
Cat7: 174584 -> 173787 (-0.46%); split: -1.20%, +0.75%
Preamble improvements are even bigger on shaderdb:
total dwords in shared programs: 8800204 -> 8400960 (-4.54%)
dwords in affected programs: 1008384 -> 609140 (-39.59%)
helped: 3385
HURT: 14
helped stats (abs) min: 2 max: 1762 x̄: 118.02 x̃: 32
helped stats (rel) min: 0.21% max: 90.17% x̄: 32.93% x̃: 31.25%
HURT stats (abs) min: 2 max: 32 x̄: 18.43 x̃: 26
HURT stats (rel) min: 0.39% max: 16.67% x̄: 9.09% x̃: 13.13%
95% mean confidence interval for dwords value: -125.03 -109.88
95% mean confidence interval for dwords %-change: -33.46% -32.06%
Dwords are helped.
total preamble-inst in shared programs: 1274769 -> 1063479 (-16.57%)
preamble-inst in affected programs: 323660 -> 112370 (-65.28%)
helped: 3819
HURT: 5
helped stats (abs) min: 1 max: 1000 x̄: 55.33 x̃: 13
helped stats (rel) min: 0.61% max: 100.00% x̄: 53.55% x̃: 53.85%
HURT stats (abs) min: 1 max: 9 x̄: 2.60 x̃: 1
HURT stats (rel) min: 3.23% max: 6.34% x̄: 4.04% x̃: 3.70%
95% mean confidence interval for preamble-inst value: -58.84 -51.67
95% mean confidence interval for preamble-inst %-change: -54.22% -52.73%
Preamble-inst are helped.
total early-preamble in shared programs: 31297 -> 32057 (2.43%)
early-preamble in affected programs: 20 -> 780 (3800.00%)
helped: 780
HURT: 20
helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
helped stats (rel) min: 0.00% max: 0.00% x̄: 0.00% x̃: 0.00%
HURT stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
HURT stats (rel) min: 100.00% max: 100.00% x̄: 100.00% x̃: 100.00%
95% mean confidence interval for early-preamble value: 0.93 0.97
95% mean confidence interval for early-preamble %-change: -3.58% -1.42%
Inconclusive result (value mean confidence interval and %-change mean confidence interval disagree).
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34311 >
2025-06-13 16:12:01 +00:00
Job Noorman
fca143946e
ir3/lower_io_offsets: set progress when scalarizing UAV loads
...
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Fixes: 91f19bcbe0 ("ir3: Plumb through two-dimensional UAV loads")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34311 >
2025-06-13 16:12:00 +00:00
Job Noorman
97dd831a07
ir3: don't vectorize 8bit SSBO accesses
...
We already scalarize them but they might get vectorized again when
running the optimize loop before the intrinsics get turned into the
ir3-specific ones.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34311 >
2025-06-13 16:12:00 +00:00
Derek Foreman
07881b085e
vulkan: Enable PresentWait2 on many physical devices
...
PresentWait2 should be possible on any physical device, as it adds a
surface capability query that depends on common wsi code.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35414 >
2025-06-13 15:52:02 +00:00
Derek Foreman
074ab1db29
wsi/x11: add support for PresentWait2
...
It's the same as PresentWait here, and always available.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35414 >
2025-06-13 15:52:02 +00:00
Derek Foreman
9a1a34836d
wsi/display: Add support for PresentWait2
...
It's really just the same as PresentWait here, and always available.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35414 >
2025-06-13 15:52:02 +00:00
Derek Foreman
3023f31cad
wsi/wayland: Add support for PresentWait2
...
Support PresentWait2 on any compositor that provides presentation feedback
protocol.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35414 >
2025-06-13 15:52:02 +00:00