Getting to know Grand Central Dispatch, OpenCL, and your 64-bit OS

Apple’s Snow Leopard update for OS X is a major update, despite the fact that it doesn’t tout “300 new features” like the last one. For $29, there’s no reason to expect anything but bugfixes, but in fact this is probably the most important OS X update for years. While Leopard essentially completed the OS, which was in need of completing since it was introduced, Snow Leopard pushes it into the future.

The technologies being introduced in Snow Leopard are for making your mac leaner, faster, and more capable of pretty much everything you already do. So let’s just recap what exactly these very abstract-sounding features are in case you need to explain it to a clueless friend or family member.

64bit_icon20090608Fully 64-bit
This is probably the most technical one, and the hardest to grasp. It has to do with the maximum amount of information that can be handled at once by your computer’s processor. Now, it should be noted that we’ve had 64-bit capable CPUs for a long time, but our OSes have been 32-bit until relatively recently, and 64-bit is only now starting to become a consumer standard. All macs since they switched to Intel can run Snow Leopard, so the architecture they’ve built clearly depends on that hardware. If you’re looking for a more technical explanation, check out Apple’s.

So what differences will you actually see? Well, of the three technologies being discussed here, you’ll see this one the least. It will save you a lot of space; applications have been packaged with compatibility for 64-bit and 32-bit for a long time now, and along with the other streamlining they’ve done in Snow Leopard, it should reduce the actual size of those apps by more than half in many cases. Beyond that it should have few visible consequences to the lay user. But 64-bit allows for better, faster, and more advanced computing and must not be discounted as just another number.

One thing we cover a lot here at CrunchGear is graphics cards and improving technology in that area. It usually applies to PC Gamers, but the same cards power your Photoshop effects, resize your videos, and make Exposé all smooth on OS X. And they are extremely powerful; the first card clocked at over 1GHz just came out, and their architecture means they are far more suited for high-intensity parallel calculations than a normal CPU.

Recently on PCs, there has been a push, primarily with NVIDIA’s CUDA technology, to utilize that capability by releasing new drivers and building applications that take advantage of the power of the cards. OpenCL is essentially Apple’s CUDA.

OpenCL was put together with the help of major graphics and development companies as an open standard for using the GPU in normal computing tasks. By creating a shared standard and working with the people who actually provide the hardware and make the software, they’re opening up GPU acceleration for many more things in the OS. Video enhancement, better and more pervasive interface effects, much faster tasks like encoding video, resizing pictures, editing photos… and that’s just a start. OpenCL means that developers can now, to paraphrase an inaccurate but apt phrase, “use the whole brain.”

You’ll notice OpenCL in the form of a smoother-running, better-looking OS, HD video playback improvement, and a plethora of other graphic-related things.

gcd_icon20090608Grand Central Dispatch
Another thing we cover a lot on CG but often doesn’t apply to Apple users is the CPU arms race. As AMD and Intel have clashed over the years, the competition has resulted in a huge increase in the raw speed of our processors. But we’re approaching a point where to continue doing what we’ve been doing to increase the speed would literally violate physical laws. What to do, aside from more science? Multiple cores, all operating at once. It’s not quite as specialized parallel computing as a video card does, but it’s along the same lines.

Dual-core processors have been widely available for a couple years, and now quad-cores are creeping down in price as well. And who can say of the future that we won’t be using eight, sixteen, or thirty two cores? The CPU companies have demonstrated and are working on all of these things.

But applications written for the lowest common denominator (single-core machines, still common) are unable to take advantage of these cores. I see it myself with my little CPU monitor: sometimes one of the cores is at 100% usage and one is at 0%. Boo! I paid for the privilege, and now half my apps won’t even use my whole processor? Well, I guess I can’t blame them since it’s a relatively new technology and most APIs and languages aren’t optimized for splitting an application into multiple CPU streams. This is where Grand Central Dispatch comes in.

Grand Central Dispatch isn’t a user feature, it’s a development feature. It’s a huge set of APIs, language extensions, and a whole new object-oriented framework: tools for developers to make all apps totally multi-core-capable, as quickly and easily as possible. You’ll see this in the form of most of your applications starting faster and running better. You’ll also see it in the form of heat, as when both cores are active it’s going to be burning your lap up. I use SMCFanControl and you should too.

What else?

Well, aside from these big three techs, you’ve got:

Quicktime X, which makes videos a little more seamless and hopefully supports more formats out of the box. It’s already hardware-accelerated and now will use ColorSync as well; let’s hope that’s a benefit.
Exchange support, which is nice.
In-Dock Exposé lets you cruise the windows of individual applications &mdsah; actually reminds me of the Windows 7 taskbar scrub.

Cocoa Finder means Finder will be more responsive and have less delays in displaying lots of icons and minor tasks
Faster install — okay, it was never slow to begin with really, but thanks!
Safari 4 Final for those of you who like that sort of thing.

So there you have it. It’s a lot of stuff to be getting for $29, in fact I would have gladly paid $100 for this real update (I skipped Leopard), since it makes your Mac into much more of a future-proof machine. Seriously, though, they’re going to get a lot hotter. You heard it here first.