On 1 Apr 2014, at 08:11, Jordan Hubbard <j...@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’s 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.
firstname.lastname@example.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"