Friday, November 5, 2010

MacBook Air

It's been forever since I last updated. As Jim Anchower says, "Hola, amigos, it's been a long time since I rapped at ya."

I've been thinking about the new MacBook Air. It's a fantastic piece of machinery, although perhaps the word "machinery" is wrong here, as the product is entirely solid state. Wow. A modern laptop with no moving parts. Of course, this isn't the first one: the old portables from Tandy were solid state, and that was almost 30 years ago, but for a machine that suffers as much use as a portable computer, sold state is the way to go.

Hmm, I don't know if it has a fan... if so, scratch the word entirely, but the rest of the statements still apply. A fan can be replaced.

Of course, you don't get a full-fledged computer. You get a recent, but slow, Core 2 Duo. It's clocked down (obviously) to lower heat production and increase battery life. Still, it's an old processor family.

The problem is that there isn't a processor that sits between the Core i3 and the Atom. WHat that would look like might be a multicore Atom.

There's an open question here, and the answer doesn't lie in hardware: is software really ready for multicore? Regardless of what some might say, concurrency is hard to do well.

It looks like I will be teaching algorithms and data structures in the Spring, and I've decided that I MUST teach multithreading. We may not spend much time on it, and it may be toward the end, but if you can only think of algorithms in single-thread mode, then you will lose out as a developer. Sure, we can use up CPU cores with multiple applications, but when you are doing something like decompression, optimal performance will come from using as many cores as you can to preemptively decompress data. Not all that different from double-buffering, really. Does anyone remember that? Before the days of GPUs? Hmm...

No comments:

Post a Comment