Alyssa Rosenzweig
c3ffcc27c1
asahi: implement blit-based resource_copy_region
...
doesn't handle complex cases, but faster than hitting the cpu!
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
c9b2bf84e5
asahi: do not stall for writers with invalid mips
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
69e6606bf9
asahi: reduce transfer map flushing with staging blits
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
7c86e6c05c
asahi: fix data valid tracking
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
386bd7fb97
asahi: set data_valid on first draw
...
otherwise we need to flush to read it safely which is ridiculous.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
b46e8fb4fe
asahi: drop custom mipmap generate
...
mipmap gen is now significantly faster with the default :~)
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
2feea36b37
asahi: allow multiple compute dispatches in a batch
...
glmark2 terrain 50% faster. yes, really.
requires setting more barriers to fix flakes.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
10e528a495
asahi: fix get_batch with compute batches
...
we'll be able to switch between compute and gfx queues soon, handle that instead
of assert failing.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
b8f737937f
asahi: add and use batch_is_compute helper
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
9063da53d8
asahi: add compute blitter
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
1c60ced65b
asahi: fix image_mask with unbind num trailing
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
54ea408742
asahi: allow compressed image stores in blits
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
c54502ebe0
asahi: respect last_block
...
for blit shaders.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
c1636ba56c
asahi: implement arrays as 2d for internal images
...
reduces blit shader variants.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
799f568dcc
asahi: don't format convert with staging blits
...
this is supposed to be a copy
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
611fcfc5ca
asahi: do not use compression blits for uncompressed levels
...
pointless, it's much faster to just twiddle on the cpu. use the helpers to
detect compression per-level the right way.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Alyssa Rosenzweig
2728995f12
asahi: fix eMRT + background load interaction
...
for when some render targets are spilled only. prevents regression in
KHR-GLES31.core.draw_buffers_indexed.color_masks
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26963 >
2024-01-10 08:44:37 -04:00
Pavel Ondračka
0610891c7c
r300/ci: add piglit job
...
Runs the gpu tests, runtime is around 25 minutes. Contrary to dEQP which
is quite stable with the disabled HiZ, piglit flakes a lot more, but
the flakes seems mostly limited to tex-miplevel-selection.
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26931 >
2024-01-10 12:28:12 +01:00
Pavel Ondračka
67ad1142cf
r300/ci: switch to b2c v0.9.11
...
New version shoudl provide more info about downloads and hopefully
help in debugging some random timeouts.
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26966 >
2024-01-10 09:50:08 +00:00
Pavel Ondračka
fc89790254
r300/ci: add missing kernel url quotes
...
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26966 >
2024-01-10 09:50:08 +00:00
Marek Olšák
68418db212
winsys/amdgpu: remove amdgpu_bo_sparse::gpu_address, use amdgpu_va_get_start_addr
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26914 >
2024-01-10 08:41:42 +00:00
Marek Olšák
d05e029ff0
winsys/amdgpu: remove amdgpu_bo_real::gpu_address, use amdgpu_va_get_start_addr
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26914 >
2024-01-10 08:41:42 +00:00
Tapani Pälli
afc7203539
iris: use workaround framework for Wa_22018402687
...
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26925 >
2024-01-10 08:26:41 +00:00
Teng, Jin Chung
db5ddf1c2e
d3d12: Decode - Adding more supported resolution
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26944 >
2024-01-09 17:03:44 +00:00
Mike Blumenkrantz
ec656e1984
lavapipe: maint6
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26881 >
2024-01-09 15:24:12 +00:00
Mike Blumenkrantz
89a7ee7393
lavapipe: maint6 descriptor stuff
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26881 >
2024-01-09 15:24:12 +00:00
Italo Nicola
a60c52e5f8
panfrost: expose support for EXT_copy_image
...
This was held back by the issue fixed in the previous patch. Let's
enable it again!
There's a bunch of failures due to a bug in Piglit, where undefined
behavior gets invoked. Let's just mark them as expected failures for now
and move on.
Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24942 >
2024-01-09 09:21:29 +00:00
Italo Nicola
17a62ff993
panfrost: legalize afbc before blitting
...
If we legalize AFBC late, we end up in a situation while we might need
to do a blit while inside a previous blit operation, but u_blitter
state isn't saved recursively, and that leads to crashes.
This patch solves this issue by splitting panfrost_blit into two
functions and legalizing AFBC early.
Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24942 >
2024-01-09 09:21:29 +00:00
Italo Nicola
c6a7d0ead2
panfrost: fix untracked dependency when converting resource modifier
...
Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24942 >
2024-01-09 09:21:29 +00:00
Sergi Blanch Torne
5cee5578f7
Revert "ci: disable Collabora's LAVA lab for maintance"
...
This reverts commit 11b707de0e
Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26900 >
2024-01-09 07:54:30 +01:00
Karol Herbst
6024bbed3c
rusticl/llvm: do not include spirv-tools/linker.hpp
...
This was left by mistake as we do not cache the linked output.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10404
Fixes: 299f949775 ("rusticl/meson: generate bindings for LLVM")
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26943 >
2024-01-09 05:12:53 +00:00
Marek Olšák
f09384f4c3
gallium/u_threaded: keep it enabled even if the CPU count is 1
...
radeonsi without TC fails tests.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26584 >
2024-01-08 22:56:41 +00:00
Marek Olšák
b448fb8b8f
gallium/u_threaded: remove unused param from tc_bind_buffer/add_to_buffer_list
...
the tc parameter is unused
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26584 >
2024-01-08 22:56:41 +00:00
Marek Olšák
6327302ec2
gallium/u_threaded: use a dummy end call to indicate the end of the batch
...
instead of using the last pointer. This is simpler.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26584 >
2024-01-08 22:56:41 +00:00
Marek Olšák
a3a6f6855e
mesa,u_threaded_context: add a fast path for glDrawElements calling TC directly
...
mesa/main/draw.c calls threaded_context to add a draw call, but the caller
fills it manually.
This way we don't have to fill pipe_draw_info in a local variable and later
copy it to tc_batch. tc_batch is filled from draw.c directly.
It also eliminates a few conditional jumps thanks to assumptions we can make
in DrawElements but not tc_draw_vbo.
This decreases the overhead of the GL frontend thread by 1.1%, which has
CPU usage of 26%, so it decreases the overhead for that thread by 4.2%.
(1.1 / 26)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26584 >
2024-01-08 22:56:41 +00:00
Marek Olšák
e04055b90e
gallium/u_threaded_context: use function table to jump to different draw impls
...
Instead of a series of if-else statements, use a function table containing
all the draw variants, which is indexed by:
[is_indirect * 8 + index_size_and_has_user_indices * 4 +
is_multi_draw * 2 + non_zero_draw_id]
This decreases the overhead of tc_draw_vbo by 0.7% (from 4% to 3.3%)
for the GL frontend thread in VP2020/Catia1, which has CPU usage of 26%,
so it decreases the overhead for that thread by 2.7%. (0.7 / 26)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26584 >
2024-01-08 22:56:41 +00:00
Mike Blumenkrantz
03f049f497
zink: always force flushes when originating from api frontend
...
flags=0 is used for e.g., glFenceSync, which apps use to insert sync points
to determine when all prior work has completed. eliding these flushes into no-ops
is fine for all scenarios except when the last op was a present, in which
case the no-op (previous) fence will not sync as expected for the present and
graphical artifacts will result
in the future, this may be changed back to the previous behavior if/when presentation
gains timeline semaphore capabilities by providing the last timeline id
as a fence instead of the last batch
fixes #10386
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26935 >
2024-01-08 22:37:10 +00:00
Sil Vilerino
311d653df9
d3d12: Fix AV1 Encode - log2 rounding for tile_info section
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26853 >
2024-01-08 19:47:52 +00:00
Corentin Noël
0541a57517
virgl: Assert build_id_note before dereferencing it
...
Fix defect reported by Coverity Scan.
Dereference null return value
If the function actually returns a null value, a null pointer dereference will occur.
CID: 1492763
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26924 >
2024-01-08 17:44:42 +00:00
Leo Liu
9eac06521a
gallium/vl: match YUYV/UYVY swizzle with change of color channels
...
Update the sampler views with the color channels, that fixes the issue
caused by: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20815
It fixes the case:
`gst-launch-1.0 -v -v filesrc location=file.jpg ! jpegparse ! vaapijpegdec ! imagefreeze ! vaapisink`
Fixes: dc2119bf3f ("util/format: Fix wrong colors when importing YUYV and UYVY")
Cc: mesa-stable
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Sathishkumar S <sathishkumar.sundararaju@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26911 >
2024-01-08 17:05:57 +00:00
Pavel Ondračka
8b5cdc5fa5
ci: add r300 RV530 dEQP gles2 CI job
...
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26823 >
2024-01-08 16:19:20 +00:00
Pavel Ondračka
000a8cbb65
r300: fix memory leaks in compiler tests
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26823 >
2024-01-08 16:19:20 +00:00
Marek Olšák
a84729d368
radeonsi/ci: add gfx11 flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
205646cd77
winsys/amdgpu: simplify code using amdgpu_cs_context::chunk_ib
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
44df9517cd
winsys/amdgpu: don't use amdgpu_fence::ctx for fence dependencies
...
The only remaining use of ctx is amdgpu_fence_is_syncobj.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
7ccdcae4b5
winsys/amdgpu: use pipe_reference for amdgpu_ctx refcounting
...
this is the standard utility for refcounting
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
33980355d4
winsys/amdgpu: implement explicit fence dependencies as sequence numbers
...
This eliminates redundant fence dependencies if BOs add the same ones.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
6d7a76595d
winsys/amdgpu: remove dependency_flags parameter from cs_add_fence_dependency
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
6ac0b4ef05
winsys/amdgpu: rename amdgpu_bo_real::lock to map_lock
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00
Marek Olšák
1e2c02d76b
winsys/amdgpu: rename amdgpu_bo_sparse::lock -> commit_lock
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26643 >
2024-01-06 20:55:30 +00:00