Switch from tgl to adl, sees one particular media decode pipeline fit into a single vcs engine on adl, whereas it took two on tgl. However, it was observed that the power consumtpion for adl remained higher than for tgl. One contibution is that each engine is treated individually for rps evaluation, another is that it appears that we prefer to avoid low frequencies (with no rc6) and use slightly higher frequencies (with lots of rc6). So let's try tweaking the balancer to smear busy virtual contexts across multiple engines (trying to make adl look more like tgl), and tweak the rps evaluation to "race to idle" harder. Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx> Cc: Vinay Belgaumkar <vinay.belgaumkar@xxxxxxxxx> Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> Chris Wilson (3): drm/i915/gt: Spread virtual engines over idle engines drm/i915/gt: Compare average group occupancy for RPS evaluation drm/i915/gt: Improve "race-to-idle" at low frequencies .../drm/i915/gt/intel_execlists_submission.c | 80 ++++++++++++------- drivers/gpu/drm/i915/gt/intel_rps.c | 79 +++++++++++++----- 2 files changed, 112 insertions(+), 47 deletions(-) -- 2.34.0