Marek Olšák
b2397c394d
ac,radeonsi: move late alloc computation into common code and shader states
...
This also fixes a rare deadlock when a scratch buffer is used.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11754 >
2021-07-08 18:37:41 +00:00
Leo Liu
43c04ab2b4
radeonsi: separate video hw info based on HW engine individually
...
This removes previous "has_hw_decode" and "uvd_enc_supported" and
makes information more accuate for cases where HW decode, HW encode,
and HW JPEG decode might partially available.
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11201 >
2021-06-08 09:32:48 -04:00
Samuel Pitoiset
726cb2d6f6
ac: ac_gpu_info::has_vgt_flush_ngg_legacy_bug
...
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/10911 >
2021-05-21 19:46:56 +00:00
Samuel Pitoiset
33ede796d5
radv: fix missing ITERATE_256 for D/S MSAA images that are TC-compat HTILE
...
To make them readable by shaders, only needed on GFX10+.
This also fixes corruption with Control and MSAA.
Cc: 21.1 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10610 >
2021-05-06 06:30:05 +00:00
Leo Liu
75a725e4c5
ac: add function for querying video capabilities
...
It will be used to query caps of decode and encode
for hardware AMDGPU supports
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Samuel Pitoiset
ec611beae2
ac: add ac_gpu_info::has_image_load_dcc_bug
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9919 >
2021-04-05 08:54:55 +00:00
Samuel Pitoiset
1df4f11eb5
radv: require DRM 3.35+
...
Linux Kernel 4.15+ is now required for RADV, this kernel has been
released 3 years ago and should be in most modern distros.
This allows us to remove a lot of legacy code for fence/semaphore.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9800 >
2021-03-29 19:48:19 +00:00
Tony Wasserka
ec34a9a889
ac: Add has_zero_index_buffer_bug to ac_gpu_info
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9429 >
2021-03-22 11:47:22 +01:00
Marek Olšák
32eb74e1e1
ac/gpu_info: fix more non-coherent RB and GL2 combinations
...
It ignored non-harvested chips with a non-power-of-two memory bus.
Fixes: abed921ce7
- amd: add support for Navy Flounder
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9568 >
2021-03-17 14:40:54 +00:00
Marek Olšák
230a6dc55d
ac,radeonsi: add sampler changes for Aldebaran
...
- no 3D and cube textures
- no mipmapping
- no border color
- image_sample is the only supported opcode with a sampler (behaves like _lz)
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9389 >
2021-03-10 18:02:27 +00:00
Rhys Perry
aa53335135
ac: split lds_granularity into encode and allocation granularities
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8761 >
2021-02-15 13:34:30 +00:00
Marek Olšák
bec7b7d528
ac/gpu_info: remove redundant radeon_info::num_sdp_interfaces
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8892 >
2021-02-13 04:56:05 +00:00
Marek Olšák
dcb6ab84e6
ac/gpu_info: add radeon_info::num_tcc_blocks
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8892 >
2021-02-13 04:56:05 +00:00
Marek Olšák
4ccf664f05
ac/gpu_info: rename num_tcc_blocks -> max_tcc_blocks
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8892 >
2021-02-13 04:56:05 +00:00
Marek Olšák
e93b42c214
ac,radeonsi: track memory usage in KB to reduce types from uint64 to uint32
...
Decreasing the time spent in radeon_cs_memory_below_limit is the motivation.
Reviewed-by: Zoltán Böszörményi <zboszor@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8794 >
2021-01-30 15:38:15 -05:00
Bas Nieuwenhuizen
9a937330ef
radeonsi: Only set modifier creation function for GFX9+ & with kernel support.
...
Fixes: c786150dfa
("radeonsi: Add modifier support.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3963
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8407 >
2021-01-12 23:47:09 +00:00
Marek Olšák
b94626d3ee
ac,radeonsi: limit Smart Access Memory to Zen 3 and GFX10.3 due to perf issues
...
Many people experience performance degradation on some systems.
There will be a driconf option to enable SAM on other chips as well as
disable it on enabled systems.
Fixes: d3d6d38145
- ac: add radeon_info::all_vram_visible for Smart Access Memory
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3982
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8225 >
2021-01-05 02:43:55 +00:00
Marek Olšák
d3d6d38145
ac: add radeon_info::all_vram_visible for Smart Access Memory
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7951 >
2020-12-09 10:33:46 -05:00
James Park
bb1adece5e
amd: Simplify ac_addrlib_create
...
Rework ac_addrlib_create to rely solely on radeon_info without
amdgpu_gpu_info.
No longer need <amdgpu.h> to create ac_addrlib instance.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7811 >
2020-11-28 04:28:01 +00:00
Samuel Pitoiset
b1558ec3ec
ac: add gpu_info::has_32bit_predication
...
32-bit predication is now supported with GFX10.3.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7732 >
2020-11-25 08:13:43 +00:00
Marek Olšák
e2b784e74b
ac: rename num_sh_per_se -> num_sa_per_se
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7542 >
2020-11-18 06:19:59 +00:00
Marek Olšák
603b5340b9
ac: rename num_render_backends -> max_render_backends
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7542 >
2020-11-18 06:19:59 +00:00
Marek Olšák
f2977a162a
ac: fix min/max_good_num_cu_per_sa on gfx10.3 with disabled SEs
...
Fixes: 9538b9a68e
- radeonsi: add support for Sienna Cichlid
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7542 >
2020-11-18 06:19:59 +00:00
Samuel Pitoiset
bf66bbda80
ac: add an option to dump GPU info to a file
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7233 >
2020-10-23 07:35:00 +00:00
Pierre-Eric Pelloux-Prayer
f5ec617677
ac/gpu_info: add detection of TMZ support
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6049 >
2020-09-24 14:51:16 +00:00
Pierre-Eric Pelloux-Prayer
e5fb9dca2a
amd/common: switch to 3-spaces style
...
Follow-up of !4319 using the same clang-format config.
Acked-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/5310 >
2020-09-07 10:00:29 +02:00
Bas Nieuwenhuizen
fb5237910b
amd: Add detection of timeline semaphore support.
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5600 >
2020-07-23 17:36:46 +00:00
Marek Olšák
89d2dac554
radeonsi: enable preemption if the kernel enabled it
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5798 >
2020-07-22 12:08:33 -04:00
Marek Olšák
c7680625c3
ac,winsys/amdgpu: align IBs the same as the kernel
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5603 >
2020-06-26 07:02:57 +00:00
Marek Olšák
116ec85012
ac: rename has_double_rate_fp16 -> has_packed_math_16bit
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5003 >
2020-06-02 16:29:25 -04:00
Marek Olšák
2cf46f2e3d
ac/gpu_info: replace num_good_cu_per_sh with min/max_good_cu_per_sa
...
Perf counters use the new max number.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5184 >
2020-05-26 06:00:54 -04:00
Marek Olšák
21504eab78
ac/gpu_info: compute the best safe IB alignment
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5095 >
2020-05-23 03:44:44 -04:00
Samuel Pitoiset
a3113e07b9
ac,radv: add ac_gpu_info::has_double_rate_fp16
...
Only GFX9+ support double rate packed math instructions.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4453 >
2020-04-09 13:30:54 +02:00
Marek Olšák
7ba5e94c50
ac: add radeon_info::use_late_alloc to control LATE_ALLOC globally
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4143 >
2020-03-12 17:27:23 +00:00
Samuel Pitoiset
b3ece36257
ac: add ac_gpu_info::cu_mask to store bitmask of compute units
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4023 >
2020-03-06 08:22:02 +00:00
Samuel Pitoiset
46a8cab58b
ac: rename min_vgpr_alloc to min_wave64_vgpr_alloc
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3975 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3975 >
2020-03-03 08:17:00 +01:00
Samuel Pitoiset
33faef6a34
ac: rename vgpr_alloc_granularity to wave64_vgpr_alloc_granularity
...
And update the value.
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/3975 >
2020-03-03 08:17:00 +01:00
Samuel Pitoiset
9432eb3e9c
ac: rename lds_size_per_cu to lds_size_per_workgroup
...
It's more accurate.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3975 >
2020-03-03 08:16:56 +01:00
Samuel Pitoiset
3de4f6c9f0
ac: add more fields to ac_gpu_info
...
For RGP traces.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3900 >
2020-02-28 08:10:37 +01:00
Samuel Pitoiset
09d8726187
ac: add more ac_gpu_info related shader fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3899 >
2020-02-26 07:58:47 +00:00
Samuel Pitoiset
974c87e449
ac,radeonsi: add ac_gpu_info::lds_size_per_cu
...
Both RadeonSI and RADV use the WGP mode, so we can assume 128KB on
GFX10.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3899 >
2020-02-26 07:58:47 +00:00
Marek Olšák
d7b565365e
ac/gpu_info: add pc_lines and use it in radeonsi
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2020-01-08 16:00:40 -05:00
Marek Olšák
e9cc4f670f
ac: add radeon_info::num_rings and move ring_type to amd_family.h
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
2019-11-19 18:31:53 -05:00
Samuel Pitoiset
2af7511ed2
ac: add radeon_info::has_l2_uncached
...
For chips that have uncached device memory (ie. MTYPE_UC).
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-11-18 08:20:19 +00:00
Marek Olšák
4a0d2e2880
ac: reorder and print all radeon_info fields
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-09-30 13:36:21 -04:00
Marek Olšák
8cbe83445b
ac: add radeon_info::tcc_harvested
...
Cc: 19.2 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-09-30 13:36:20 -04:00
Marek Olšák
aae35fbd3a
ac: move ac_get_num_physical_vgprs into radeon_info
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2019-09-18 14:39:06 -04:00
Marek Olšák
0692ae34e9
ac: move ac_get_num_physical_sgprs into radeon_info
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2019-09-18 14:39:06 -04:00
Marek Olšák
ca43006fd2
ac: move ac_get_max_wave64_per_simd into radeon_info
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2019-09-18 14:39:06 -04:00
Marek Olšák
deab3a23f6
ac: move num_sdp_interfaces into radeon_info
...
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2019-09-18 14:39:06 -04:00