Skip to content

intel/perf: Reduce code size

Matt Turner requested to merge mattst88/mesa:intel-perf-size into main

This series implements a number of code size optimizations for the intel/perf query code.

It cuts 725 KiB from iris_dri.so (4.8%) and libvulkan_intel.so (8.3%). It reduces the size of meson-generated_.._intel_perf_metrics.c.o by 48%.

   text    data     bss     dec     hex filename
1538720       0       0 1538720  177aa0 meson-generated_.._intel_perf_metrics.c.o (before)
 796986       0       0  796986   c293a meson-generated_.._intel_perf_metrics.c.o (after)

   text    data     bss     dec     hex filename
14751700 365708  210004 15327412 e9e0b4 iris_dri.so (before)
14009332 365708  210004 14585044 de8cd4 iris_dri.so (after)

   text    data     bss     dec     hex filename
8744913  214264   22820 8981997  890ded libvulkan_intel.so (before)
8002609  214264   22820 8239693  7dba4d libvulkan_intel.so (after)

I suspect, but did not confirm, that it improves compile tiles of the generated source file src/intel/perf/intel_perf_metrics.c because the file's size drops from 248951 lines, ~12 MiB to 136143 lines, ~6.1 MiB (both down ~45%).

Fixes: #4899 (closed) Fixes: #5700 (closed)

cc: @anholt, @llandwerlin

Edited by Matt Turner

Merge request reports