Samuel Pitoiset
adfb1ddebf
ac/perfcounter: use GFX11 definition for GFX11.5
...
Pretty much everything seems similar.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39270 >
2026-01-13 22:16:40 +00:00
Samuel Pitoiset
d391cd0c4d
ac/perfcounter: fix number of scoped instances for RMI block
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39199 >
2026-01-12 08:10:33 +00:00
Samuel Pitoiset
6722a6332a
ac,radv,radeonsi: rename num_spm_counters to num_spm_modules
...
A module can have different number of counters.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39199 >
2026-01-12 08:10:32 +00:00
Samuel Pitoiset
3b6ff80d48
ac/perfcounter: define more GPU blocks on GFX12
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39199 >
2026-01-12 08:10:31 +00:00
Samuel Pitoiset
eb37d6ceb7
ac/perfcounter: fix computing number of 16-bit/32-bit SPM counters
...
Determine them only when both are explicitly 0.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39199 >
2026-01-12 08:10:30 +00:00
Samuel Pitoiset
4fce09268a
ac/perfcounter: rename ac_pc_block::num_global_instances to num_instances
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39155 >
2026-01-06 11:43:21 +00:00
Samuel Pitoiset
59dc20262c
ac/perfcounter: rename ac_pc_block::num_instances to num_scoped_instances
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39155 >
2026-01-06 11:43:21 +00:00
Samuel Pitoiset
3658d9588f
ac/perfcounter: add num_{16,32}bit_spm_counters to GPU blocks
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39155 >
2026-01-06 11:43:21 +00:00
Samuel Pitoiset
11a12893d6
ac/perfcounter: add new GCEA_SE block definition on GFX12
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39100 >
2026-01-05 10:02:05 +00:00
Samuel Pitoiset
a057800300
ac/perfcounter: compute the number of block instance properly on GFX10
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:04 +00:00
Samuel Pitoiset
87b938ce41
ac/perfcounter: update configuration of many blocks on GFX10
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:04 +00:00
Samuel Pitoiset
736ddb6ba8
ac/perfcounter: move configuration for GFX10 in a separate file
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:03 +00:00
Samuel Pitoiset
6374484123
ac/perfcounter: compute the number of block instance properly on GFX10.3
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:02 +00:00
Samuel Pitoiset
b7c2e38019
ac/perfcounter: fix the number of static instances for some blocks on GFX10.3
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:01 +00:00
Samuel Pitoiset
f4bc670ddf
ac/perfcounter: move configuration for GFX10.3 in a separate file
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:01 +00:00
Samuel Pitoiset
abc72740a7
ac/perfcounter: fix number of instances for GCEA
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39126 >
2026-01-05 08:38:00 +00:00
Samuel Pitoiset
468c8dca18
ac/perfcounter: compute the number of block instance properly on GFX11
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39099 >
2026-01-02 09:27:20 +01:00
Samuel Pitoiset
08f50f169b
ac/perfcounter: fix the number of static instances for some blocks on GFX11
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39099 >
2026-01-02 09:27:20 +01:00
Samuel Pitoiset
d03ad11e11
ac/perfcounter: move configuration for GFX11 in a separate file
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39099 >
2026-01-02 09:27:20 +01:00
Samuel Pitoiset
e377060e5c
ac/perfcounter: rework computing the number of block instances on GFX12
...
This needs to be generalized to older generations.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39083 >
2025-12-29 07:22:41 +00:00
Samuel Pitoiset
5de9390d4c
ac/perfcounter: move configuration for GFX12 in a separate file
...
Performance counters are too different between generations and it's
less error prone to define them separately for each generations.
I'm starting with GFX12 first.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39083 >
2025-12-29 07:22:39 +00: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
Pierre-Eric Pelloux-Prayer
6e371f0a8a
ac: fix potential overflows
...
Reported by static analysis. Multiplication may overflow
before being converted to the larger type, so fix this
by casting one of the operands to the destination type.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877 >
2025-07-04 15:26:38 +00:00
Samuel Pitoiset
13db408e59
ac/perfcounter: add support for GFX12
...
Sourced from PAL to add SPM support.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34524 >
2025-04-16 06:35:33 +00:00
Pierre-Eric Pelloux-Prayer
9c3ac69568
ac/perfcounter: fix buffer overflow
...
If block->b->selectors is larger than 999, "+ 4" is not enough.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31841 >
2024-11-08 13:31:02 +00:00
Marek Olšák
476529a692
ac/perfcounter: remove a bogus assert to fix an assertion failure on gfx11
...
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25485 >
2023-09-30 22:23:04 +00:00
Samuel Pitoiset
604a9b7fae
ac/perfcounter: add GFX11 groups
...
Source from PAL.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25245 >
2023-09-19 07:24:38 +00:00
Samuel Pitoiset
0925d0d042
ac/perfcounter: add SG_WQP group for GFX11
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25245 >
2023-09-19 07:24:38 +00:00
Samuel Pitoiset
af4d4f5203
ac/spm: fix number of instances of GL2C
...
It's a global block, so the number of instances is equal.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25240 >
2023-09-18 07:07:31 +00:00
Samuel Pitoiset
90d9406436
ac/perfcounter: compute the number of global instances of TCP,SQ,GL1C and GL2C
...
This will be used by SPM.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25211 >
2023-09-14 14:17:19 +00:00
Samuel Pitoiset
60cb257d26
ac/perfcounter: set the number of instances of GL1C to 4
...
According to PAL there is 4 GL1C quadrants. This will also be used
by SPM.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25211 >
2023-09-14 14:17:18 +00:00
Samuel Pitoiset
9552716208
ac/spm: add SPM block definition for GFX10-GFX10.3
...
Instead of using magic values.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25211 >
2023-09-14 14:17:18 +00:00
Samuel Pitoiset
b1ce30539b
ac/spm: remove useless SPM block setting for GFX9 and older GPUs
...
SPM is only implemented for GFX10+ on RADV/RadeonSI, although it's
technically possible on GFX9 but unused by RGP, so don't care.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25211 >
2023-09-14 14:17:18 +00:00
Marek Olšák
e18344dd24
ac,radeonsi,winsyses: switch to SPDX-License-Identifier: MIT
...
excluding: aco, radv, addrlib
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23113 >
2023-05-24 21:48:19 +00:00
Yonggang Luo
e399dc3544
util: normalize include files under src/util/*.h with util/ prefix in mesa code base
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Acked-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19546 >
2022-11-10 06:27:25 +00:00
Marek Olšák
39800f0fa3
amd: change chip_class naming to "enum amd_gfx_level gfx_level"
...
This aligns the naming with PAL.
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pellou-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16469 >
2022-05-13 14:56:22 -04:00
Samuel Pitoiset
e928f475cc
ac: add initial SPM support
...
SPM is hardware feature that allows us to dump performance counters
at a sampling interval to a buffer. It is used by RGP to report cache
counters.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13704 >
2021-11-11 10:05:49 +00:00
Samuel Pitoiset
8f9368ddb7
ac/perfcounters: add a GPU block ID to every block definitions
...
The enumeration comes from AMDVLK.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11186 >
2021-06-22 06:38:55 +00:00
Samuel Pitoiset
5a8776fd8c
ac/perfcounters: add more SPM configuration fields
...
Add the number of SPM wires because sometimes a block has eg.
2 counters but only holds 3 16-bit counters instead of 4.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11186 >
2021-06-22 06:38:55 +00:00
Samuel Pitoiset
3d8d6ebcb0
ac/perfcounters: rename num_multi to num_spm_counters
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11186 >
2021-06-22 06:38:54 +00:00
Samuel Pitoiset
da94772510
ac/perfcounters,radeonsi: rework performance counters layout
...
Instead of having different layouts which might complicate things when
some registers are missing, hardcode the SELECT and SELECT1 registers
into separate arrays.
The SELECT registers are "legacy" counters, while the SELECT1 registers
are SPM counters.
This is more verbose and emit more UCONFIG registers, but emitting the
SELECT registers is now much simpler and it seems less error prone.
This will also help emitting the SPM configuration.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11186 >
2021-06-22 06:38:54 +00:00
Samuel Pitoiset
66a34be6ac
ac/perfcounters: remove ac_pc_block_base::num_prelude
...
This seems unnecessary if the first select register is correctly set.
This CB filter was always disabled anyways.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11186 >
2021-06-22 06:38:54 +00:00
Samuel Pitoiset
380ac28891
ac: import performance counters from RadeonSI
...
Performance counters will be used by RADV for VK_KHR_performance_query
and also for adding SPM support.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11140 >
2021-06-03 07:15:21 +00:00