Faith Ekstrand
1a2e8290ab
nir: Add NV-specific texture opcodes
...
These are for implementing various texture queries.
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25000 >
2023-10-24 22:21:18 +00:00
Faith Ekstrand
5984265d45
nir: Add a load_sysval_nv intrinsic
...
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25000 >
2023-10-24 22:21:18 +00:00
Faith Ekstrand
abf3175161
nir/lower_tex: Add a lower_txd_clamp option
...
Some of us want to lower all TXD with min_lod regardless of whether or
not it's shadow or cube or whatever.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25000 >
2023-10-24 22:21:17 +00:00
Faith Ekstrand
d3d5122f7c
nir: Add convert_alu_types to divergence analysis
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25000 >
2023-10-24 22:21:17 +00:00
Faith Ekstrand
0680330cf7
nir: Add a nir_ssa_def_all_uses_are_fsat() helper
...
Extracted from nir_lower_to_source_mods, this is useful for back-ends
which don't want to rely on NIR source and destination modifiers.
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25000 >
2023-10-24 22:21:17 +00:00
Rhys Perry
28ebe62af2
radv: enable mesh shader gs_fast_launch=2 and multi-row export
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:07 +00:00
Rhys Perry
3531136949
radv: implement mesh shader multi-row export
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:07 +00:00
Rhys Perry
773d35d25e
ac/nir: implement mesh shader multi-row export
...
Unlike AMDVLK, this has separate loops for attribute stores and exports,
so that the stores from different rows can overlap.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:07 +00:00
Rhys Perry
c29d8a9e68
ac/nir,radv: pass workgroup size to ac_nir_lower_ngg_ms
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
c300a496ea
ac/nir: add emit_ms_outputs helper
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
23cb0b00db
radv: implement mesh shader gs_fast_launch=2
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
c63ac28014
ac/nir: optimize mesh shader local_invocation_index
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
cddbe9a4c2
ac/nir: implement mesh shader gs_fast_launch=2
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
75bc2e7149
ac/nir: refactor mesh vertex/primitive export
...
To prepare for row export, move them into helpers with index and row
parameters.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
24431419ce
ac/nir: remove dead code
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
6ec72806b7
ac/nir: add row parameter to helpers
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
4c3677094e
aco,nir: add export_row_amd intrinsic
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Rhys Perry
4bd4ff5d9b
nir: improve ms_cross_invocation_output_access with local_invocation_id
...
Since GFX11, RADV doesn't need to lower local_invocation_id.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25040 >
2023-10-24 21:36:06 +00:00
Caio Oliveira
b91ed68fa0
intel/compiler: Don't emit calls to validate() in release build
...
While the fs_visitor::validate() implementation is empty in release
build, we still emit calls to it since it is defined in a separate
compilation unit than its callers. To fix this, just expose an inline
empty function in the header for the release mode.
Fossil run time differences in TGL laptop (difference at 95.0% confidence):
```
Rise of The Tomb Rider (Native) [n=7]
-0.482857 +/- 0.010932
-1.60608% +/- 0.0363621%
Cyberpunk 2077 (DXVK) [n=7]
-0.987143 +/- 0.0904516
-0.82996% +/- 0.076049%
Batman Arkham City (DXVK) [n=7]
-7.74857 +/- 0.329561
-1.46298% +/- 0.0622231%
```
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25847 >
2023-10-24 21:10:35 +00:00
Samuel Pitoiset
13cac671fd
ac/gpu_info: fix querying the maximum number of IBs per ring
...
The kernel uses 32-bit and Mesa was using 8-bit...
Fixes: 96345ae2ed ("ac/gpu_info: query the maximum number of IBs per submit from the kernel")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25867 >
2023-10-24 19:53:08 +00:00
Rohan Garg
3bf1b7deba
anv: selectively enable FCV optimization for DG2
...
Enabling FCV on MTL breaks a number of games and benchmarks. Let's
disable it for now till we can root cause the issue.
Closes : #9987
Fixes: 26c2c9 ('anv: enable FCV for Gen12.5')
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25863 >
2023-10-24 19:27:14 +00:00
Rohan Garg
25a232238f
anv: turn off non zero fast clears for CCS_E
...
This helps fix a performance regression on games such as F1 22 and RDR2.
Turning on non zero fast clears causes additional partial resolves for
these games that degrades performance. Let's turn off non zero fast
clears till we can eliminate the partial resolves.
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25863 >
2023-10-24 19:27:14 +00:00
Boyuan Zhang
2179cd129f
radeonsi/vcn: disable tmz ctx buffer for VCN_2_2_0
...
VCN_2_2_0 should not use tmz context buffer.
Fixes: ffbbf23e
A minor fix for above commit to use the original comparison logic "<"
instead of "<="
Cc: mesa-stable
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25856 >
2023-10-24 18:48:45 +00:00
Juan A. Suarez Romero
209376f01a
v3d/vc4/ci: add new fails/timeout
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25868 >
2023-10-24 18:27:34 +00:00
Timur Kristóf
eff4db3718
radv: Add gang follower semaphore functions.
...
These functions implement the possibility to have the
gang leader wait for its follower.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25796 >
2023-10-24 17:58:12 +00:00
Timur Kristóf
b5e0a04d4e
radv: Slightly refactor gang semaphore functions.
...
This is in preparation for adding some new ones.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25796 >
2023-10-24 17:58:12 +00:00
Timur Kristóf
cbbb85c907
radv: Allow gang submit use cases other than task shaders.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25796 >
2023-10-24 17:58:12 +00:00
Timur Kristóf
67ce3f11e8
radv: Simplify gang CS and semaphore initialization.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25796 >
2023-10-24 17:58:12 +00:00
Samuel Pitoiset
56a05b9251
radv: fix missing predicate bit for WRITE_DATA helper
...
Fixes: 12a753f8d2 ("radv: Use new WRITE_DATA helper in more places.")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25850 >
2023-10-24 14:53:04 +00:00
Samuel Pitoiset
f9cc2c5ba4
Revert "radv: fix finding shaders by PC"
...
Shaders are no longer allocated contiguously in memory and the next
pointer is now the shader.
This fixes using the trap handler on GFX8.
This reverts commit 2dcd12f38b .
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25852 >
2023-10-24 14:19:13 +00:00
Bas Nieuwenhuizen
653bcbcb09
radv: Expose VK_KHR_cooperative_matrix.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Bas Nieuwenhuizen
9df4703fbb
radv: Add cooperative matrix lowering.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Bas Nieuwenhuizen
31863aa48c
radv: Don't transparently use wave32 with cooperative matrices.
...
The instruction has different regsizes for wave32 vs. wave64.
To ensure cases with cooperative matrix load/store without any
actual wmma instructions get handled correctly, also require
full subgroups if subgroup invocation/id are used. Not sure
those could be transparently changed anyway.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Bas Nieuwenhuizen
d8458c0559
aco: Make RA understand WMMA instructions.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Bas Nieuwenhuizen
5e7c828c0e
aco: Add WMMA instructions.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Bas Nieuwenhuizen
a29cd20d17
nir: Add AMD cooperative matrix intrinsics.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24683 >
2023-10-24 13:24:18 +00:00
Helen Koike
663ad191ca
ci/ci_run_n_monitor: print job duration time
...
If the job is running, it prints the elapsed time so far, if it finished
already, it prints the time it took.
Signed-off-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25822 >
2023-10-24 12:57:14 +00:00
Helen Koike
69012e355e
ci/marge_queue: add pretty_dutation()
...
Add pretty_duration() function that prints time in format 6m23s and use
it for marge_queue.
Signed-of-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25822 >
2023-10-24 12:57:14 +00:00
Samuel Pitoiset
96345ae2ed
ac/gpu_info: query the maximum number of IBs per submit from the kernel
...
When the query fails (unsupported by the current kernel), we fallback
to some rough estimate.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10014
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25803 >
2023-10-24 11:05:26 +00:00
Rohan Garg
f85d8d908c
anv: cleanup includes
...
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25766 >
2023-10-24 10:33:57 +00:00
Rhys Perry
fc342c897f
Revert "radv: pre-init surface info"
...
This reverts commit e15a4e6e1a .
The change wasn't thread safe.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9955
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10021
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25830 >
2023-10-24 10:11:34 +00:00
Samuel Pitoiset
aba815c041
radv: initialize video decoder for GFX11.5
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25304 >
2023-10-24 08:20:47 +02:00
Samuel Pitoiset
50845f6fa4
radv: set ENABLE_PING_PONG_BIN_ORDER for GFX11.5
...
Ported from RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25304 >
2023-10-24 08:20:47 +02:00
Yogesh Mohan Marimuthu
62a2ed8602
radeonsi: add radeonsi to GL_RENDERER string
...
adding driver name to GL_RENDERER string will help to quickly
identify the driver being used.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25148 >
2023-10-24 04:46:27 +00:00
Yogesh Mohan Marimuthu
6cf58bc862
radeonsi: In gfx6_init_gfx_preamble_state() use gfx_level only from sctx
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25148 >
2023-10-24 04:46:27 +00:00
Yogesh Mohan Marimuthu
b1111f35c6
radeonsi: correct old comment in si_emit_framebuffer_state()
...
si_init_cs_preamble_state() function does not exist anymore and
PA_SC_WINDOW_SCISSOR_TL is set to 0,0. Update the comments with
this information.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25148 >
2023-10-24 04:46:27 +00:00
Yogesh Mohan Marimuthu
e373b7c07e
docs: remove document for unused variable dfsm from AMD_DEBUG
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25148 >
2023-10-24 04:46:26 +00:00
Yogesh Mohan Marimuthu
cd2e3fc59a
radeonsi: add more documentation for dpbb debug env variable
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25148 >
2023-10-24 04:46:26 +00:00
Mike Blumenkrantz
9de455bc43
zink: check for sampler view existence during zink_rebind_all_images()
...
views with mutable formats do not get created immediately, which means
access of them must be checked first
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25829 >
2023-10-24 02:24:15 +00:00
Mike Blumenkrantz
12fc8cf4df
zink: only increment image_rebind_counter on image export if binds exist
...
rebinding all images on all contexts is only relevant for images which
have bindings, otherwise it's just pointless churn
fixes #10016
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25829 >
2023-10-24 02:24:15 +00:00