On 03/15/2016 03:37 PM, Michael Turquette wrote: >>>> Yuck sysfs.. I would really rather we did not expose this per default. >>>> > > > And certainly not in this weird form. >>> > > >>> > > I'm happy to change capacity_margin to up_threshold and use a >>> > > percentage. >>> > > >>> > > The sysfs approach has two benefits. First, it is aligned with cpufreq >>> > > user expectations. Second, there has been rough consensus that this >>> > > value should be tunable and sysfs gets us there quickly and painlessly. >>> > > We're already exporting rate_limit_us for schedutil via sysfs. Is there >>> > > a better way interface you can recommend? >> > >> > It really depends on how tunable you want this to be. Do we always want >> > this to be a tunable, or just now while we're playing about with the >> > whole thing? > > I had considered this myself, and I really think that Steve and Juri > should chime in as they have spent more time tuning and running the > numbers. > > I'm inclined to think that a debug version would be good enough, as I > don't imagine this value being changed at run-time by some userspace > daemon or something. > > Then again, maybe this knob will be part of the mythical > power-vs-performance slider?
Patrick Bellasi's schedtune series [0] (which I think is the referenced mythical slider) aims to provide a more sophisticated interface for tuning scheduler-driven frequency selection. In addition to a global boost value it includes a cgroup controller as well for per-task tuning. I would definitely expect the margin/boost value to be modified at runtime, for example if the battery is running low, or the user wants 100% performance for a while, or the userspace framework wants to temporarily tailor the performance level for a particular set of tasks, etc. [0] http://article.gmane.org/gmane.linux.kernel/2022959