Caio Oliveira
a38960e8f3
brw, nir: Use glsl_base_type instead of nir_alu_type for @dpas_intel
...
This will allow including types that don't have a nir_alu_type
equivalent, like bfloat16.
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:37 +00:00
Caio Oliveira
cf4021f93c
nir: Add opcodes for BFloat16
...
SPV_KHR_bfloat16 requires a small set of operations,
since it doesn't support all the arithmetic ops.
This patch adds conversions to/from Float32 and also
the necessary ops (bfdot, bffma, bfmul) to implement
SpvOpDot using the same lowering approach than the
Float32 counterpart.
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:36 +00:00
Rohan Garg
9e5d7eb88d
compiler/types: add a bfloat16 type
...
Signed-off-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:36 +00:00
Caio Oliveira
ecd2d2cf46
util: Add functions to convert float to/from bfloat16
...
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:36 +00:00
Caio Oliveira
3e0418ba02
intel/executor: Fix bfloat example for converting F to packed BF
...
In float pointing rules adding +0.0f preserves all values except
for -0.0f, so what we want here is to add -0.0f. In the future
we should add proper support for float immediates in the assembler.
Fixes: fafdd24285 ("intel/executor: Update bfloat example")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:36 +00:00
Mary Guillemard
6ab4ae1a19
pan/bi: Properly lower add/sub with saturation on v11+
...
We were wrongly lowering all add/sub operations with saturation on 8-bit
values on v11+.
This fixes CTS failures on
"dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.*" and
likely more apps.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Fixes: d79a31bf81 ("pan/bi: Lower removed instructions in algebraic on v11+")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34743 >
2025-04-29 16:07:19 +00:00
Rhys Perry
20279c28c8
aco/tests: add pseudo-scalar transcendental and fallback path RA tests
...
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/34343 >
2025-04-29 15:15:11 +00:00
Rhys Perry
96e49b7904
aco/ra: add ra_test_policy::use_compact_relocate
...
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/34343 >
2025-04-29 15:15:10 +00:00
Rhys Perry
3c1dbc1d9b
aco/ra: cleanup compact_relocate_vars fallback path
...
We don't need to duplicate these loops.
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/34343 >
2025-04-29 15:15:10 +00:00
Rhys Perry
a780345e01
aco: fix compact_relocate_vars fallback with scc/exec/m0 precolored regs
...
This probably doesn't fix anything in practice. I don't think this path is
ever taken for SGPRs except for pseudo-scalar transcendental instructions,
and those don't have any precolored operands/definitions.
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/34343 >
2025-04-29 15:15:10 +00:00
Rhys Perry
f6581b41c4
aco/ra: don't require alignment for NPOT SGPR temporaries
...
Aligning these can create situations where register allocation is
impossible. Only pseudo-instructions can use these, and they don't require
any alignment.
I'm not sure if these temporaries actually happen in practice. This
probably only affects the get_reg()'s compact_relocate_vars fallback path,
which doesn't usually happen for SGPRs.
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/34343 >
2025-04-29 15:15:10 +00:00
Rhys Perry
623230a6ef
aco/ra: change sorting in compact_relocate_vars
...
D16 MIMG or pseudo-scalar transcendental instructions might give lower
limits to the maximum register available for their definitions, so just
try to place them earlier.
This is also part of fixing compact_relocate_vars with aligned NPOT
def/killed-op space (the second part is the later commit which changes
get_stride()).
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/34343 >
2025-04-29 15:15:10 +00:00
Rob Clark
3f9b8edb1c
ci: Re enable fd-farm
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34748 >
2025-04-29 14:41:35 +00:00
Erik Faye-Lund
87e143b053
docs/features: mark off missing panvk extensions
...
Seems we forgot to check these two off.
Fixes: 5ed79c2d2b ("panvk: Advertise support for VK_KHR_shader_terminate_invocation")
Fixes: d4998f7ff3 ("panvk: Advertise VK_EXT_shader_demote_to_helper_invocation support")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34747 >
2025-04-29 14:35:20 +00:00
Mary Guillemard
f23f8c2826
panvk: Advertise VK_EXT_depth_bias_control
...
This gives more details on the hardware depth bias implementation details.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34745 >
2025-04-29 14:08:37 +00:00
Mary Guillemard
970bdecb50
panvk: Advertise VK_EXT_shader_replicated_composites
...
This is handled by common code.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34745 >
2025-04-29 14:08:36 +00:00
Boris Brezillon
d4998f7ff3
panvk: Advertise VK_EXT_shader_demote_to_helper_invocation support
...
The necessary bits have been added to the bifrost/valhall backend,
so we can advertise support for VK_EXT_shader_demote_to_helper_invocation
now.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34676 >
2025-04-29 13:31:47 +00:00
Boris Brezillon
83cbac00d3
pan/{bi,va}: Lower terminate to demote
...
Bifrost/Valhall implementation is actually close to the demote behavior,
where discarded threads will continue execution until explicitly
terminated.
Given we'll need to support the demote behavior for Vulkan, let's use
nir_lower_terminate_to_demote(), which solves the problem, and allows
for extra dead-code elimination when a termination point is guaranteed
to be taken by all threads.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34676 >
2025-04-29 13:31:47 +00:00
Boris Brezillon
cd4400e27b
pan/bi: Lower is_helper_invocation
...
Needed for VK_EXT_shader_demote_to_helper_invocation.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34676 >
2025-04-29 13:31:47 +00:00
Boris Brezillon
59c307a3f3
pan/bi: Fix and improve the !abs && !coarse case in bi_emit_derivative()
...
The lane source passed to CLPER must be wrap-invariant, and we currently
violate this constraint in the !abs && !coarse case. So let's rework
the code to use a XOR modifier on the current lane instead, and adjust
the sign of the (righ - left) operation afterwards.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34676 >
2025-04-29 13:31:47 +00:00
Boris Brezillon
5ed79c2d2b
panvk: Advertise support for VK_KHR_shader_terminate_invocation
...
This is already supported, we just need to toggle the switch.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34676 >
2025-04-29 13:31:47 +00:00
Alyssa Rosenzweig
5a55133ce7
hk: advertise VK_KHR_shader_quad_control
...
we already support this.
Closes : #13067
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34738 >
2025-04-29 13:14:07 +00:00
Eric Engestrom
ef1792bea8
amd/ci: document regression in e612e840...e210b79c
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34740 >
2025-04-29 11:09:35 +02:00
Eric Engestrom
80b1aea705
amd/ci: disable retry on nightly radeonsi-vangogh-glcts-full job
...
https://gitlab.freedesktop.org/mesa/mesa/-/jobs/75399939 should not have
been retried.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34740 >
2025-04-29 09:01:47 +00:00
Ricardo Garcia
bc44d029df
radv: Ignore image barrier queue families if equal
...
The src and dst queue family indices in an image memory barrier may
contain arbitrary values that can be ignored unless both are different.
This fixes a crash in upcoming CTS tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34691 >
2025-04-29 08:15:28 +00:00
Samuel Pitoiset
1fccc09abe
radv: fix re-emitting VRS state when rendering begins
...
This state also depends on whether a VRS attachment is used.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11693
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34735 >
2025-04-29 07:00:09 +00:00
Eric Engestrom
4227982326
ci: rename misleading *-postmerge stages to *-nightly
...
These stages are for the jobs that are skipped in merge pipelines,
automatically run in nightly pipelines, and are available to run
manually in other pipelines.
None of these ever run in post-merge pipelines.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34590 >
2025-04-29 05:49:00 +00:00
Valentine Burley
26bc35c8f9
ci: Delete the kernel+rootfs jobs
...
LAVA and baremetal now use the test-* containers as the base for their
rootfs.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
13db56320b
ci/baremetal: Use container rootfs
...
Switch baremetal to use the new artifacts from the test-gl and test-vk
containers.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
e16d422da5
ci/baremetal: Split baremetal_arm64_test to -gl and -vk
...
While all the arm32 jobs are testing GL, there are both GL and VK arm64
jobs. This is required to be able to use the rootfs from the test-*
containers.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
a2150a0f56
ci/baremetal: Remove legacy support for unused devices
...
Clean up unused remnants for old devices that are no longer used.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
8296c19817
ci: Add a workaround for finding deqp-runner on Broadcom
...
Broadcom devices require /usr/local/bin to be unconditionally added to
the PATH in order to locate the binaries installed there.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
55e78ef678
ci/lava: Remove job definitions using kernel+rootfs jobs
...
These are all unused now and can be removed.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
10ea0002a6
ci/intel: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
961498a098
ci/svga: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
be79a2d2d3
ci/lima: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
da27eea9e0
ci/etnaviv: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
4f7c40d5d4
ci/panfrost: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
4d2e5f577a
ci/freedreno: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
f8e87fbf50
ci/amd: Convert to using the new container based rootfs
...
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
9870512787
ci/lava: Use the new test-video-based rootfs for VA-API jobs
...
Add new job definitions using the new debian/x86_64-test-video container,
and convert the radeonsi-raven-va and radeonsi-raven-vaapi-fluster jobs
to use the rootfs derived from this container.
Now that we are no longer downloading the Fluster vectors at runtime, the
parallelsim of the radeonsi-raven-vaapi-fluster job can be greatly
decreased.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
a3fb667b1d
ci: Include Fluster vectors in the rootfs
...
Downloading them at runtime proved too slow and unreliable.
Keep the logic to upload the vectors to S3 as it's faster, the build job
takes around 5-10 minutes when downloading from S3, but 30+ minutes to
using Fluster to download the vectors.
Move this to the build-fluster.sh script to allow re-using it in the
test-video container.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
414e1a22c8
ci/container: Add new container for libva and fluster testing
...
The new debian/x86_64_test-video container includes va tools and Fluster.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
751ff1a41e
ci/va: Add /va/bin to PATH for test-video container
...
The test-video container requires /va/bin to be in the PATH to locate
necessary binaries.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
82a25daf9d
ci/va: Collapse build section for va-tools
...
Makes the build job easier to look at.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
8448fbae8c
ci/lava: Move rootfs handling for Fluster out of build script
...
Move the logic for installing Fluster into $ROOTFS from build-fluster.sh
into the main lava_build.sh script.
This allows building Fluster in contexts that don't use a rootfs, such as
test containers.
Also move the section inside the build script.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
e80045d23e
ci/lava: Use the new container based rootfs for piglit traces
...
Also change the name of the job defitions to match the other definitions.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
2e8adb9e98
ci/lava: Use rootfs exported from test-* containers
...
Use the new S3_DISTRIBUTION_TAG variable to find the distribution tag of
the newly created lava-rootfs.tar.zst archive.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
1009613aec
ci/lava: Add job definitions using the test-* containers
...
These definitions use the test-gl and test-vk containers instead of the
kernel+rootfs jobs.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00
Valentine Burley
225ac7f2b2
ci/container: Include SkQP in the test-gl containers
...
Build SkQP in the arm64 and x86_64 test-gl containers.
One of the third party dependencies requires python-is-python3.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451 >
2025-04-28 20:08:32 +00:00