The PowerPC and the PHPassion: LCA Presentations Day 1 Afternoon

Lunch: Spent so much time editing the morning’s post, didn’t get to eat, and then went to two wrong theatres and missed the start of the 32/64 comparison with x86 and Power by Olof Johansson. And they were out of pies so I bought sushi instead…

The 32/64 bit presentation was interesting. I’d seen discussion on Debian-Devel along the lines that PPC64 is slower than PPC, and therefore a pure 64-bit Debian port (ala. AMD64 port) was a poor idea (as opposed to AMD64). Olof presented benchmarks (which supported this) as well as a discussion of the way the both x86 and PPC’s ABI’s differ between 32 and 64 bits. It seems that the PPC64 ABI has actually added more overhead to function calls, and hasn’t taken advantage of an ABI change to improve existing issues, while x86_64 has actually used the ABI change to make more use of CPU registers to improve function calls significantly.

An audience member mentioned that newer toolchains than those tested use a different function-call structure or something and should be more efficient. So maybe PPC64’s problems aren’t insurmountable. Mind you, PPC64 does seem to be mainly targetted at specific applications, rather than overall system support ala x86_64… I wonder how MacOS X on G5 does it? I presume its a 32-bit userland from this…

Following on neatly there’s a PPC presentation on next from Paul Mackerras… I wonder if this issue will be addressed then too?

Either way, it was a quick session, and happily I was _just_ able to follow the stuff that was going on and the following audience discussion… ^_^

And the short session meant I got to eat my sushi before the next presentation

Paul Mackerras (Paulus)’s presentation on Recent Developments in PowerPC

Merging 32-bit ppc and 64-bit ppc64 architectures in the Linux kernel: Lots of duplicate code, ensures both architectures benefit from features, cleanups, bugfixes and drivers etc. So instead, there’s one architecture powerpc which is now the default arch.

This explains why recently building kernel modules on my PowerBook G4 failed, unless I prefixed the make with ARCH=ppc… >_< I noticed rene’s bcm43xx packages did the same thing in debian/rules, so it’s not just me.

Interestingly, Paul said that powermacs are no longer supported in ARCH=ppc as of 10th January. So 2.6.16 I guess…

It’s been a fairly fast project, having been agreed to last July, first hit the tree on 29th August, and by 19th November the PPC64 stuff was completely gone.

During a question from Dave Miller about the PPC handing of OpenFirmware VS Sparc64’s handling I was passed a card to sign for Paul Mackerras’s birthday. I can’t imagine how the people sitting directly in front of him signed it without him seeing…

Further discussion of memory layouts (64kb hardware page support means lots and lots of addressable memory!) followed by a quick round of Happy Birthday rounded out the rather technical session nicely.

I spent the interlude before the PHP5 presentation (ie while everyone else was off getting afternoon tea) finishing the morning’s posting, and jealously guarding my powerpoint.

Rasmus Lerdorfs’s PHP5 talk was quite technical, fast and codery in nature, so I’ll just be noting the cool points I wasn’t previously aware of. The version posted on his site right now is slightly older (marked 2006-01-25) than the one he’s displaying on the screen (marked 2006-01-26).

PHP’s main aspects: Fail Fast, Fail Cheap, Be Lazy. The greatest efficiencies come from solving problems you will never have.

Rasmus said that PHP has the unix philosophy of solving one small problem and solving it well. It’s not a framework, or the complete solution, but it does what it does very well.

AJAX makes this even better because the layout stuff gets moved to the local browser side, meaning that PHP only really needs to serve up the data in a format like JSON or XML, and the client-side UI code is actually run on the client site.

AJAX appears (now that I’ve seen it on the code-side) to simply be javascript in the web browser sending requests to the server with updates and whatnot and dynamically changing the UI without refreshing the entire page. This is good stuff, and I probably would have understood it earlier if I had actually listened to anyone whom I’d talked to about it before now. I wonder if we’ll be talking about this at the Perl BOF tomorrow…

I now also know what MVC means, and why it’s not actually sensible for web applications. But we use AJAX to do something similar, seperating presentation and data (oooh, like XHTML!).

Oooh! A very very useful thing in PHP is the <<< construct. Like the << shell function, and it expands PHP variables that appear inline.

Coming soon from Yahoo!, some kind of useful library thing for AJAX and stuff. ^_^

Hmm. JSON is apparently a Javascript self-extracting object. Neat. And I didn’t even know Javascript had an eval() function…

Man, the CBIT Internet customer manager interface is gonna be sooo cool when I’m done with it. ^_^

PDO is a new PECL extension for PHP5, and part of PHP5.1 which looks a lot like Perl’s DBI. It lets you bind parameters which will also save a whackload of crappy coding on my part… Mind you, I didn’t use the binding stuff in Perl5, but I should be doing so.

Things in PHP5 that make it good for AJAX stuff: XML uses libxml2 and dom now. This gets us XPath and XSL… and SimpleXML! This gives a PHP native object from the XML file….

item as $it)
echo "link}'>{$it->title} {$it->description}

Huzzah. Two instruction RSS aggregator… I can’t imagine why Planet takes so much code… ^_^

And with the demonstration of and unsafe search (I wasn’t quick enough on the URL, and the only thing Google will find is an old version of it, Rasmus’s one had images. Images!) it was obvious that this is the future of the web.


Boy’ve I’ve been looking for a place to use that last one. I can’t find the website I saw it on, but as soon as I saw it, I know I had to write it somewhere. ^_^

And then just to finish off (and whet our appetites for tomorrow’s “Fast and Secure websites” presentation) Rasmus pointed us to APC, a PHP Opcode Cache which Yahoo! is happily running on their servers. One server he pulled up has taken 87 million hits in the past few hours, with 20k cache misses. O_O

And then there’s the XHTML problem which I really need to sit down and unblithe my pages about…

BOFs… VoIP. I visited PowerPC, but on consideration this one’s actually more important to me.

VoIP BOF links for my own reference: MacOS X softphone, Platronics nice USB headset which can be bought from Harris Technology.

Interesting things pulled off Planet LCA2006: Gumstix – Small, small small computers; CryoPID – Freezes processes so they can be migrated across ttys and even machines. CryoPID was actually described at the lightning talks at LCA05, and received many oohs and aahs at the time at the idea of screening processes after they’d been started.

After the BOF, went to do my LPI 101 exam. As mentioned, I’ve been studying from LPIC 1 Exam Cram 2, which the LPI’s Books page describes as …the most up-to-date publication reflecting recent changes in LPI exam objectives.. Mind you, it fails to mention that they’ve since (as of October 1st 2005) merged the DEB and RPM exams… Mind you, I hadn’t checked the errata since I was actually only going along to ask a question about the exam proceedure. Having since checked the errata, there’s six pages of corrections, and there’s still some whoppers missing. The above change to the exams, and the fact that Linux doesn’t have an “Archive” bit…

Either way, it took 20 minutes of the 90 allotted, and I feel really good about it. Still worried about the second exam, will prolly put that off until Saturday and push hard to finish the book first.

And another episode of S.O.S watched, as this site was being slow for some reason… It’s so wrenchingly painful to watch, but I can’t possibly stop until I know what happens…

Either way, an excellent day topped off with way too much Japanese food. ^_^

Oh yes. If I get a chance, I must ask Dave Miller at the presenter’s panel about the IEEE 802.11 stacks…


One thought on “The PowerPC and the PHPassion: LCA Presentations Day 1 Afternoon

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s