Mike Blumenkrantz
c9aee1165b
zink: refactor batch creation
...
by moving this into its own function, we can reuse it for creating a compute
batch, which will not be part of the gfx batch array
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
dcab2ca6b1
zink: take a pipe_reference param in zink_batch_reference_program
...
this lets us reuse the function for gfx and compute programs without much
churn, since in C we can use a pointer to the first member of a struct and
a pointer to the struct interchangeably
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
f32891b159
zink: ignore compute batch when starting/ending batches
...
compute batches don't have queries
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
8f6ffc5543
zink: handle nir_intrinsic_memory_barrier_shared in ntv
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
d2b6e10882
zink: add handling for shared atomic ops in ntv
...
these are mostly the same as ssbo except they use the shared block variable
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
deff4c220b
zink: implement shared load/store nir ops in ntv
...
these access the data in the shared block variable at an offset
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
36cdcbe092
zink: handle COMPUTE glsl variables
...
we can just use existing helpers for these
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
2d65c7cc0a
zink: handle COMPUTE setup in ntv
...
addressing mode, shared block, and execution modes all need to be handled
here
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
d9122c0417
zink: handle COMPUTE bindings in compiler/ntv
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
a5ff286992
zink: add spirv_builder function for emitting a 3word literal exec mode
...
used by compute
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
813c361fe0
zink: wait on compute batch when necessary during transfer map
...
now that we have the capability to wait on specific batches, we can
check whether we need to sync with the compute queue here before trying
to map resources
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
261058f277
zink: make zink_batch_reference_resource_rw return usage info
...
now this provides some info regarding which batches need to be flushed,
allowing gfx batches and compute batches to share resources
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
e196c471a4
zink: make get_resource_usage() public
...
also cover compute batch id (still not yet used)
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
079fae8822
zink: bump resource usage flags to allow 5 batches
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Mike Blumenkrantz
36ee845cd4
zink: add defines for compute batch and gfx batch count
...
this will be used for handling batch usage with compute
also bump some struct field sizes based on this
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8781 >
2021-02-10 00:19:38 +00:00
Lionel Landwerlin
6c489dfefc
intel/stub: plug some gaps in our ioctl faking
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Acked-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934 >
2021-02-09 21:08:52 +00:00
Lionel Landwerlin
c4c642a7b4
drm-shim: report support for timeline semaphores
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Acked-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934 >
2021-02-09 21:08:52 +00:00
Lionel Landwerlin
64cb03a52d
anv: only signal wsi fence BO on last command buffer
...
I'm pretty sure this doesn't fix anything because the WSI code only
use a single VkSubmitInfo, but better be safe.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: ccb7d606f1 ("anv: Use submit-time implicit sync instead of allocate-time")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934 >
2021-02-09 21:08:52 +00:00
Lionel Landwerlin
8297a9a429
anv: break up internal queueing function
...
We want more control over batching things up when possible to minimize
the round trips to i915. This breaking up of one big internal function
into helpers will be useful later.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934 >
2021-02-09 21:08:52 +00:00
Lionel Landwerlin
e93344288b
anv: add a comment describing has_relocs field
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934 >
2021-02-09 21:08:52 +00:00
Michel Zou
2ef3dca476
vulkan/lavapipe: add missing VKAPI_ATTR/CALL
...
Acked-by: Jose Fonseca <jfonsec@vmware.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8823 >
2021-02-09 19:21:03 +00:00
Rhys Perry
e2608312d3
aco: remove loop to flag loop blocks as WQM
...
This is no longer necessary.
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/8446 >
2021-02-09 17:52:17 +00:00
Rhys Perry
ed020008b5
aco: rewrite setting of Exact_Branch
...
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/8446 >
2021-02-09 17:52:17 +00:00
Rhys Perry
f0074a6f05
aco: do not flag all blocks WQM to ensure we enter all nested loops in WQM
...
This should no longer be necessary since the mark_block_wqm() we use to
flag break conditions as WQM now adds block to the worklist. With them
added to the worklist, get_block_needs() will add WQM to block_needs.
Adding WQM to block_needs here without adding the block to the worklist
(like we do here) can cause issues because it does not ensure that the
predecessors' branches are in WQM (needed for it to be possible to
transition to WQM in the block). This happened in an Overwatch shader.
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Fixes: 661922f6ac ("aco: add block to worklist in mark_block_wqm()")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4066
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8446 >
2021-02-09 17:52:17 +00:00
Michel Dänzer
9f9441c231
ci: Append build image tag to LAVA tag used for minio path
...
This automatically ensures the LAVA kernel / device-tree / rootfs files
are updated along with the build image, so any relevant changes in the
latter are reflected in the former.
v2:
* Use the same definition of DISTRIBUTION_TAG in .lava-test:amd64 as in
kernel+rootfs_amd64
v3:
* Extend comment about $MESA_BASE_TAG in .lava-test:amd64 (Eric Anholt)
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
7357bb6bb6
ci: Incorporate base image tag into dependent image tags
...
Using new .incorporate-base-tag+templates-commit & .set-image-base-tag
templates.
This automatically ensures dependent images get rebuilt along with the
base image, no more need to manually bump the dependent image tags.
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
7c3337d0bf
ci: Add and use .set-image template to construct docker image name
...
Instead of open-coding everywhere.
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
9bdbbf972d
ci: Move FDO_DISTRIBUTION_TAG assignment to template
...
This will be useful in more places later. Should have no functional
effect for now.
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
dfdfebc8cb
ci: Use MESA_IMAGE_TAG everywhere
...
Instead of just "TAG".
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
ab7e1dff0b
ci: Use MESA_ namespace for image variables in Windows jobs
...
Instead of a separate WINDOWS_ namespace.
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7988 >
2021-02-09 17:28:37 +00:00
Michel Dänzer
26d2ffeb20
ci: Set GALLIVM_PERF=nopt,no_filter_hacks for llvmpipe-gles2
...
Gives us 48 more passed tests, and possibly slightly shorter job times.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986 >
2021-02-09 16:44:08 +00:00
Michel Dänzer
6e53e9df02
ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_gl
...
Gives us 13 more passed tests.
(GALLIVM_PERF=nopt breaks some tests here)
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986 >
2021-02-09 16:44:08 +00:00
Michel Dänzer
a8061d0384
ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_shader
...
Gives us 1 more passed test.
(GALLIVM_PERF=nopt breaks some tests here)
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986 >
2021-02-09 16:44:08 +00:00
Tomeu Vizoso
339817f2e7
ci: Disable two radeonsi jobs
...
The machine to which these boards are connected to is having trouble
keeping up when the rootfs are expanded. This is causing jobs to time
out and fail.
So as a mitigation measure reduce the load by disabling two of these
jobs until the root problem is solved.
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8930 >
2021-02-09 14:48:46 +00:00
Leo Liu
e4decf6f39
radeon/vcn: enable dynamic dpb Tier2 support
...
On VCN3 with codec AV1 and VP9
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/8916 >
2021-02-09 08:39:42 -05:00
Leo Liu
c7a481872e
radeon/vcn: implement dynamic dpb Tier2 support
...
Fill up the t2 message buffers based on reference lists, so to
avoid unnecessary allocation of the buffers.
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/8916 >
2021-02-09 08:39:42 -05:00
Leo Liu
905c103209
radeon/vcn: add dynamic dpb Tier2 message buffer interface
...
Tier2 will dynamically manange the dpb buffers, so that can
save even more VRAMs
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/8916 >
2021-02-09 08:39:42 -05:00
Samuel Pitoiset
cc39225014
radv: fix printing the debug option names
...
radv_dump_enabled_options() doesn't like holes. While we are at it,
use ull everywhere.
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/8925 >
2021-02-09 13:09:24 +00:00
Rhys Perry
e8220e106b
aco: optimize AC_FETCH_FORMAT_SNORM alpha adjust
...
This looks like it was copied from LLVM, which didn't have a fmax
intrinsic.
fossil-db (GFX8):
Totals from 43 (0.03% of 140385) affected shaders:
CodeSize: 49660 -> 49488 (-0.35%)
Instrs: 10434 -> 10348 (-0.82%)
Cycles: 41736 -> 41392 (-0.82%)
VMEM: 13793 -> 13719 (-0.54%)
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/8918 >
2021-02-09 12:58:22 +00:00
Bas Nieuwenhuizen
bd7d8a77e9
radv: Fix vram override with fully visible VRAM.
...
Fixes: cf2eebdf4f ("radv,gallium: Add driconf option to reduce advertised VRAM size.")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8915 >
2021-02-09 11:58:53 +00:00
Gert Wollny
eefb18e5fb
gallium/tgsi-to-nir: Take property NUM_CLIPDIST_ENABLED into account
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8919 >
2021-02-09 11:24:22 +00:00
Gert Wollny
055175d484
gallium/tgsi_to_nir: Handle SAMPLE_MASK output in FS
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8919 >
2021-02-09 11:24:22 +00:00
Samuel Pitoiset
96b03aaa17
radv: use the global BO list from the winsys
...
We had two different implements for the global BO list, one in RADV
and one in the winsys. This will also allow to make more BOs resident.
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/8868 >
2021-02-09 10:03:47 +00:00
Samuel Pitoiset
f6c28474a3
radv/winsys: enable the global BO list unconditionally
...
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/8868 >
2021-02-09 10:03:47 +00:00
Samuel Pitoiset
5b967ccf77
radv/winsys: add the resident BOs to the list of BOs at submit time
...
The number of resident BOs is currently 0.
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/8868 >
2021-02-09 10:03:47 +00:00
Samuel Pitoiset
afdbd71ba5
radv/winsys: add buffer_make_resident() to the API
...
To make a BO resident (or to evict one).
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/8868 >
2021-02-09 10:03:47 +00:00
Samuel Pitoiset
16abc82ef0
radv/winsys: set use_global_list to avoid adding a BO twice
...
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/8868 >
2021-02-09 10:03:47 +00:00
Samuel Pitoiset
3235ff5cf4
radv/winsys: move the debug_all_bos check outside of the add/del helpers
...
The add/del helpers will be used to implement the global BO list
directly in the winsys.
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/8868 >
2021-02-09 10:03:47 +00:00
Icecream95
5cc0d61088
pan/bi: Don't check liveness unless the index is valid
...
Otherwise we will read out-of-bounds when the index is ~0.
Fixes: b8f042c9bb ("pan/bi: Dead code eliminate per-channel")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8923 >
2021-02-09 20:40:46 +13:00
Arcady Goldmints-Orlov
9e1aa23448
v3dv: initialize render_fd at the top of physical_device_init
...
This fixes an uninitialized variable warning.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8902 >
2021-02-09 06:45:41 +00:00