Commit graph

207678 commits

Author SHA1 Message Date
Matt Turner
7d329d615a vulkan: Generate files with newline at end
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
These generator scripts use the `write` function that, unlike `print`,
doesn't print a trailing newline. So let's add one to the template.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35697>
2025-06-24 14:01:04 +00:00
Matt Turner
6a47531440 intel: Generate files with newline at end
This generator scripts uses the `write` function that, unlike `print`,
doesn't print a trailing newline. So let's add one to the template.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35697>
2025-06-24 14:01:04 +00:00
Matt Turner
6100dbc3d0 compiler: Generate files with newline at end
These generator scripts use the `write` function that, unlike `print`,
doesn't print a trailing newline. So let's add one to the template.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35697>
2025-06-24 14:01:04 +00:00
Ashley Smith
2ce201707e mesa: Add support for GL_EXT_shader_clock
Signed-off-by: Ashley Smith <ashley.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35630>
2025-06-24 13:21:28 +00:00
Georg Lehmann
b729ad1742 nir/loop_analyze: consider movs/vecs free
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
They are free more likely than not.

Foz-DB Navi31:
Totals from 462 (0.58% of 80251) affected shaders:
Instrs: 1464013 -> 1868466 (+27.63%)
CodeSize: 8476352 -> 10745544 (+26.77%)
VGPRs: 27412 -> 27560 (+0.54%)
SpillSGPRs: 0 -> 16 (+inf%)
SpillVGPRs: 83 -> 76 (-8.43%)
Scratch: 6072832 -> 6071808 (-0.02%)
Latency: 19282476 -> 19552323 (+1.40%); split: -0.11%, +1.51%
InvThroughput: 2198357 -> 2258490 (+2.74%); split: -0.47%, +3.21%
VClause: 32986 -> 43491 (+31.85%)
SClause: 72760 -> 126112 (+73.33%)
Copies: 165286 -> 223368 (+35.14%)
Branches: 60530 -> 79743 (+31.74%); split: -0.03%, +31.77%
PreSGPRs: 24885 -> 25077 (+0.77%)
PreVGPRs: 23004 -> 22494 (-2.22%); split: -2.26%, +0.04%
VALU: 760978 -> 898136 (+18.02%)
SALU: 187786 -> 252995 (+34.73%); split: -0.03%, +34.75%
VMEM: 58469 -> 69164 (+18.29%); split: -0.07%, +18.36%
SMEM: 87926 -> 158175 (+79.90%); split: -0.00%, +79.90%
VOPD: 580 -> 732 (+26.21%); split: +31.38%, -5.17%

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35686>
2025-06-24 12:18:47 +00:00
Georg Lehmann
b1290fdf20 nir/loop_analyze: handle vector selections properly
Consider all conditions, not just the first.

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35686>
2025-06-24 12:18:47 +00:00
Georg Lehmann
47aba15489 nir/loop_analyze: always consider comparisions between induction var and constant free
There is no reason why this should be restricted to single uses.

Foz-DB Navi31:
Totals from 21 (0.03% of 80251) affected shaders:
Instrs: 54424 -> 65851 (+21.00%)
CodeSize: 286688 -> 346896 (+21.00%)
Latency: 2980310 -> 2959904 (-0.68%)
InvThroughput: 403744 -> 400782 (-0.73%)
VClause: 923 -> 1316 (+42.58%)
SClause: 1217 -> 1705 (+40.10%)
Copies: 3226 -> 3393 (+5.18%); split: -0.87%, +6.04%
Branches: 1014 -> 1130 (+11.44%); split: -0.39%, +11.83%
PreSGPRs: 1327 -> 1306 (-1.58%)
PreVGPRs: 1896 -> 1868 (-1.48%)
VALU: 36083 -> 43560 (+20.72%)
SALU: 4471 -> 4708 (+5.30%); split: -2.75%, +8.05%
VMEM: 2225 -> 2743 (+23.28%)
SMEM: 1662 -> 2273 (+36.76%); split: -0.06%, +36.82%

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35686>
2025-06-24 12:18:47 +00:00
Samuel Pitoiset
dc4be89e7c radeonsi: add a way to override the disk cache key with radeonsi-build-id
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This is similar to radv-build-id which is mainly used on SteamOS for
shaders pre-compilation.

For RadeonSI, it also useful to have this option to force the disk
cache key to be uniq for redistributed shaders accross machines when
it's safe.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35629>
2025-06-24 09:34:50 +00:00
Erik Faye-Lund
2815287f55 panfrost/ci: add new 8x/16x msaa fails on t760
These tests are all failing on t760 after enabling 8x and 16x MSAA.
Let's mark them as expected until the issue has been root-caused.

Acked-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35689>
2025-06-24 08:47:29 +00:00
Erik Faye-Lund
e3c50ddfaf panfrost/ci: explain g52 fails
I already marked these as expected fails on G57, but missed the
corresponding failures on G52 because those were moved to post-merge
while the feature here was in development.

Fixes: 350eccd032 ("Uprev Piglit to a0a27e528f643dfeb785350a1213bfff09681950")
Fixes: 423f3fd485 ("panfrost: enable 8x and 16x msaa modes when supported")
Acked-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35689>
2025-06-24 08:47:29 +00:00
Antonio Ospite
c9a8e1f49a ci/android: get aapt from the build-tools from Google instead of Debian
The aapt package form Debian might not be recent enough to install the
packages from Android CTS.

Resulting in an error like:

```
03:12:09.302: Module(s) with run failure(s):
03:12:09.302:     x86_64 CtsGraphicsTestCases: com.android.tradefed.targetprep.TargetSetupError[AAPT_PARSER_FAILED|520050|DEPENDENCY_ISSUE]: AaptParser failed for file CtsGraphicsTestCases.apk. The APK won't be installed
```

So get aapt from the build-tools matching the ANDROID_SDK_VERSION
corresponding to the Android version and CTS version used in the tests,
to ensure compatibility.

This effectively reverts the changes from commit b3c07fe722
(ci/android: Use aapt from Debian packages, 2025-04-21), but moving the
code around a bit.

The build-tools are not taken as LAVA overlay because LAVA is not able
to handle zip files, and the file in not big enough to be worth any
repacking effort.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35688>
2025-06-24 08:21:18 +00:00
Antonio Ospite
8383d28b44 ci/android: test that all available modules ran in android-cts-runner.sh
If an Android CTS module does not even start the amount of `FAILED`
tests in the invocation summary could still show up as 0, passing the
sanity check on the completion status, and `cts-tradefed` would not
reflect the module-level failure in the return value either.

So explicitly check that all included modules completed and, in case
they didn't, propagate this kind of failure to `EXIT_CODE`.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35688>
2025-06-24 08:21:17 +00:00
Georg Lehmann
a61b564cf5 radv/ci: test VK_NV_cooperative_matrix2
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34793>
2025-06-24 07:14:36 +00:00
Georg Lehmann
8256097c0c radv: advertise VK_NV_cooperative_matrix2/cooperativeMatrixConversions behind an env var
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34793>
2025-06-24 07:14:35 +00:00
Georg Lehmann
249ccc6b4c radv/nir/lower_cmat: implement use conversions/transpose
This could potentially be improved using packed 32bit subgroup ops,
but what we actually care about (gfx12 ACC -> B) is free.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34793>
2025-06-24 07:14:34 +00:00
Georg Lehmann
bdd2c7b9f2 spirv: implement CooperativeMatrixConversionsNV
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34793>
2025-06-24 07:14:34 +00:00
Georg Lehmann
8c4225b99b nir: add cmat_transpose
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34793>
2025-06-24 07:14:34 +00:00
Ryan Mckeever
bba4785f60 pan/format: Add render target support for R8G8B8/B8G8R8 formats
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Add render target support to the existing R8G8B8/B8G8R8 formats
and add the B8G8R8_UNORM format.

Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
6c871b1a7d st/mesa: Support RGB888/BGR888 formats
Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
a4d5012a66 egl/wayland: Support RGB888/BGR888 formats
Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
c86b3e1ae9 egl/wayland: Set EGL_NATIVE_VISUAL_ID for EGLConfig
We want to make sure that EGL doesn't de-duplicate configs with
'identical' properties but different visual IDs. This way clients can
explicitly select which format they want to use (e.g., XRGB vs. RGB).

Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
53a4960f2e gbm/dri: Support RGB888/BGR888 formats
Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
4848fbf774 gallium: Support RGB888/BGR888 formats
Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
1f33be6503 st/mesa: Do not specify PIPE_FORMAT_R8G8B8X8_UNORM twice for RGB
PIPE_FORMAT_R8G8B8X8_UNORM is already the first format in
DEFAULT_RGB_FORMATS, so removing it should make no difference.

Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:48 +00:00
Ryan Mckeever
0cafd65a31 frontend/dri: Replace tabs with spaces
Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
2025-06-24 05:41:47 +00:00
Faith Ekstrand
42097772f9 nil: Improve Tiling and GOBType documentation
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:12 +00:00
Mohamed Ahmed
f0c34f1702 nil/copy: Add Blackwell+ GOB layouts for host copy
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:12 +00:00
Faith Ekstrand
69cd6069c9 nil/copy: Add a simpler CopyGOBLines trait
This lets us implement all the complex logic of copying a GOB in a
central place and all we really need for each GOB type is an iterator
function.  There's a bit of duplication here with the copy functions but
it's still better than what we had before.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:12 +00:00
Mohamed Ahmed
0ad57c169a nil/copy: Rename Copy16B to CopyBytes and add a copy_8b method
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:12 +00:00
Faith Ekstrand
9981227dae nil: Add new GOBTypes for blackwell+
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:11 +00:00
Faith Ekstrand
76e72d63f0 nil: Match on gob types in the tiled image copy code
This depends on GOB types but we really only support Turing for now.
Add the match statement anyway so we panic if we see an unsupported GOB
type instead of pretending it's TuringColor2D and copying anyway.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:11 +00:00
Faith Ekstrand
d8c43ff46a nil: Use GOBType::choose() to pick gob kinds for modifiers
The gob kind and sector layout should map directly to a unique GOBType.
We can now also advertise zero modifiers for GOB types that don't
support modifiers.  Currently this is redundant with the earlier return
for depth/stencil images but it should help protect us in the future
when adding new GOB types.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:11 +00:00
Faith Ekstrand
52b8072040 nil: Add more GOBType enums
We know Turing+ is different because it's different in the NVIDIA
modifiers and because we've implemented host image copies and the
current implementation doesn't work on Volta and earlier.  We also know
that Z/S is different from color and that there's some sort of 3D GOB
concept we haven't reverse engineered yet.  Let's make everything a as
explicit as we can.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35660>
2025-06-24 02:58:10 +00:00
Karol Herbst
0012715b8f rusticl/queue: reuse vector between queue iterations
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
There is no reason not to and this will get rid of some pointless
reallocations.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:43 +00:00
Karol Herbst
4254e13300 rusticl/queue: use let else statement when receiving new events
Gets rid of an unwrap() call.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:43 +00:00
Karol Herbst
513a7ca417 rusticl/queue: do not block when dropping a queue
There is no need for a blocking wait anymore now that event processing
doesn't depend on the queue anymore.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:43 +00:00
Karol Herbst
162ab66c2e rusticl/event: convert queue to Weak reference
This works around applications leaking cl_event references, which
prevented queues to be destroyed and GPU context resources to be freed.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:42 +00:00
Karol Herbst
8291331c43 rusticl/event: check the queue timed to detect enabled profiling in call
Gets rid of an unwrap and the dependency on the queue.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:42 +00:00
Karol Herbst
815373fe62 rusticl/event: change Queue argument to Context in EventSig
Will allow us to drop the strong reference to the queue in events.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:41 +00:00
Karol Herbst
f03f79d9c6 rusticl/queue: signal events directly on panics
This works better than checking if the worker thread still exists. It also
will allow us to turn the Event -> Queue dependency into a Weak one more
easily.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35672>
2025-06-24 01:49:40 +00:00
Lucas Stach
906d4d5dfe etnaviv/ci: update expectation after dither fixes
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Remove the fails that were caused by precision issues when trying
to dither a 4bpc format.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35673>
2025-06-23 23:27:24 +00:00
Lucas Stach
46cb190944 etnaviv: improve dither enable conditions
Take into account the alpha blend state of all render targets when deciding
whether it is okay to enable dithering. Do not dither render targets with
less than 5 bits of precision per channel as this leads to visible artifacts.

GC7000 fails to blend RGBA4444 correctly when dithering is disabled but
PE_LOGIC_OP_DITHER_MODE is set to anything other than 0, so set this state
depending on whether dithering is actually enabled.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35673>
2025-06-23 23:27:24 +00:00
Jesse Natalie
07af41b0a2 microsoft/compiler: Separate 'advanced texture ops' from SM6.7
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35664>
2025-06-23 23:10:15 +00:00
Christian Gmeiner
e64390a056 etnaviv: nir: Move pre-halti5 tex lowering
Let's have all the texture lowerings in one place.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35696>
2025-06-23 22:50:38 +00:00
Yiwei Zhang
84cb568150 vulkan/wsi: drop wsi_common_get_images
..since there's no users of it now.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35702>
2025-06-23 22:05:19 +00:00
Yiwei Zhang
8d8bdd2b1b dozen: drop redundant dzn_swapchain_get_image api
This drops the last usage of wsi_common_get_images.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35702>
2025-06-23 22:05:19 +00:00
David Neto
e9b9f1f764 spirv: spirv-to-c-array: use '-' to specify stdin
The spirv-to-c-array.py script assembles a SPIR-V module,
then disassembles it, capturing that text, then re-assembles
that text, providing it on stdin. But this last invocation of
spirv-as must use '-' to specify that the text input appears
on stdin.

Currently it always errors out, complaining that there must
be exactly one input file.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35691>
2025-06-23 21:24:56 +00:00
Dave Airlie
29c599ffea anv: only expose VK_KHR_cooperative_matrix on devices with hw instructions.
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Currently anv exposes this on lots of devices, with the intent to be better
than apps can give, but I think this is wrong for a couple of reasons.

Apps want to know if hw exposes the fast path, Vulkan is meant to be explicit,
and telling llama.cpp if the fast path exists lets it make smarter decisions.

It seems unless someone heavily optimises the slow path, that CPU is usually
faster than GPU with llama-bench unless the hw path exists.

v2: added INTEL_LOWER_DPAS support

Acked-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35564>
2025-06-23 21:06:51 +00:00
Konstantin Seurer
4cbbdc0a50 vulkan: Pass a structure to most BVH build callbacks
It is annoying to change all function signatures when a driver needs
more information. There are also some callbacks that have a lot of
parameters and there have already been bugs related to that.

This patch tries to clean the interface by adding a struct that contains
all information that might be relevant for the driver and passing that
to most callbacks.

radv changes are:
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>

anv changes are:
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>

turnip changes are:
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>

vulkan runtime changes are:

Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35385>
2025-06-23 20:43:43 +00:00
Konstantin Seurer
a73824a59d vulkan: Remove bvh_state::leaf_node_size
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35385>
2025-06-23 20:43:43 +00:00