Received: by 2002:a05:7412:2a8a:b0:fc:a2b0:25d7 with SMTP id u10csp215702rdh; Wed, 7 Feb 2024 02:39:03 -0800 (PST) X-Google-Smtp-Source: AGHT+IHBMe+OV6YGtXpqv3218kjLFifpt5SZRl50OR+Ldu9A7GvFOJ6InMBMl9mepfWrPD7K4ga6 X-Received: by 2002:a17:902:bb17:b0:1d8:e64d:cd5e with SMTP id im23-20020a170902bb1700b001d8e64dcd5emr3975746plb.39.1707302343594; Wed, 07 Feb 2024 02:39:03 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707302343; cv=pass; d=google.com; s=arc-20160816; b=omhGoJEYHEW8cpKvKveLx8qt1N3VwYcZEwgnI70DC/D+zNOuqBFt+f9c8GA5KPULar /1cJm2CgUhBoICkQKFWIutEW6sIISMBxHoxxWAS5jYZoR9O7yRcWJou9OMkI/LcplDju Ejl8D0MCqyCgB6nj0YJwW943uh9+D6LG6gkBgtqiA6aCoRQn899l2DqKzzWmcIN96rw0 vkGq4SAyeqI7GlThx26DQWJaOtnEU3J7P2VIujbb/+Yd0x/ZG6gNKUaOH1ckjzN+kVRv 5/4jO4YP1KAz4uAwjWB2PUZbNvvvHvID+Y9sVKLm5vvsvz1ZA9soUu2roWACUjwo1cTA 4l1A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence; bh=n5+EowyRiZdMJIElOQsxYtkfwJqzskK9PAiJ97COOrw=; fh=MBAfCKBn3VaMCpg5DfF4GFr3jgNuqON2B2T9KDKvlnQ=; b=BmRdNbMYXIdgyZE0PIaIL4ZLNsr+C8UEoI8QC1GhkY2+eOU6EwavKfOxewUD2llRKQ DrYLOw2XPxV0uqOfAUxI1jeoNquRjqfhKLommQIf6ItaJShj4iAcDOThUaW+8ZWs8zAn UB9UBXV9pOvDYhvhw5g4BvAmWdsbTeqkDYTNgr/aYDY+OxHHX8rEsa4hx3bSVLA3HCLA cydY1pwai+MbnCXw1xsaK1yWONuHgRwZgphTNq5FdrOVeSteqprYpLnYpgxqPP/vHmnV CLo3PobV2H65jfsf98s2bDnW3b70TwfXY1gVjY+nraInHExF8ipU6f3aySk5vywc2kV7 4DPA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1 spf=pass spfdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-56324-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-56324-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org X-Forwarded-Encrypted: i=2; AJvYcCXgwhGC6h6R7Q0RaZWeBJ7Z85pEQ0VN4nchZD+t3roV9qEcOJXd6nZAEqR5W1LUkUQQep149aXNCOELj6nKJP721xB0Jg4wqZLVUSoe/A== Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id iw3-20020a170903044300b001d9727a7422si1219667plb.650.2024.02.07.02.39.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Feb 2024 02:39:03 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-56324-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; arc=pass (i=1 spf=pass spfdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-56324-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-56324-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 5C6DE2889EB for ; Wed, 7 Feb 2024 10:32:13 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id A070A14280; Wed, 7 Feb 2024 10:32:08 +0000 (UTC) Received: from mail-ot1-f41.google.com (mail-ot1-f41.google.com [209.85.210.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 92FE11426E; Wed, 7 Feb 2024 10:32:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.41 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707301928; cv=none; b=h402IQFYays2SVxseuCOBExmdKoWsEUlFa4ca3mvE7j8pGcHemQwmBjTg0/Klw6nRvIWIwmaq0VhvXWV7WOiJ0ULS1pT0QKhp3gTi3ifhCdA0XpsW0DvVF1vYK2LtBqnsZb9q1Qt8lmxwZ9OWibCuTr1zXnvmLd9V99Ui74A3Q4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707301928; c=relaxed/simple; bh=1XKEolIsIp/5hVeT4bPe0rZg6lLF8aMKSVIINjLWPeg=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=DILIGOB7seEyhJ7E5y3RVgBIMfildd0d4xodijZEkBs7dED3yhM0O8KRYScIP0F64AjfzV01EMCd0em07/ITZf9o0EMVp24an+QFEaGkqbc13mkfkLjf0AUttQHAgXsZUHfQl9wEkcALeRVMCa0y5TCE4QEcYBDpHcDLOCmHVRY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org; spf=pass smtp.mailfrom=gmail.com; arc=none smtp.client-ip=209.85.210.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ot1-f41.google.com with SMTP id 46e09a7af769-6e2b466d213so107965a34.0; Wed, 07 Feb 2024 02:32:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707301925; x=1707906725; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=n5+EowyRiZdMJIElOQsxYtkfwJqzskK9PAiJ97COOrw=; b=Cyv7sFy71h2+Y96hOPy1+i0a+zWmVm1nACIXQQzJ5idtV8HttZ+ImM5eTpOKDe0YM4 QU1Cxq2DPnD1+uZ6O8oWcMAe0l+NWeiT5vzAbnhXBgCRfy/o7OGnxGcLhniAOWnaBeg6 4EzVG1UaMzx4CQKD8kAPZeysNB16pCHJPwHgzqT7usfs3Yv3qjLO+Kk4cAs8/SMg4eNO oqJbZf8mjFe9W+usdz2VYQmrk3qn+OhZhxL74c0+WcH4T5hvHMHAXnWe9Ejwk2CnjP/8 xvT+gRRGqCDUEHrW389vNIvrj8f8RjXMZEUqpz6XpB/IysZWEpZcg2FfKnRMTig1Wk4x Li0Q== X-Gm-Message-State: AOJu0YzyUR4kKWlf9/o8y7fMY2IWuiEhAMbzOibRgpInMLsx04R9G8Ti vtw0ppSXFV38xhwTfGkW4f31fCb2GvyAOhsF47yoixtlaqqaNdnAynyXDCwvgWyRSKXDs4pDk/g 6C1oJGnVDCnKpPfTex6czja4oApE= X-Received: by 2002:a05:6820:405:b0:59a:bfb:f556 with SMTP id o5-20020a056820040500b0059a0bfbf556mr5255066oou.0.1707301925587; Wed, 07 Feb 2024 02:32:05 -0800 (PST) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240117095714.1524808-1-lukasz.luba@arm.com> <5a38043f-6de3-4038-b1d9-314090e7b44e@arm.com> In-Reply-To: <5a38043f-6de3-4038-b1d9-314090e7b44e@arm.com> From: "Rafael J. Wysocki" Date: Wed, 7 Feb 2024 11:31:53 +0100 Message-ID: Subject: Re: [PATCH v7 00/23] Introduce runtime modifiable Energy Model To: Lukasz Luba Cc: rafael@kernel.org, dietmar.eggemann@arm.com, linux-pm@vger.kernel.org, rui.zhang@intel.com, amit.kucheria@verdurent.com, amit.kachhap@gmail.com, daniel.lezcano@linaro.org, viresh.kumar@linaro.org, len.brown@intel.com, pavel@ucw.cz, mhiramat@kernel.org, qyousef@layalina.io, linux-kernel@vger.kernel.org, wvw@google.com, xuewen.yan94@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Lukasz, On Wed, Feb 7, 2024 at 10:15=E2=80=AFAM Lukasz Luba w= rote: > > Hi Rafael, > > On 1/17/24 09:56, Lukasz Luba wrote: > > Hi all, > > > > This patch set adds a new feature which allows to modify Energy Model (= EM) > > power values at runtime. It will allow to better reflect power model of > > a recent SoCs and silicon. Different characteristics of the power usage > > can be leveraged and thus better decisions made during task placement i= n EAS. > > > > [snip] > > > > > > > Lukasz Luba (23): > > PM: EM: Add missing newline for the message log > > PM: EM: Extend em_cpufreq_update_efficiencies() argument list > > PM: EM: Find first CPU active while updating OPP efficiency > > PM: EM: Refactor em_pd_get_efficient_state() to be more flexible > > PM: EM: Introduce em_compute_costs() > > PM: EM: Check if the get_cost() callback is present in > > em_compute_costs() > > PM: EM: Split the allocation and initialization of the EM table > > PM: EM: Introduce runtime modifiable table > > PM: EM: Use runtime modified EM for CPUs energy estimation in EAS > > PM: EM: Add functions for memory allocations for new EM tables > > PM: EM: Introduce em_dev_update_perf_domain() for EM updates > > PM: EM: Add em_perf_state_from_pd() to get performance states table > > PM: EM: Add performance field to struct em_perf_state and optimize > > PM: EM: Support late CPUs booting and capacity adjustment > > PM: EM: Optimize em_cpu_energy() and remove division > > powercap/dtpm_cpu: Use new Energy Model interface to get table > > powercap/dtpm_devfreq: Use new Energy Model interface to get table > > drivers/thermal/cpufreq_cooling: Use new Energy Model interface > > drivers/thermal/devfreq_cooling: Use new Energy Model interface > > PM: EM: Change debugfs configuration to use runtime EM table data > > PM: EM: Remove old table > > PM: EM: Add em_dev_compute_costs() > > Documentation: EM: Update with runtime modification design > > > > Documentation/power/energy-model.rst | 183 ++++++++++- > > drivers/powercap/dtpm_cpu.c | 39 ++- > > drivers/powercap/dtpm_devfreq.c | 34 +- > > drivers/thermal/cpufreq_cooling.c | 45 ++- > > drivers/thermal/devfreq_cooling.c | 49 ++- > > include/linux/energy_model.h | 165 ++++++---- > > kernel/power/energy_model.c | 472 +++++++++++++++++++++++---= - > > 7 files changed, 819 insertions(+), 168 deletions(-) > > > > The patch set went through decent review. If you don't have any issues, > I will collect the tags and send the v8 which will be re-based on some > recent linux next (or please tell me your preferred branch). Blease base it on 6.8-rc3.