Apple leading the way in multi-core programming?

One of my pet study areas is programming paradigms, something I’ve done since my university days looking at SmallTalk (object-orientation) and Ada (safety critical). The next great next battle line is how to take advantage of multi-core machines to do parallel computing without blowing our poor programmer minds. Intel is doing a lot of work in this area and it’s really interesting that Apple is doing the same. I’m not sure why, but good on them.

The two technologies that seem to have sprouted from them and are supported in Snow Leopard are OpenCL, the Khronos standard for mixed GPU/CPU computing, and Apple’s Grand Central Dispatch, a task parallelism extension to C, C++, and Objective-C with something called Blocks. There is a recent report from that shows some real significant improvement form these technologies.

I don’t know much about either, but this is definitely something I’m adding to my reading list for those nights I can’t get to sleep (which if you’re following me on twitter you’ll notice are happen regularly).