Messages in this thread | | | Subject | Re: [PATCH 0/4] Add sustainable OPP concept | From | Lukasz Luba <> | Date | Fri, 30 Oct 2020 12:40:42 +0000 |
| |
On 10/30/20 11:17 AM, Viresh Kumar wrote: > On 30-10-20, 10:56, Lukasz Luba wrote: >> IPA tries to do that, even dynamically when e.g. GPU is supper busy >> in 3D games (~2000W) or almost idle showing 2D home screen. >> It tries to find highest 'sustainable' frequencies for the devices, >> at that various workloads and temp. But it needs some coefficients to >> start, which have big impact on the algorithm. It could slow down IPA a >> lot, when those coefficients are calculated based on lowest OPPs. > > I see. So when you say it slows down IPA, what does that really mean ? > IPA isn't performing that accurately during the initial period of > booting (any time estimate here) ? Does it work fine after a time > duration? Or will it suffer for ever ?
The coefficients would stay 'forever', which determine the temp rising slope, until someone change them via sysfs (the: k_po, k_pu, k_i, sustainable_power).
> > And maybe you shouldn't start with the lowest OPPs while you calculate > these coefficients dynamically ? Maybe start from the middle ? As the > sustainable OPP would be something there only or maybe a bit higher > only. But yeah, I don't have any idea about how those coefficients are > calculated so this idea can be simply ignored as well :) > >> My backup plan was to add a flag into EM em_perf_state, extend SCMI perf >> exposing the 'sustained_freq_khz' to scmi-cpufreq, which would set that >> field after registering EM. IPA depends on EM, so should be OK. > > I think at this point (considering the limited number of users (only > IPA) and providers (only SCMI)), it would be better that way only > instead of updating the OPP framework. Of course we can revisit that > if we ever feel that we need a better placeholder for it.
OK, sounds good.
> >>> So only SCMI based platforms will be able to use this stuff ? That's >>> very limited, isn't it ? I think we should still try to make it better >>> for everyone by making the software smarter. It has so much data, the >>> OPPs, the power it will consume (based on microvolt property?), the >>> heat we produce from that (from thermal framework), etc. Perhaps >>> building this information continuously at runtime based on when and >>> how we hit the trip points ? So we know which is the right frequency >>> where we can refrain from hitting the trip points. >> >> IPA works in this way. > > Nice, that's what I thought as well but then got a bit confused with > your patchset. > >>> But may be I am asking too much :( >>> >> >> When you asked for user of this, I gave you instantly. This is one is >> more difficult. I am still not there with IPA tests in LISA. I have some >> out-of-tree kernel driver for testing, which also need polishing before >> can be used with LISA. Then proper workloads with results processing. >> EM for devfreq cooling devices. Then decent 'hot' board running >> preferably mainline kernel. >> What you requested is on my list, but it needs more work, which >> won't be ready over night. > > I can understand what you are trying to do here. And this surely > requires a lot of effort. >
Thank you Viresh for your opinion. I will take the EM approach, please ignore this patch set.
Regards, Lukasz
| |