Alyssa Rosenzweig
d17dd8332e
hk: sink SSBO loads
...
Seems to hit instr count due to RA lottery but reduce reg pressure a LOT so,
probably worth it.
Totals from 5305 (9.88% of 53701) affected shaders:
MaxWaves: 4487168 -> 4551040 (+1.42%); split: +1.51%, -0.09%
Instrs: 6063323 -> 6178678 (+1.90%); split: -0.17%, +2.07%
CodeSize: 44356516 -> 44662024 (+0.69%); split: -0.21%, +0.90%
Spills: 7321 -> 4034 (-44.90%); split: -45.49%, +0.59%
Fills: 8522 -> 5069 (-40.52%); split: -40.87%, +0.35%
Scratch: 21940 -> 9856 (-55.08%); split: -55.17%, +0.09%
ALU: 4541440 -> 4554906 (+0.30%); split: -0.20%, +0.50%
FSCIB: 4541440 -> 4554906 (+0.30%); split: -0.20%, +0.50%
IC: 1180150 -> 1184856 (+0.40%); split: -0.01%, +0.41%
GPRs: 605023 -> 576336 (-4.74%); split: -5.00%, +0.26%
Uniforms: 1421832 -> 1425367 (+0.25%); split: -0.08%, +0.33%
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35720 >
2025-06-26 16:41:55 +00:00
Alyssa Rosenzweig
776f07517f
hk: optimize load_global_bounded
...
Totals from 5967 (11.24% of 53090) affected shaders:
MaxWaves: 5044864 -> 5126720 (+1.62%); split: +1.95%, -0.32%
Instrs: 6911845 -> 6227557 (-9.90%); split: -9.96%, +0.06%
CodeSize: 46353592 -> 45359410 (-2.14%); split: -4.41%, +2.27%
Spills: 18002 -> 7046 (-60.86%); split: -63.22%, +2.36%
Fills: 15833 -> 8074 (-49.01%); split: -54.59%, +5.58%
Scratch: 52160 -> 23324 (-55.28%); split: -58.32%, +3.04%
ALU: 4235569 -> 4602546 (+8.66%); split: -1.79%, +10.45%
FSCIB: 4235364 -> 4602341 (+8.66%); split: -1.79%, +10.45%
IC: 1261552 -> 1253110 (-0.67%); split: -4.33%, +3.66%
GPRs: 664060 -> 640627 (-3.53%); split: -4.69%, +1.16%
Uniforms: 1568288 -> 1505664 (-3.99%); split: -10.88%, +6.89%
Loops: 4669 -> 4670 (+0.02%)
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35720 >
2025-06-26 16:41:54 +00:00
Alyssa Rosenzweig
caa0854da8
nir: plumb load_global_bounded
...
this lets the backend implement bounded loads (i.e. robust SSBOs) in a way
that's more clever than a full branch. similar idea to
load_global_constant_bound which should eventually be merged into this.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Job Noorman <job@noorman.info>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35720 >
2025-06-26 16:41:53 +00:00
Dave Airlie
37e71a5cb2
radv/video: add support for AV1 encoding
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Co-authored-by: Charlie Turner <cturner@igalia.com>
Co-authored-by: Benjamin Cheng <benjamin.cheng@amd.com>
Co-authored-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dave Airlie
724655bfc6
vulkan/video: add support for AV1 encoding to runtime
...
Co-authored-by: Charlie Turner <cturner@igalia.com>
Co-authored-by: Benjamin Cheng <benjamin.cheng@amd.com>
Co-authored-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
David Rosca
ac935c18b2
vulkan/video: Add bit depth to session and session params
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dave Airlie
ee9ec055d9
radv/video: move session defines to header as encode needs more.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dylan Baker
dd45e25dc3
meson: update b_sanitize check for Meson >= 1.8
...
In Meson 1.8 the b_sanitize option was changed from an enumerated set of
known sanitizers to an array of options to test with `-fsanitize`, this
means that the thread sanitizer could be used in conjunction with one
or more other sanitizers and we need to account for this. Use
`.contains()` to check if `thread` is in the sanitizer list
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35747 >
2025-06-26 14:59:27 +00:00
Mike Blumenkrantz
5cfaa6cd5f
zink: use smaller keys for surface/bufferview caching and switch to sets
...
this should be a bit more efficient
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9ac256645e
zink: use samplerview obj to check buffer rebinds in non-db path
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
c88cc5d135
zink: unify bvci creation
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
3517ad1432
zink: remove redundant pipe_resource param from zink surface funcs
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
5cf6cb1c6d
zink: enforce pipe_surface::texture matching the resource in zink_get_surface()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
ef3f798957
zink: prune zink_surface down to the imageview and create/fetch on demand
...
this eliminates all pipe_surface allocations
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
309710c260
zink: various trivial struct access changes
...
ideally no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b8108d0e7a
zink: use temp struct for implicit feedback loop detection
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9197de066c
zink: add layer info to bindless descriptor
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
daa07aba98
zink: directly return import2d resource
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
ed325d9309
zink: directly use imageview format for image descriptors for depth clamping
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
21fbe0f893
zink: track whether fb has swapchain bound on context
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
defc3dfa79
zink: use a better check for current fb zsbuf in zink_clear_depth_stencil()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
76e2b61a2f
zink: delete/simplify some bindless descriptor resource accesss
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
8805afd291
zink: delete zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a9c928954e
zink: allocate keys for surface cache to stop using zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b3c02d2bca
zink: store/use fb attachment formats directly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b177136c56
zink: tweak zink_create_transient_surface to stop using zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
35cd9f663b
zink: break out fb ivci init
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
25441082d9
zink: big resource view rework
...
* move/unify the cache onto zink_resource_object to streamline rebinds
* delete refcounts from surfaces and bufferviews
* only delete surfaces and bufferviews when owner object is destroyed
* cache swapchain surfaces onto the swapchain image
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
8eb5f272f2
zink: remove some usage of zink_surface::ivci
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b030b20d72
zink: unify some z24 sampler clamping code
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
74cf4f4efc
zink: remove random format check in surface create
...
not sure why this was here
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
efcd6c11d9
zink: delete some redundant flagging of ctx->rp_changed
...
this already happens during unbind
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
635f0c5f4f
zink: delete transient attachments instead of leaking them
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
07cc25d968
zink: always directly create surfaces
...
no need to defer this anymore
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a7bfa37c6a
zink: unify zink_resource_object_init_mutable() calling
...
this all goes through surface creation the same way
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
2ac0f97921
zink: delete surface handling of blockTexelViewCompatibleMultipleLayers
...
this is a pipe cap now
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
e7a2268ca2
zink: simplify code surrounding prep_fb_attachment()
...
there's no need to pass a surface here since no part
of the surface is actually used besides the resource
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9a1f5e82ee
zink: clean up null surface case in prep_fb_attachment()
...
this is already checking for non-null surface in the caller,
and usage must be set after swapchain acquire to handle barriers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
78cd7f17af
zink: move zink_prep_fb_attachment up and make static
...
no longer used externally
also move update_res_sampler_layouts() as a dependency
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
0f58227324
zink: remove pipe_resource ref from bufferviews
...
this was only ever needed for shader images and bindless, which both
now take their own refs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
3da0853867
zink: make pipe_resource refs for image views more consistent
...
now they always get a ref on bind and lose the ref on unbind
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
6658533ad5
zink: add a pipe_resource ref to bindless descriptors
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
f385b87963
zink: delete zink_surface::usage_info
...
not needed, just regenerated on creation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
37bb3af312
zink: remove resource param from apply_view_usage_for_format()
...
not actually needed
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a4d4fee9d3
zink: delete zink_surface::hash
...
this is barely used
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
0a2c395394
zink: require nullDescriptor feature
...
this simplifies a huge amount of code and enables a lot of refactoring
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Valentine Burley
bac51d2931
virtio/ci: Add nightly Android Venus jobs on Intel TGL and ADL
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Introduce nightly Cuttlefish jobs on Intel Tiger Lake and Alder Lake.
Like `android-angle-venus-anv-cml`, these jobs run dEQP with the Android
guest using Venus + ANGLE, and the host using the ANV Vulkan driver.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
bf98db1c45
virtio/ci: Split android-angle-venus-anv into reusable template
...
Move shared variables and configuration for the android-angle-venus-anv
job into a new template so that it can be reused by other jobs.
This follows the structure used everywhere else.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
32264e7a00
virtio/ci: Increase timeout for AHB tests
...
Some of the tests occasionally time out on Tiger Lake.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
e2ac66efdd
ci: Uprev kernel to enable Multi-Gen LRU
...
Update the kernel to enable CONFIG_LRU_GEN.
This is the only change from the previous kernel build.
Mutli-gen LRU improves how Linux handles high memory pressure, which
allows Cuttlefish to boot on devices with limited RAM.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00