Ian Romanick
b6236dd8f3
intel/brw/xe2+: Adjust DPAS lowering to DP4A to accommodate larger GRF and SIMD16
...
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 14:17:47 -07:00
Ian Romanick
77ef241577
intel/brw/xe2+: Scale size_written by reg_unit for DPAS
...
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 14:17:47 -07:00
Ian Romanick
e368b8e01b
intel/brw/xe2+: Adjust size_read() for DPAS
...
v2: Remov "DG2" from a comment because it applies to DG2 and
Xe2. Suggested by Caio.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 14:17:47 -07:00
Ian Romanick
b051602754
intel/brw/xe2+: Catch invalid uses of writes_accumulator earlier
...
It turns out the problem I was trying to catch in be4fa59a72
("intel/brw: Clear write_accumulator flag when changing the
destination") also came from the DPAS lowering pass itself. Checking for
invalid uses of the feature in fs_validate helped detect the problem.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 14:17:47 -07:00
Ian Romanick
7a773ac53e
intel/brw: Major rework of lower_cmat_load_store
...
The original goal was to get rid of a bunch of the magic constants
sprinkled through the function. Once I did that, I realized that there
was a lot my symmertry between the row-major and column-major paths
possible.
It's +6 lines of code, but about 15 of those lines are comments
explaining things that were not obvious in the original code.
v2: Save duplicated condition in a variable with a meaningful
name. Suggested by Caio.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 14:16:48 -07:00
Ian Romanick
ea6e10c0b2
intel/brw: Temporarily disable result=float16 matrix configs
...
Even though the hardware does not naively support these configurations,
there are many potential benefits to advertising them. These
configurations can theoretically use half the memory bandwidth for loads
and stores. For large matrices, that can be the limiting in performance.
The current implementation, however, has a number of significant
problems.
The conversion from float16 to float32 is performed in the driver during
conversion from NIR. As a result, many common usage patterns end up
doing back-to-back conversions to and from float16 between matrix
multiplications (when the result of one multiplication is used as the
accumulator for the next).
The float16 version of the matrix waste half the possible register
space. Each float16 value sits alone in a dword. This is done so that
the per-invocation slice of an 8x8 float16 result matrix and an 8x8
float32 result matrix will have the same number of elements. This makes
it possible to do straightforward implementations of all the unary_op
type conversions in NIR.
It would be possible to perform N:M element type conversions in the
backend using specialized NIR intrinsics. However, per #10961 , this
would be very, very painful. My hope is that, once a suitable resolution
for that issue can be found, support for these configs can be restored.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28834 >
2024-06-25 13:52:12 -07:00
Juston Li
33dd38f9d5
anv/android: set ANV_BO_ALLOC_EXTERNAL for imported AHW
...
This fixes some cacheline flush artifacts
Signed-off-by: Juston Li <justonli@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29882 >
2024-06-25 20:21:27 +00:00
Daniel Stone
9eeaa4618f
egl/gbm: Enable RGBA configs
...
Doing this is harmless since we operate on an allowlist of pipe_configs
anyway.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29837 >
2024-06-25 19:30:12 +00:00
Daniel Stone
94e15d0f64
egl/surfaceless: Enable RGBA configs
...
Doing this is harmless since we operate on an allowlist of pipe_configs
anyway.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29837 >
2024-06-25 19:30:12 +00:00
Daniel Stone
5ca85d75c0
dri: Fix BGR format exclusion
...
The check we had for BGR vs. RGB formats was testing completely the
wrong thing. Fix it so we can restore the previous set of configs we
expose to the frontend, which also fixes surfaceless platform on s390x.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Fixes: ad0edea53a ("st/dri: Check format properties from format helpers")
Closes : mesa/mesa#11360
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29837 >
2024-06-25 19:30:12 +00:00
Job Noorman
8f2533c356
ir3: set rounding mode for all floating point conversions
...
The rounding mode was only set for a subset of floating point
conversions. This patch sets it for all of them.
Fixes all the dEQP-VK.*.float_controls.* CTS tests.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29843 >
2024-06-25 17:00:59 +00:00
Job Noorman
93db751c63
ir3: print rounding mode for cov
...
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29843 >
2024-06-25 17:00:59 +00:00
Erik Faye-Lund
8c2bfa279d
panvk: support x11 wsi
...
This seems to be enough to get XCB working. From looking at what other
drivers does, it seems likely that XLib will just work, so let's enable
that as well.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29878 >
2024-06-25 15:49:42 +00:00
José Roberto de Souza
2d29dee889
intel/perf: Extend intel_perf_query_result_read_gt_frequency() to gfx 20
...
BSpec 62720 states that the previous and current offsets remains the
same as previous gfx versions.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
José Roberto de Souza
0a6fe638f3
intel/perf: Add INTEL_PERF_QUERY_FIELD_TYPE_SRM_OA_PEC
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
José Roberto de Souza
6e1852981b
intel/perf: Add LNL OA XML
...
Also added pec_offset to struct intel_perf_query_info and two new
hw variables needed by this XML, those changes are required to at
least compile with this new XML.
pec_offset will be set in the next patches.
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
José Roberto de Souza
5b8b4f7878
intel/dev: Add engine_class_supported_count to intel_device_info
...
Next patch will need to frequently get the count of supported engine
for compute and copy engines, so to reduce the overhead of doing
KMD queries at every call here caching this information into
intel_device_info struct.
With that ANV and Iris would need to set this information as intel/dev
can't depend on intel/common, so here adding a single function
to update intel_device_info with all fields filled by intel/common
functions.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
José Roberto de Souza
2f2a0bc083
intel/perf: Add assert to check if allocated enough query fiels
...
Xe2 platforms will have way more query fields and allocation of that
will need to be increased but first lets add a function to return the
max_fields and assert if tried to access more query fields then
allocated.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
José Roberto de Souza
0a51842f7a
intel/perf: Change order of if blocks
...
Most places we follow the newest GFX version first, so doing that
here.
No changes in behavior exepected.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29899 >
2024-06-25 14:16:45 +00:00
Michel Dänzer
2dec0cbe01
egl/dri: Use packed pipe_format
...
This is consistent with __DRI_IMAGE_FORMAT_ARGB8888 and the rest of
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27709 .
This makes no difference with little endian, it does with big endian
though.
Fixes: dcbf61f5df ("egl/dri: Use pipe_format instead of DRI_IMAGE_FORMAT")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29781 >
2024-06-25 12:27:17 +00:00
Erik Faye-Lund
fdd204538b
ci: build docs using meson
...
To avoid having to inflate the image here even further, let's just add
what we need to the the normal x86 Alpine build image, and use that.
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
1e7636fbb1
meson: allow specifying html-docs-path
...
This will allow us to decide where to install docs. Useful for GitLab
Pages on CI.
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
e31dde13d1
meson: error when missing hawkmoth
...
Hawkmoth is a hard depedency, and building without it will lead to
errors. Give a friendly error early on.
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
2063003457
docs: automatically generate depfile
...
We need to regenerate the docs if any of the rst-files are changed. So
let's add a simple extension to generate a depfile, so meson will pick
up any changes needed.
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
c26d4ee44f
meson: build html-docs
...
This allows us to build our Sphinx-based documentation from the meson
build system.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
69809a0384
docs: allow out-of-tree docs build
...
Hawkmoth runs from the build-directory, which makes sense. However, we
set up a bunch of source-relative include paths, which will break if we
don't build in-tree.
Let's make these relative to the source-tree instead. We can deduce the
source-root from the parent directory of the current file.
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
09c1f3b9fd
docs: use os.pardir
...
I'm not really sure if this ever matters in real-life, but os.pardir
exists and we should probably use it instead of hard-coding it to '..'.
Fixes: 67485efd65 ("docs: prepare for hawkmoth")
Reviewed-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11494 >
2024-06-25 10:59:54 +00:00
Erik Faye-Lund
e5f0481351
docs: metadatas -> metadata
...
"Metadata" is already plural, so adding the s at the end is not correct.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
4bb6816d26
docs: pusbuf -> pushbuf
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
372bd9366e
docs: pluggins -> plug-ins
...
The extra 'g' is probably a typo, but we also use a dash to separate
elsewhere, so let's be consistent.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
0945b24df7
docs: acress -> across
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
bc61409192
docs: attachements -> attachments
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
1fdc237e7b
docs: vulkan -> Vulkan
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
b35e574fd0
docs: zink -> Zink
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
c4f64fbf33
docs: debian -> Debian
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
f734a8c73b
docs: undifined behaviour -> undefined behavior
...
The first word is simply a typo. The second is using UK English, but we
usually use US English spelling in the docs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
ad968667b6
docs: precidence -> precedence
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
14df58bf21
docs: occured -> occurred
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
8fbf9bfad3
docs: colour -> color
...
Most of our documentation is US English, so let's stick to that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
ee0157ec1f
docs: Steamos -> SteamOS
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
64ab555051
docs: submision -> submission
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
96cf3fa355
docs: spell out "stencil reference"
...
This is consistent with the wording in the OpenGL spec.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
aa59841b64
docs: renderpass -> render pass
...
This is how it's written in the Vulkan spec, let's follow that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
a98b2f7ee6
docs: gpu -> GPU
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
3090041a21
docs: cpu -> CPU
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
e888049e11
docs: ssbo/ubo -> SSBO/UBO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
14c6c07124
docs: Nvidia -> NVIDIA
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
4342f92c5a
docs: google -> Google
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
d1469294c2
docs: utrace -> trace
...
This is u_trace, not utrace. But it's clear from context that a "trace
marker" here means an u_trace marker, so let's just remove the needless
"u"-prefix.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00
Erik Faye-Lund
60f78b2d00
docs: remove apostrophe from uppercased
...
According to the Merriam-Webster Dictionary, this is the correct way
to spell this word.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29879 >
2024-06-25 10:51:27 +00:00