On Thu, Aug 20, 2015 at 5:44 AM, Will Green <will_at_sundivenetworks.com> wrote: > Hello, > > I’ve been thinking about CPU performance and power management on FreeBSD recently. As a user it seems like there has been little activity in this area and I wanted to try and understand what the situation was. > > From the publicly available information on powerd [1], the wiki [2] and my attempts to optimize hardware power/performance; it seems the current approach is quite old and laptop-focused. Recent CPU designs can control the state and frequency of individual cores very quickly. In the case of a single heavy thread, a multicore CPU might power-gate all but one core so the active core can be pushed to a higher frequency. This doesn’t seem to be possible on FreeBSD at the moment: powerd is userland (~250 ms poll) and can only control the frequency of all cores together. > > I understand this opens a can of worms as the CPU core states, frequency and scheduler would all need to co-operate. However, I think it’s important that this does happen. Without this functionality FreeBSD is leaving performance on the table and consuming more power than other operating systems. At BSDCan I heard that there was work going on for arm systems, but didn’t manage to get any details and whether it was relevant to amd64 too. > > TIA, > Will > > PS. I was interested to see Intel announce at IDF that they'll be working with open source projects to implement "Speed Shift Technology”, which leaves responsibility for p-state management on the CPU. > > [1] https://www.freebsd.org/cgi/man.cgi?query=powerd > [2] https://wiki.freebsd.org/TuningPowerConsumption Hi Will, There was a working group at BSDCan this year on power management, and what we need to / can do to bring it up to par with the modern world. Unfortunately, I haven't had any time lately to work on it, but you can read the notes at https://wiki.freebsd.org/201506DevSummit/ClockDomains In short, the goal is to add infrastructure to the kernel to support overall power management of the system, scaling beyond cpufreq/powerd. Looking for volunteers who could do some of this, due to my lack of time to work on it. - JustinReceived on Thu Aug 20 2015 - 14:44:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:59 UTC