Getting to know Grand Central Dispatch, OpenCL, and your 64-bit OS
  • 16 Comments
by Devin Coldewey on June 8, 2009

overview_hero20090608
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.

opencl_icon20090608OpenCL
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.
stax

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.

Comments rss icon

  • no beats the wiz - June 8th, 2009 at 3:51 pm GMT+5

    Good roundup. Dropping the price of snow leopard is good move by apple.

    Would you rather pay at least $200 for a comparable vista service pack 3 cough cough windows 7 or $29 for snow leopard?

  • I agree. Hell I would pay $200 for this update, and I keep sending emails to Apple saying so.

  • Your comment about multi-core CPUs having idle cores is utter tosh.

    Intel’s Hyperthreading allows all of the cores to share the workload and it’s done in hardware.

    The grand central IDE is for designing applications that are specifically multithreaded.

    • Not very many Intel cpus have hyperthreading. Late pentium 4s, atoms, plus a smattering of extreme editions and xeons. Also hyperthreading doesnt really have that much to do with load balancing. Hyperthreading allows one physical core to be treated as two logical cores by the os, and thus enables it to execute multiple data threads at once.

    • What?! Obviously you don’t know what hyperthreading really is. Yeah Pentium 4’s had it, but it’s still one of Intel’s worst processor.

  • Very good overview.

    One point: I too do not believe in one CPU being completely at 0%. I agree with Maj completely over here. It would be interesting to know the specific apps that *really* makes one CPU go to 0%… any suggestions?

  • quote: “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)”

    And you’ll have to .. the $29 price tag is for Leopard owners (upgrade), the actual price is $129 :)

Leave Comment

Commenting Options

Enter your personal information to the left, or sign in with your Facebook account by clicking the button below.

Alternatively, you can create an avatar that will appear whenever you leave a comment on a Gravatar-enabled blog.

Trackback URL
Short URL
bugbugbug