Date: Tue, 1 Apr 2014 08:38:28 +0100 From: David Chisnall <theraven@FreeBSD.org> To: Jordan Hubbard <jkh@mail.turbofuzz.com> Cc: Eitan Adler <lists@eitanadler.com>, hackers@freebsd.org, current@freebsd.org, freebsd-advocacy@freebsd.org Subject: Re: Leaving the Desktop Market Message-ID: <3F7430D7-3C0F-43E1-8EBD-8AA4F701497C@FreeBSD.org> In-Reply-To: <A70900DF-4BAA-427F-8731-01211FFD1887@mail.turbofuzz.com> References: <CAF6rxgkeBozvfV-L0%2BrFZ6fWRn0=Gi3BNq1kPL=-HTq0TD6MkQ@mail.gmail.com> <A70900DF-4BAA-427F-8731-01211FFD1887@mail.turbofuzz.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 1 Apr 2014, at 08:11, Jordan Hubbard <jkh@mail.turbofuzz.com> wrote: > 1. Power. As you point out, being truly power efficient is a complete = top-to-bottom engineering effort and it takes a lot more than just = trying to idle the processor whenever possible to achieve that. You = need to optimize all of the hot-spot routines in the system for power = efficiency (which actually involves a fair amount of micro architecture = knowledge), you need a kernel scheduler that is power management aware, = you need a process management system that runs as few things as possible = and knows how to schedule things during package wake-up intervals, you = need timers to be coalesced at the level where applications consume = them, the list just goes on and on. It=92s a lot of engineering work, = and to drive that work you also need a lot of telemetry data and people = with big sticks running around hitting people who write = power-inefficient code. FreeBSD has neither. Just a small note here: Improving power management is something that the = Core Team and the Foundation have jointly identified as an important = goal, in particular for mobile / embedded scenarios. We're currently = coordinating potential sponsors for the work and soliciting proposals = from people interested in doing the work. If you know of anyone in = either category then please drop either me, core, or the Foundation an = email. Some things have already seen progress, for example Davide's calloutng = work includes timer coalescing, but there are still a lot of, uh, = opportunities for improvement. The Symbian EKA2 book has some very = interesting detail on their power management infrastructure, which would = be worth looking at for anyone interested in working on this, and I = believe your former employer had some expertise in this area. Of course, no matter how good the base system becomes at power = management, we still can't prevent stuff in ports running idle = spinloops. We can, however, provide tools that encourage = power-efficient design. For example, currently hald wakes up every 30 = seconds and polls the optical drive if you have one. Why? Because = there's no devd event when a CD is inserted, so the only way for it to = get these notifications is polling. If you have a laptop with an = optical drive, this is really bad for power usage. =20 David
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3F7430D7-3C0F-43E1-8EBD-8AA4F701497C>