From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id A9C9C10E607 for ; Tue, 4 Apr 2023 07:59:55 +0000 (UTC) Message-ID: <25b355d0-cd89-f325-ef80-eb063caee083@intel.com> Date: Tue, 4 Apr 2023 10:59:50 +0300 Content-Language: en-US To: Ville Syrjala , References: <20230403174800.19621-1-ville.syrjala@linux.intel.com> From: Lionel Landwerlin In-Reply-To: <20230403174800.19621-1-ville.syrjala@linux.intel.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t 0/3] lib/i915/perf: Speed up the build List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: On 03/04/2023 20:47, Ville Syrjala wrote: > From: Ville Syrjälä > > The perf xml stuff generates terrible C code that is giving > gcc a big headache and leading to disgustingly long build > times. Try to generate a bit more sensible code to speed > up the build. > > Total build time change for the series: > $ ninja -Cbuild clean > $ time ninja -Cbuild > ADL (4+8 cores): > - real 1m18,244s > + real 0m36,695s > VLV (2 cores): > - real 17m29.100s > + real 9m44.268s > > For comparison this is what I get if I skip all the perf xml > files apart from hsw: > ADL: > real 0m20,080s > VLV > real 7m3.045s > > Thinking of further ways to reduce this... There are about a > thousand "Ext" metric sets. Are those *actually* useful or > could we just skip them? That would give us a total build > time of: > ADL: > real 0m24,593s > VLV: > real 8m15.977s > > Cc: Lionel Landwerlin > Cc: Umesh Nerlige Ramappa Reviewed-by: Lionel Landwerlin > > Ville Syrjälä (3): > lib/i915/perf: Stop generating silly C code > lib/i915/perf: Stop making copies of the registers > lib/i915/perf: Convert the metric counters to an array as well > > .../perf-configs/perf-metricset-codegen.py | 81 ++++++++++++++----- > .../perf-configs/perf-registers-codegen.py | 30 +++---- > lib/i915/perf.h | 8 +- > 3 files changed, 78 insertions(+), 41 deletions(-) >