Eric R. Smith
20e17ca864
pan: add actual register usage to the shaderdb stats
...
Add the actual registers used (including uniforms used) by the shader
to stats. This is calculated by the stats gathering code, because the
scheduler and scoreboard passes run after register allocation and can
sometimes change the results.
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38961 >
2025-12-22 13:40:03 +00:00
Eric R. Smith
2fdd6eb09e
pan drm-shim: add a way to specify the GPU variant in PAN_GPU_ID
...
This lets us compile shaders for different GPU variants on the PC.
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38961 >
2025-12-22 13:40:03 +00:00
Eric R. Smith
036ec36cba
pan: add variant to shader name for G310 variants
...
So we will be able to distinguish them for testing.
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38961 >
2025-12-22 13:40:03 +00:00
Samuel Pitoiset
3b18fa348e
ac/rgp: enable new performance counters for RGP 2.6 on GFX10-GFX11
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
GFX12 needs more work and it will be added separately.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:52:14 +01:00
Samuel Pitoiset
8bc37d0d19
ac/spm: add support for Ray Tracing counters in RGP
...
These aren't new in RGP 2.6, they have been added since a while. But
because RADV wasn't supporting the new derived SPM chunk it wasn't
possible to expose them.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:51:44 +01:00
Samuel Pitoiset
0b5ae0758e
ac/spm: add support for new Memory percentage counters in RGP 2.6
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:51:14 +01:00
Samuel Pitoiset
3d2bb52a81
ac/spm: add support for new Memory bytes counters in RGP 2.6
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:50:44 +01:00
Samuel Pitoiset
84ecdc534c
ac/spm: add support for new LDS counters in RGP 2.6
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:50:41 +01:00
Samuel Pitoiset
07d9fc574c
ac/spm: implement the new derived SPM chunk for performance counters
...
This is the new method to add performance counters to RGP captures.
This will be used to add the new RGP 2.6 counters too.
The previous SPM code will be deprecated at some point but it's hard
to support all generations in one batch. So, I will implement this
step by step.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:48:59 +01:00
Samuel Pitoiset
3e4d629458
ac/spm: add an ID to raw performance counters
...
This will be used to compute derived values for the new RGP/SPM chunk.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:48:29 +01:00
Samuel Pitoiset
21ad7e4e32
ac/spm: print an error message when a group is unknown
...
Help debugging.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:48:21 +01:00
Samuel Pitoiset
7da6fe6a00
ac/spm: fix programming more than one counter slot
...
Some blocks have two or more SPM counters and they should be used when
more than 4 counters are programmed (ie. 16-bit per counter).
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:48:14 +01:00
Samuel Pitoiset
e5a041ee1c
ac/spm: add an assertion to check the number of global instances
...
To make sure counters aren't silently discarded.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:48:06 +01:00
Samuel Pitoiset
eca9c00430
ac/spm: adjust configuration of some GPU blocks
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:47:58 +01:00
Samuel Pitoiset
6613dfb234
ac/perfcounter: add GCEA block description on GFX10-11
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:47:29 +01:00
Samuel Pitoiset
25e28819bd
ac/perfcounter: adjust the number of events for TD on GFX10.3
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:47:21 +01:00
Samuel Pitoiset
a4cb114f5a
ac/perfcounter: add a separate group for GFX10.3
...
This is just a copy&paste but GFX10.3 has way more counters than GFX10
that will be added later.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39013 >
2025-12-22 09:47:09 +01:00
Samuel Pitoiset
044e7f6017
radv/nir: fix front_face opts for points/lines and unknown prim
...
Fixes new VKCTS coverage dEQP-VK.glsl.builtin_var.frontfacing.*.
Fixes: af375c6756 ("radv: Optimize fs builtins using static gfx state")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39041 >
2025-12-22 07:59:30 +00:00
Daniel Schürmann
7b1f6fa6fc
aco: remove radeon_family from aco::Program
...
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/38701 >
2025-12-22 07:34:48 +00:00
Daniel Schürmann
1e8d367537
amd: add and use ac_cu_info::has_vtx_format_alpha_adjust_bug
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:48 +00:00
Daniel Schürmann
febc29907c
amd: add and use ac_cu_info::has_gfx6_mrt_export_bug
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:47 +00:00
Daniel Schürmann
7b7bdb76ab
amd: add ac_cu_info::has_point_sample_accel flag and use in ACO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:47 +00:00
Daniel Schürmann
cfb745592d
amd: add ac_cu_info::has_mad32 flag and use in ACO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:47 +00:00
Daniel Schürmann
1e3db50170
aco: use additional flags from ac_cu_info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:46 +00:00
Daniel Schürmann
f7c4aa48a0
ac/gpu_info: add some more flags to ac_cu_info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:46 +00:00
Daniel Schürmann
f791e46c47
aco: add ac_cu_info to aco_compiler_options
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:46 +00:00
Daniel Schürmann
addd4ea59f
aco: pass aco_compiler_options to init_program()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:46 +00:00
Daniel Schürmann
bf9bec07c2
aco/tests: don't pass CHIP_UNKNOWN to ACO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:46 +00:00
Daniel Schürmann
6f4e8046b5
ac/gpu_info: create separate function ac_fill_cu_info() to fill out CU info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:45 +00:00
Daniel Schürmann
749c619c45
ac/gpu_info: correct some SGPR and VGPR allocation values in ac_cu_info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:45 +00:00
Daniel Schürmann
553b431aca
ac/gpu_info: move some CU information into separate struct ac_cu_info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:44 +00:00
Daniel Schürmann
0db1ae1f01
aco: disable XNACK on all GPUs
...
Affects code generation on GFX8 and GFX9 APUs where we misunderstood
the feature. XNACK replay is not being used with graphics APIs.
Totals from 41759 (65.90% of 63370) affected shaders: (Raven)
MaxWaves: 298672 -> 299000 (+0.11%)
Instrs: 19200726 -> 19138227 (-0.33%); split: -0.33%, +0.00%
CodeSize: 98501904 -> 98253196 (-0.25%); split: -0.26%, +0.00%
SGPRs: 3058544 -> 2831492 (-7.42%)
VGPRs: 1644896 -> 1643660 (-0.08%)
Latency: 193383803 -> 193224047 (-0.08%); split: -0.08%, +0.00%
InvThroughput: 92741082 -> 92698975 (-0.05%); split: -0.05%, +0.00%
SClause: 678580 -> 630107 (-7.14%); split: -7.15%, +0.00%
Copies: 1863375 -> 1863406 (+0.00%); split: -0.04%, +0.04%
VALU: 13791245 -> 13791267 (+0.00%); split: -0.00%, +0.00%
SALU: 2066726 -> 2066741 (+0.00%); split: -0.04%, +0.04%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:43 +00:00
Daniel Schürmann
b9c7cea719
radeonsi: use si_shader_encode_{sgprs|vgprs} in si_compute.c
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:42 +00:00
Daniel Schürmann
d94e90df25
amd/common: link with libamdgpu_addrlib
...
ac_surface needs that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38701 >
2025-12-22 07:34:41 +00:00
Samuel Pitoiset
045b778ed6
radv: add the SQTT relocated shaders BO to the cmdbuf list
...
Found this while debugging another thing with amdgpu.debug_mask=0x1 (VM).
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39002 >
2025-12-22 07:13:06 +00:00
Vinson Lee
c576d64801
util/u_printf: Fix const correctness in util_printf_next_spec_pos
...
Fix compiler error:
../src/util/u_printf.c:75:13: error: initializing 'char *' with an
expression of type 'const char *' discards qualifiers
[-Werror,-Wincompatible-pointer-types-discards-qualifiers]
75 | char *spec_pos = strpbrk(str_found, "cdieEfFgGaAosuxXp%");
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
glibc now provides C23-style type-generic string functions. strpbrk
returns const char * when passed a const char * argument. Update
spec_pos declaration to match.
Fixes: 6d263ff5a3 ("util: Convert util/u_printf.cpp to util/u_printf.c")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39059 >
2025-12-21 22:34:40 -08:00
Yiwei Zhang
166923bf0e
venus: adopt vk_common_GetCalibratedTimestampsKHR
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Venus driver already has to query host time domains within the guest to
be monotonic, so we can rely on the common impl as well and only query
device domain from the renderer.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38963 >
2025-12-21 16:47:30 +00:00
Yiwei Zhang
36c52644fa
venus: use vk_common_GetPhysicalDeviceCalibrateableTimeDomainsKHR
...
Only host domains are conditional, and they are checked with the common
vk_device_get_timestamp helper.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38963 >
2025-12-21 16:47:30 +00:00
Valentine Burley
f8ed6c578a
zink/ci: Mark new TGL glx failures as flakes
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
These newly failures can pass intermittently.
Fixes: a00f6ee033 ("zink/ci: Add tests to the anv-tgl fails list to reflect CI state")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39056 >
2025-12-21 11:38:31 +00:00
Yiwei Zhang
9670c15d46
venus: hide vtest from Windows build
...
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/38969 >
2025-12-20 19:12:47 +00:00
Yiwei Zhang
1ddd09c72d
venus: refactor meson to be more flexible for additions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:47 +00:00
anonymix007
55219167c6
venus: Guard Linux-specific code against being compiled on Windows
...
v2:
- drop most additions except thread id
- fix DRM_FORMAT_MOD_LINEAR in a different way
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:47 +00:00
Yiwei Zhang
d792403f0b
venus: disable TLS ring prio forwarding on Windows
...
The prios aren't consistent when guest and host are different OS'es.
Even if they are the same, sometimes the forwarding can hit other
permission issues. The entire ring prio thing has to be redesigned, and
before that we just disable it on Windows.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:47 +00:00
Yiwei Zhang
77b32df391
venus: hide unsupported external extensions on Windows
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:47 +00:00
anonymix007
342605f9b1
venus: Expose deviceLUID in props if available
...
v2: wrap props within id props and use snake case naming
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:47 +00:00
Yiwei Zhang
1aa273ae57
venus: hide unsupported device extensions on Windows
...
This change hides:
- VK_EXT_image_drm_format_modifier
- VK_EXT_map_memory_placed
- VK_EXT_physical_device_drm
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:46 +00:00
Yiwei Zhang
c00c398995
venus: hide unsupported wsi extensions on Windows
...
Hide present id/wait extensions on Windows
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38969 >
2025-12-20 19:12:46 +00:00
Rob Clark
c430f394c5
freedreno/a6xx: Move assert
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The flags_regid is only present if gs is present (in which case, gs is
the last_shader). If there is no gs, flags_regid is initialized to
zero, not INVALID_REG (r63.x). But you have to scroll up several pages
of a long fxn to see that.
Move the assert to make things more clear.
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39029 >
2025-12-20 00:23:14 +00:00
Rob Clark
fdf90697e6
tu: Drop FD_NO_DEPRECATED_PACK
...
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39029 >
2025-12-20 00:23:13 +00:00
Rob Clark
f306e119c8
tu: Convert rest of tu_pipeline deprecated reg builders
...
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39029 >
2025-12-20 00:23:13 +00:00