Samuel Pitoiset
0da8a6bfd5
docs: adjust NGG culling options description
...
NGG culling is also enabled by default on GFX10 now.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33868 >
2025-03-05 12:45:08 +00:00
Samuel Pitoiset
ab4d2d447a
radv: remove redundant radv_instance::drirc::rt_wave64
...
Use RADV_PERFTEST_RT_WAVE_64 instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33868 >
2025-03-05 12:45:08 +00:00
Samuel Pitoiset
54a62c5c23
radv: use radv_emulate_rt() more
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33868 >
2025-03-05 12:45:08 +00:00
Samuel Pitoiset
9108c198bb
radv: fix trap handler exception options
...
They are same values.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33868 >
2025-03-05 12:45:07 +00:00
Samuel Pitoiset
df3f2df966
docs: add missing RADV_PERFTEST=video_encode description
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33868 >
2025-03-05 12:45:07 +00:00
Tomeu Vizoso
854bc2ee05
kopper: Explicitly choose zink
...
If we pass zink=false to pipe_loader_drm_probe_fd, it could happen that
a Gallium driver that had been already discarded because of not
supporting the graphics CAP will be chosen.
To avoid that, explicitly ask pipe_loader_drm_probe_fd to choose the
zink Gallium driver.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30096 >
2025-03-05 10:48:28 +00:00
Lucas Stach
7e76c67632
kmsro: look for graphics capable screen as renderonly device
...
Exposing a rendernode from a supported driver is not a sufficient
matching criteria to qualify as the render part of a renderonly
device, as the rendernode might only expose compute or 2D accel
capabilities.
Look for a screen that actually supports gallium graphics operations
to qualify as a renderonly screen.
v2 (Tomeu): Have pipe-loader return a list of FDs for kmsro to choose
based on capabilities.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30096 >
2025-03-05 10:48:28 +00:00
Tomeu Vizoso
cfad6fb037
egl/surfaceless: Only choose drivers that expose the graphics capability
...
This is to prevent applications to try to render to devices that have no
3D hardware (eg. NPUs).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30096 >
2025-03-05 10:48:28 +00:00
Corentin Noël
45e771f4fb
ci: Update CrosVM and Virglrenderer
...
Update to their latest version on time
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33796 >
2025-03-05 10:16:49 +00:00
Tapani Pälli
288f932b78
iris: restrict TessellationDistributionLevel for Wa_16025857284
...
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/33864 >
2025-03-05 09:55:05 +00:00
Tapani Pälli
1674cb3665
anv: restrict TessellationDistributionLevel for Wa_16025857284
...
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/33864 >
2025-03-05 09:55:05 +00:00
Tapani Pälli
1a5cbbeb47
intel/dev: update mesa_defs.json from internal database
...
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/33864 >
2025-03-05 09:55:05 +00:00
Mike Blumenkrantz
3f7b0c3951
mesa: avoid creating incomplete surfaces when multiview goes out of range
...
some drivers can't handle this, and it can't be used anyway, so don't bother
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33632 >
2025-03-05 09:15:22 +00:00
Mike Blumenkrantz
89c2639227
mesa: add error handling for OVR_multiview
...
there's a lot that were missed
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33632 >
2025-03-05 09:15:22 +00:00
Mike Blumenkrantz
2b37f23314
gallium: fix pipe_framebuffer_state::view_mask
...
this is the mask of the number of views, not the actual views being
selected
llvmpipe previously had this wrong, though I don't understand how
vkcts didn't cover it
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33632 >
2025-03-05 09:15:22 +00:00
Mike Blumenkrantz
5ef60aef63
llvmpipe: pass layer count to rast clear
...
this otherwise passes the fb layer, which is not quite right when
using multiview with view indexing
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33632 >
2025-03-05 09:15:22 +00:00
Marek Olšák
e19f4c043d
gallium/u_blitter: change blitter_attrib from union to struct
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33837 >
2025-03-05 08:31:12 +00:00
Marek Olšák
ca09c173f6
gallium/u_blitter: remove UTIL_BLITTER_ATTRIB_COLOR, use a constant buffer
...
Pass the clear color via a constant buffer instead of a FS input.
This results in less driver code and it could be faster on some GPUs.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33837 >
2025-03-05 08:31:12 +00:00
Faith Ekstrand
99b5970eb2
egl/wayland: Pass the original wl_surface to kopper
...
The Vulkan WSI code creates its own proxies so there's no benefit to
passing the proxy in. It only screws things up.
Fixes: 8ade5588e3 ("zink: add kopper api")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33860 >
2025-03-05 07:27:16 +00:00
Faith Ekstrand
fddff0d1b8
egl/dri2: Rework get_wl_surface_proxy()
...
Instead, just make it a helper for getting the wl_surface from the
wl_egl_window. We'll want this in the next commit.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33860 >
2025-03-05 07:27:16 +00:00
Mike Blumenkrantz
71d949a8c5
svga/ci: disable vmware farm
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33872 >
2025-03-05 07:15:31 +00:00
Mike Blumenkrantz
534436f863
zink: explicitly check usage in buffer barriers
...
it's technically possible for a resource to have no usage but for
batch usage to be set; this can occur if a resource is used,
its cmdbuf completes, but the batch state is not reset before the
resource is used again
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33848 >
2025-03-05 06:19:16 +00:00
Mike Blumenkrantz
c83d459225
zink: alloc bo ids for non-slab bos too
...
this otherwise breaks perf for buffer lists and triggers full walks
on every lookup
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33848 >
2025-03-05 06:19:16 +00:00
Mike Blumenkrantz
4d0f79a398
zink: don't reset all batch states when stalling
...
this makes perf worse
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33848 >
2025-03-05 06:19:16 +00:00
Mike Blumenkrantz
61b0955308
zink: always check submit_count to disambiguate when checking/waiting
...
this may otherwise erroneously detect usage on a batch state which has
already been reset
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33848 >
2025-03-05 06:19:16 +00:00
Faith Ekstrand
78a80b9bf1
zink: Revert "zink: enable single-plane modifiers for generic 2D exports"
...
This reverts commit df1ff3c711 . When
clients allocate BOs via GBM's gbm_bo_create(), they expect those BOs to
work with KMS without modifiers. Assigning them a modifier and hoping
that they then query that modifier even though they used the legacy API
to create the BO is pretty mean. In particular, this breaks KWin which
doesn't use modifiers if the KMS device doesn't support atomic.
Fixes: df1ff3c711 ("zink: enable single-plane modifiers for generic 2D exports")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33887 >
2025-03-05 05:52:20 +00:00
Erik Faye-Lund
bcff33ff93
panvk: disable shaderFloat16 on bifrost
...
We're failing a bunch of tests on G52 otherwise. Let's just disable this
feature on older gens for now, until we've gotten this fixed.
Fixes: 55c476efed ("panvk: advertise shaderFloat16")
Reviewed-by: Benjamin Lee <benjamin.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33881 >
2025-03-05 04:01:45 +00:00
Alyssa Rosenzweig
bf4ba66dbb
panfrost,panvk: fix clang warnings
...
note the kernel reg one is a functional change.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33877 >
2025-03-05 02:57:24 +00:00
Vasily Khoruzhick
fdeabf4162
lima: ppir: reuse uniform load in instruction if possible
...
We clone loads for uniforms for each user, which means that each
ppir_node will have its own, however an instruction may have several
nodes that need to load uniforms. Currently, in this case ppir compiler
will place all but one load uniforms nodes into a new instruction and
create an extra mov.
We can optimize that by checking whether load_uniform node in the instruction
is the same as the one we are trying to insert and reuse it. It is safe
to do so, because successors use pipeline register, so regalloc doesn't
care about it.
shader-db:
total instructions in shared programs: 27808 -> 27718 (-0.32%)
instructions in affected programs: 2652 -> 2562 (-3.39%)
helped: 31
HURT: 0
helped stats (abs) min: 1 max: 8 x̄: 2.90 x̃: 2
helped stats (rel) min: 0.56% max: 33.33% x̄: 5.12% x̃: 4.11%
95% mean confidence interval for instructions value: -3.78 -2.03
95% mean confidence interval for instructions %-change: -7.24% -2.99%
Instructions are helped.
total loops in shared programs: 4 -> 4 (0.00%)
loops in affected programs: 0 -> 0
helped: 0
HURT: 0
total spills in shared programs: 391 -> 390 (-0.26%)
spills in affected programs: 1 -> 0
helped: 1
HURT: 0
total fills in shared programs: 1213 -> 1210 (-0.25%)
fills in affected programs: 3 -> 0
helped: 1
HURT: 0
LOST: 0
GAINED: 0
Reviewed-by: Erico Nunes <nunes.erico@gmail.com >
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33746 >
2025-03-04 22:04:11 +00:00
Georg Lehmann
20dd6dfa12
aco/isel: use s_mul_i32 instead of s_cselect_b32 for a ? b : 0
...
It doesn't require SCC and this is more consistent with b2f.
Foz-DB Navi21:
Totals from 2107 (2.64% of 79789) affected shaders:
Instrs: 6619774 -> 6619280 (-0.01%); split: -0.01%, +0.00%
CodeSize: 36754448 -> 36752396 (-0.01%); split: -0.01%, +0.00%
Latency: 62207779 -> 62206422 (-0.00%); split: -0.00%, +0.00%
InvThroughput: 13090494 -> 13090204 (-0.00%); split: -0.00%, +0.00%
VClause: 171572 -> 171573 (+0.00%)
SClause: 257528 -> 257530 (+0.00%)
Copies: 607680 -> 607204 (-0.08%); split: -0.10%, +0.02%
VALU: 4189422 -> 4189418 (-0.00%)
SALU: 1001750 -> 1001264 (-0.05%); split: -0.07%, +0.02%
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33734 >
2025-03-04 21:36:17 +00:00
Georg Lehmann
2d68efd9f3
aco/opt_postRA: remove scc == 0 for more opcodes
...
Convert special case to s_cselect
Foz-DB Navi21:
Totals from 42 (0.05% of 79789) affected shaders:
Instrs: 91826 -> 91690 (-0.15%)
CodeSize: 496304 -> 495680 (-0.13%)
Latency: 1631974 -> 1631948 (-0.00%); split: -0.00%, +0.00%
InvThroughput: 278772 -> 278766 (-0.00%)
SALU: 10627 -> 10491 (-1.28%)
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33734 >
2025-03-04 21:36:17 +00:00
Georg Lehmann
83247ffa30
aco/opt_postRA: remove scc != 0 with multiple uses
...
These can always be removed.
Foz-DB Navi21:
Totals from 39 (0.05% of 79789) affected shaders:
Instrs: 138352 -> 138299 (-0.04%)
CodeSize: 710424 -> 710272 (-0.02%)
Latency: 468276 -> 468254 (-0.00%); split: -0.01%, +0.00%
InvThroughput: 108970 -> 108973 (+0.00%)
SALU: 18785 -> 18732 (-0.28%)
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33734 >
2025-03-04 21:36:17 +00:00
Georg Lehmann
6445ba0f05
aco/opt_postRA: allow try_optimize_scc_nocompare for all instructions
...
If the old SCC source worked, the new one will too.
Foz-DB Navi21:
Totals from 106 (0.13% of 79789) affected shaders:
Instrs: 255233 -> 254825 (-0.16%)
CodeSize: 1337308 -> 1335692 (-0.12%)
Latency: 1455208 -> 1454524 (-0.05%); split: -0.05%, +0.00%
InvThroughput: 385624 -> 385612 (-0.00%); split: -0.00%, +0.00%
SALU: 53976 -> 53568 (-0.76%)
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33734 >
2025-03-04 21:36:17 +00:00
Georg Lehmann
3386ea09d4
aco/opt_postRA: split try_optimize_scc_nocompare in two functions
...
These are two independent steps, no real reason why they should be in the same
function.
No FOZ-DB changes.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33734 >
2025-03-04 21:36:17 +00:00
David Rosca
9d020826ca
radeonsi/vcn: Add radeon_enc_av1_picture_type
...
Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com >
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33845 >
2025-03-04 20:42:41 +00:00
David Rosca
d92781508b
radeonsi/vcn: Set all pic params for H264 encode references
...
Fixes encoding B-frames with I-frame as L1 reference.
Cc: mesa-stable
Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com >
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33845 >
2025-03-04 20:42:41 +00:00
David Rosca
24cbc4bfcb
pipe: Remove PIPE_AV1_ENC_FRAME_TYPE_SHOW_EXISTING
...
This frame type can't be encoded.
Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com >
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33845 >
2025-03-04 20:42:41 +00:00
Karol Herbst
5c1f61d900
nir: Do not eliminate dead writes to shared memory in called functions.
...
Fixes regressions in rusticl and c11_atomic OpenCL CTS test.
Fixes: e65c1473de ("nir: Eliminate dead writes to shared memory at the end of the program")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33807 >
2025-03-04 19:41:13 +00:00
Konstantin Seurer
44110fe004
lavapipe: Enable debug information if GALLIVM_DEBUG=symbols is set
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:49 +00:00
Konstantin Seurer
3b857064b6
gallivm: Run nir_lower_load_const_to_scalar
...
Vector defs are annoying to look at in the debugger.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:49 +00:00
Konstantin Seurer
83cac4e7e9
gallivm: Add a debug variable for the exec mask
...
Makes it show up in GDB.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
3f5a576c9e
gallivm: Emit debug info for definitions
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
77e84aba5c
gallivm: Handle nir_instr_debug_info
...
Emits llvm source locations using the nir line numbers provided by
nir_instr_debug_info.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
d6ca378f1b
llvmpipe: Annotate functions with debug information
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
95a68076a7
gallivm: Create a debug builder and add GALLIVM_DEBUG=symbols
...
Also defers destroying the execution engine since destroying it early
looses debug information.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
3aeab4ce40
nir/print: Do not print debug information when gathering it
...
Referencing a shader string with differend debug information is
confusing.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Konstantin Seurer
a04b5ebd3c
nir/sweep: Fix handling instructions with debug info
...
When debug information is present, the nir_instr pointer is not the
start of the allocation.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28613 >
2025-03-04 18:42:48 +00:00
Guilherme Gallo
fbc55afbdf
ci/lava: Properly detect VMWARE farm
...
This will make the job definition default to the UART format for vmware
jobs, as only Collabora's farm relies on the SSH job definition due to
the unreliable Chromebook UART in LAVA.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33874 >
2025-03-04 16:46:17 +00:00
David Rosca
5461ed5808
Revert "radeonsi/vcn: Limit size to target size in AV1 decode"
...
This is now done in frontend.
This reverts commit 3a6513d7c4 .
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33737 >
2025-03-04 16:18:04 +00:00
David Rosca
c60e4f0004
frontends/vdpau: Set AV1 max_width/height to surface size
...
Ideally this would be passed in pic params as the values are
in sequence header, but using the surface size also works.
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33737 >
2025-03-04 16:18:04 +00:00