mesa/src/intel
Ian Romanick 572e00dd66 intel/brw: Copy prop from raw integer moves with mismatched types
The specific pattern from the unit test was observed in ray tracing
trampoline shaders.

v2: Refactor the is_raw_move tests out to a utility function. Suggested
by Ken.

v3: Fix a regression caused by being too picky about source
modifiers. This was introduced somewhere between when I did initial
shader-db runs an v2.

v4: Fix typo in comment. Noticed by Caio.

shader-db:

All Intel platforms had similar results. (Meteor Lake shown)
total instructions in shared programs: 19734086 -> 19733997 (<.01%)
instructions in affected programs: 135388 -> 135299 (-0.07%)
helped: 76 / HURT: 2

total cycles in shared programs: 916290451 -> 916264968 (<.01%)
cycles in affected programs: 41046002 -> 41020519 (-0.06%)
helped: 32 / HURT: 29

fossil-db:

Meteor Lake, DG2, and Skylake had similar results. (Meteor Lake shown)
Totals:
Instrs: 151531355 -> 151513669 (-0.01%); split: -0.01%, +0.00%
Cycle count: 17209372399 -> 17208178205 (-0.01%); split: -0.01%, +0.00%
Max live registers: 32016490 -> 32016493 (+0.00%)

Totals from 17361 (2.75% of 630198) affected shaders:
Instrs: 2642048 -> 2624362 (-0.67%); split: -0.67%, +0.00%
Cycle count: 79803066 -> 78608872 (-1.50%); split: -1.75%, +0.25%
Max live registers: 421668 -> 421671 (+0.00%)

Tiger Lake and Ice Lake had similar results. (Tiger Lake shown)
Totals:
Instrs: 149995644 -> 149977326 (-0.01%); split: -0.01%, +0.00%
Cycle count: 15567293770 -> 15566524840 (-0.00%); split: -0.02%, +0.01%
Spill count: 61241 -> 61238 (-0.00%)
Fill count: 107304 -> 107301 (-0.00%)
Max live registers: 31993109 -> 31993112 (+0.00%)

Totals from 17813 (2.83% of 629912) affected shaders:
Instrs: 3738236 -> 3719918 (-0.49%); split: -0.49%, +0.00%
Cycle count: 4251157049 -> 4250388119 (-0.02%); split: -0.06%, +0.04%
Spill count: 28268 -> 28265 (-0.01%)
Fill count: 50377 -> 50374 (-0.01%)
Max live registers: 470648 -> 470651 (+0.00%)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30251>
2024-08-30 03:39:31 +00:00
..
blorp intel: Support any depth fast-clear value on Xe2 2024-08-27 06:15:36 +00:00
ci ci/intel: add i915/MTL firmware to rootfs 2024-08-28 04:31:10 +00:00
common intel: Remove INTEL_ENGINE_CLASS_COMPUTE and INTEL_ENGINE_CLASS_COPY parameters 2024-08-13 21:15:31 +00:00
compiler intel/brw: Copy prop from raw integer moves with mismatched types 2024-08-30 03:39:31 +00:00
decoder intel/decoder: Handle HCP_PAK_INSERT_OBJECT 2024-08-02 07:15:59 +00:00
dev intel/dev: update mesa_defs.json from workaround database 2024-08-14 11:20:40 +00:00
ds anv/hasvk: add indirect tracepoint arguments 2024-08-03 16:03:04 +03:00
executor intel/brw: Use %td format for pointer difference 2024-08-14 17:28:41 -07:00
genxml anv,iris: prefix the argument format with XI for a upcoming refactor 2024-08-20 09:41:51 +00:00
isl isl: don't assert(num_elements > (1ull << 27)) 2024-08-27 05:47:50 +00:00
nullhw-layer build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
perf intel/dev: Support new topology type with SIMD16 EUs 2024-08-05 07:01:47 -07:00
shaders meson: use glslang --depfile argument when possible 2024-05-20 17:34:17 +00:00
tools build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
vulkan anv: fix utrace compute timestamp reads on Gfx20 2024-08-29 20:10:11 +00:00
vulkan_hasvk vulkan: Take a VkPipelineCreateFlags2KHR in vk_pipeline_*shader_stage*() 2024-08-29 03:30:31 +00:00
meson.build intel: Add executor tool 2024-08-14 03:03:46 +00:00