Matthew Garrett: Power management and graphics
It's the X Development Summit in Edinburgh this week, so I've been hanging out with the graphics crowd. There hasn't been a huge amount of work done in the field of power management in graphics so far - Intel have framebuffer compression and there's the lvds reclocking patch I wrote (I've cleaned this up somewhat since then, but it probably wants some refactoring to avoid increasing CPU usage based on its use of damage for update notifications). That still leaves us with some fun things to look at, though.The most obvious issue is the gpu clock. Intel's chipset implements clock gating, where unused sections of chip automatically unclock themselves. This is pleasingly transparent to the OS, and we get power savings without any complexity we have to care about. However, there's no way to control the core clock of the GPU - it's part of the northbridge and fiddling with the clocking of that would be likely to upset things. Nvidia and Radeon hardware is more interesting in this respect, since we can control the gpu clock independently of anything else. The problem is trying to do so in a reasonable way.
In an ideal universe, we can change these clock frequencies quickly and without any visual artifacts. That way it's possible to leave it in the lowest state and clock it up as load develops. There's a couple of problems with this - non ideal hardware, and the software in the first place. Jerome's been testing a little on Radeon and discovered that changing the memory clock through Atom results in visual corruption. It's conceivable that this is due to some memory transaction cycles getting corrupted as the clock gets changed. If we could ensure that the reclock happens during the vertical blank interval, that's something that could potentially be avoided (of course, then we have the entertainment of working out when the vertical blank interval actually is when you have a dual head output...). The other problem is that 3D software tends to consume as many resources as are available. Games will produce as many frames per second as possible. Demand-based clocking will simply ramp the gpu to full speed in that situation, which isn't necessarily what you want in the battery case (as the number of frames per second goes up, so does the cpu usage - even more power draw) but is probably pretty reasonable in the powered case.
Handwavy testing suggests that this can save a pretty significant amount of power, so it's something that I'm planning on working on. Further optimisations include things like making sure that we're not running any PLLs that aren't being used at the time (oscillators chew power), not powering up output ports when you're not outputting to them and enabling any hardware-level features that we're currently ignoring. And, ideally, doing all of this without causing the machine to hang on a regular basis.
I recently announced that German and French reached 100% completion in
unstable for po-debconf translations (by the way, both are now 100% in
lenny as well).
However, l10n efforts also happen for many languages in that area, so it's time to highlight them as well:
Some time ago I wrote a small shell script that counted the number of dependencies of each package. It used to take lots of time to perform such a simple operation, so today I decided to rewrite it from scratch in perl and even made it able to sort the packages according to the number of pre-/dependencies.
I’ve been seeing a bit about Canada recently, what with plastic-bottled water (more on that next month), the airline I used for my last trip (Zoom) going bust and stranding passengers and being a fan of
While sitting on a bench in Hyde Park, watching the leaves fall from the trees, thinking that fall is just around the corner, I started to write on the back of an old receipt. One that says 108,- for a Banana Passion Split and a bottle of Coca Cola. It’s just something I do when I’m nervous, excited, lonely, happy or all of the above.
Sometimes I spend so long thinking about how to express myself, that I forget what I was going to write. I spend too long trying to find the right adjectives. And I wish I could find the right words to describe some of the best moments. My trip to London was more than just Big Ben, The London Eye, Madame Tussauds and Oxford Street. A lot more.
Another receipt says 590,- for a haircut. It’s from July 15th, 2008. My ramblings on the back, blue ink, some words crossed out, some misspelled; at least 1 of the 268 Underground stations has a staircase with 78 steps, a shop on Oxford Street sells salt from the Dead Sea, and some very big soap bubbles were seen in Camden Town.
There are some keywords at the bottom of the second receipt. Just to remember all the other things that happened. Like the time we almost got lost on the Underground, the elevator with no buttons, the Kanye West sunglasses in white and pink, and the lack of a proper breakfast - even though I don’t mind white bread and strawberry jam.
There was just one small thing I wasn’t too happy about; you can’t write on receipts from Tesco. They have THANK YOU FOR SHOPPING WITH US printed all over it. And it took me a while to find that piece of paper in my bag. This time I saw fall in London, and a white pigeon. I will make sure I have my notebook with me next time.

Back from Argentina, back from DebConf. As always, the ~3 weeks I spent there were really great, in as many fronts as I can imagine or describe. But I won't go into that now - For the purposes of this posting, the single thing that I got out of DebConf was looking with envy at all the people that had something that used to be called a sub-notebook some time ago, and now morphed into the more modern(?) name netbook.
The current method of patching into place a series of ./configure variables as $(DEB_HOST_GNU_TYPE).cache files is becoming a pain - it
Sorry, ever since Debconf I've been busy, ill and otherwise
distracted. I'm still catching up... Stuff that's happened:
Dude, you're married! For the second year running,
I had to leave Debconf a day early to attend a wedding party. My good
friend Matthew married Oxana last Monday. I've just put my
As I start this blog post, I'm on the train between Amersfoort and
Osnabr ck, on my way to Kiel, where there'll be a meeting of the m68k
porters, kindly organized by m68k kernel maintainer Christian Steigies.
I took the 8:40 train in Mechelen this morning, and if all goes well,
I'll be arriving in Kiel at 17:22 tonight. Some train trip... but I
certainly prefer that to any flight.
Anyway. The days of Debconf were very nice. Debconf is a lot
of things to me. Travel. Hacking. Mao, evolving into a drinking game.
Beer. Attending talks. Giving talks. Meeting people.
Face-to-face non-flaming. Gesturing for an extra knife at luunch.
Hangover. Whiskey. Talking to the person next to you—over IRC.
Getting killed before knowing what the rules of the assassins game are.
Filing bugreports in person. 