mesa/src/intel
Nanley Chery ee6e2bc4a3 anv: Place images into the aux-map when safe to do so
At image bind time, if an image's addresses can be placed into the
aux-map without causing conflicts with a pre-existing mapping, do so.
The code aux management code in the binding function operates on a
per-plane basis. So, use the per-plane CCS memory range from the image
rather than the CCS memory region for the entire BO.

Another way to avoid aux-map conflicts is to rely solely on having a
dedicated allocation for an image. Unfortunately, not all workloads
change their behavior when drivers report a preference for dedicated
allocations. In particular, 3DMark Wild Life Extreme does not make more
dedicated allocations and such a solution was measured to perform ~16%
worse than this solution. With this solution, I did not measure a loss
of CCS on that benchmark.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6304
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (v1)
Reviewed-by: Jianxun Zhang <jianxun.zhang@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25003>
2023-10-23 21:37:24 +00:00
..
blorp blorp: Use the correct miptail start LOD for surfaces 2023-10-13 21:58:59 +00:00
ci anv: uninitialize queues before utrace 2023-10-19 09:45:36 +00:00
common intel: Return a bool from intel_aux_map_add_mapping 2023-10-23 21:37:24 +00:00
compiler intel-clc: avoid using spirv-linker. 2023-10-17 13:53:52 +10:00
dev intel: Sync xe_drm.h 2023-09-13 16:38:15 +00:00
ds intel/ds: provide names for different events of a timeline's row 2023-10-17 11:19:13 +00:00
genxml anv: enable FCV for Gen12.5 2023-10-11 12:18:15 +00:00
isl isl: Use 16-bit instead of 8-bits for surface format info fields 2023-10-02 17:24:33 +00:00
nullhw-layer meson: support installation tags 2023-09-11 13:00:45 +00:00
perf intel: Move i915_drm.h specific code from common/intel_gem.h to common/i915/intel_gem.h 2023-07-28 15:36:52 +00:00
tools intel/common: Move intel_clflush.h to intel_mem.h/intel_mem.c 2023-09-06 01:39:53 +00:00
vulkan anv: Place images into the aux-map when safe to do so 2023-10-23 21:37:24 +00:00
vulkan_hasvk hasvk: Use the common GetPhysicalDeviceFeatures2 implementation 2023-09-27 23:02:29 +00:00
meson.build intel: Only build perf if drivers or tools are enabled 2023-08-31 21:53:19 +00:00