From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Herrmann Subject: Re: Commit 554c8aa8ecad causing severe performance degression with pcc-cpufreq Date: Tue, 17 Jul 2018 12:18:05 +0200 Message-ID: <20180717101805.ctr3u3vy4gciggw3@suselix> References: <20180717065048.74mmgk4t5utjaa6a@suselix> <20180717085039.kqxwbkgruhj5qxtx@suselix> <20180717091152.l4ixicbp6imvqtsr@suselix> <20180717092721.onkaf3qsu7te6syi@suselix> <20180717093620.ym6phfmr3rfvsxyo@suselix> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Return-path: Content-Disposition: inline In-Reply-To: <20180717093620.ym6phfmr3rfvsxyo@suselix> Sender: linux-kernel-owner@vger.kernel.org To: "Rafael J. Wysocki" Cc: "Rafael J. Wysocki" , Peter Zijlstra , Frederic Weisbecker , Viresh Kumar , Linux PM , Linux Kernel Mailing List List-Id: linux-pm@vger.kernel.org On Tue, Jul 17, 2018 at 11:36:20AM +0200, Andreas Herrmann wrote: > On Tue, Jul 17, 2018 at 11:27:21AM +0200, Andreas Herrmann wrote: > > On Tue, Jul 17, 2018 at 11:23:25AM +0200, Rafael J. Wysocki wrote: > > > On Tue, Jul 17, 2018 at 11:11 AM, Andreas Herrmann wrote: > > > > On Tue, Jul 17, 2018 at 11:06:29AM +0200, Rafael J. Wysocki wrote: > > > >> On Tue, Jul 17, 2018 at 10:50 AM, Andreas Herrmann wrote: > > > >> > > > >> [cut] > > > >> > > > >> > > > > >> > On balance before this commit users could use pcc-cpufreq but had > > > >> > already suboptimal performance (compared to say intel_pstate driver > > > >> > which can be used changing BIOS options). > > > >> > > > >> BTW, I wonder why you need to change the BIOS options for intel_pstate to load. > > > > > > > > I think this is because of (in intel_pstate_init()): > > > > > > > > /* > > > > * The Intel pstate driver will be ignored if the platform > > > > * firmware has its own power management modes. > > > > */ > > > > if (intel_pstate_platform_pwr_mgmt_exists()) > > > > return -ENODEV; > > > > > > > > > > OK, because of the "Proliant" entry, right? > > > > > > So it looks like we have an issue there. We find the entry and we > > > look for _PSS. It is not there, so we assume that the firmware is > > > expected to control performance, which is not the case. > FYI, there is another BIOS setting on those systems. It's called > "Collaborative Power Control" (AFAIK enabled by default). > > Only if this is disabled, firmware is (alone) in control of > performance. (And of course in this case neither pcc-cpufreq nor > intel_pstate will be loaded). To clarify: (i) When "Dynamic Power Savings Mode" is enabled _PSS objects are missing (in fact they seem to be renamed to "XPSS"). pcc-cpufreq driver evaluates PCCH header and loads. Same when "Collaborative Power Control" is disabled. No _PSS but XPSS objects. pcc-cpufreq driver fails to evaluate PCCH header, no cpufreq driver is loaded. (ii) There are _PSS objects when "OS Control Mode" is selected. (But I think when "Collaborative Power Control" is disabled there are no _PSS objects either and the "OS Control Mode" selection does not matter.) > > > It looks like we also should look for the presence of the PCC > > > interface in there. > > > > > > I can provide a patch for that, will you be able to test it? > > > > Yes, I can test it. > > > > > >> It should be initialized before pcc-cpufreq (according to their > > > >> respective initcall levels), so in theory intel_pstate should be used > > > >> by default on the affected systems anyway. > > > > > > > >> What BIOS settings need to be changed for that? > > > > > > > > Already answered in other mail. > > > > > > Indeed. > > > > > > Andreas > >