Date: Thu, 20 Aug 2015 09:44:23 -0700 From: Justin Hibbits <jrh29@alumni.cwru.edu> To: Will Green <will@sundivenetworks.com> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: CPU Perf & Power Mgt Message-ID: <CAHSQbTDoTRU27fU_ZGf3cHzdkqP85FH3P6fLwcQzAY_rEVcEyQ@mail.gmail.com> In-Reply-To: <7B1D7A3F-DA20-4195-8228-7D3F07790B5C@sundivenetworks.com> References: <7B1D7A3F-DA20-4195-8228-7D3F07790B5C@sundivenetworks.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Aug 20, 2015 at 5:44 AM, Will Green <will@sundivenetworks.com> wrot= e: > Hello, > > I=E2=80=99ve 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 m= y attempts to optimize hardware power/performance; it seems the current app= roach is quite old and laptop-focused. Recent CPU designs can control the s= tate and frequency of individual cores very quickly. In the case of a singl= e heavy thread, a multicore CPU might power-gate all but one core so the ac= tive core can be pushed to a higher frequency. This doesn=E2=80=99t seem to= be possible on FreeBSD at the moment: powerd is userland (~250 ms poll) an= d 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=E2=80=99s i= mportant that this does happen. Without this functionality FreeBSD is leavi= ng performance on the table and consuming more power than other operating s= ystems. At BSDCan I heard that there was work going on for arm systems, but= didn=E2=80=99t manage to get any details and whether it was relevant to am= d64 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=E2=80=9D, w= hich leaves responsibility for p-state management on the CPU. > > [1] https://www.freebsd.org/cgi/man.cgi?query=3Dpowerd > [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. - Justin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAHSQbTDoTRU27fU_ZGf3cHzdkqP85FH3P6fLwcQzAY_rEVcEyQ>