Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

elppa

macrumors 68040
Original poster
Nov 26, 2003
3,233
151
Apple seems to building, acquiring and investing in some very interesting new technologies.

Please can someone with more technical expertise than me explain how Apple may bring together the following in a way the rest of us may be able to better understand:

[1] D-Trace (as in optimisations on existing code)
[2] NS Operation and NS Operation Queue (two new APIs introduced in Leopard to help with parallelism)
[3] LLVM
[4] PASemi's Intellectual Property
[5] Grand Central
[6] OpenCL

to create real advancements Snow Leopard?

Obviously without invalidating your NDA (if applicable). I'm not trying to get anyone in trouble here! Only talk about the last two if you have no inside knowledge.

I am really intrigued about this Snow Leopard or rather, the lack of information we have about it at the moment. The no-new-features I believe is a total smoke screen. Apple wouldn't announce more than a year out they have no new features if they don't have something good up their sleeves.

Look forward to seeing the replies.

EDIT: If you believe it is simply impossible for Apple to achieve any major breakthrough with these technologies then please state why. I'd be interested to hear that as well.
 
Apple is focusing on one thing, and one thing only with the stuff you mentioned - making it far easier for programmers to take advantage of the massive parallelism offered by the latest chips from Intel. Look at the rumors and road maps, and you'll see that Intel's moving fully into the multicore world, but Mac OS X does not yet take full advantage of it. It's much better than it used to be, yes... but still not perfect. These new technologies will make it darn near perfect.

The ideal is to have a situation where programmers that could make their programs benefit from parallelism without much effort on their part, besides making a few library calls. This is what these 6 technologies, when used together, aim to do.
 
Apple is focusing on one thing, and one thing only with the stuff you mentioned - making it far easier for programmers to take advantage of the massive parallelism offered by the latest chips from Intel. Look at the rumors and road maps, and you'll see that Intel's moving fully into the multicore world, but Mac OS X does not yet take full advantage of it. It's much better than it used to be, yes... but still not perfect. These new technologies will make it darn near perfect.

The ideal is to have a situation where programmers that could make their programs benefit from parallelism without much effort on their part, besides making a few library calls. This is what these 6 technologies, when used together, aim to do.

Thanks. I suppose Microsoft is also aware of this with their Singularity Project, although when Singularity will result in a shipping product is unclear.

Focussing on the challenge (and potential benefit) of parallelism seems a lot more important than multi touch at the moment.
 
The first really insightful explanation I have read on OpenCL and Grand Central is available here. Just a snippet for anyone interested:

Grand Central Dispatch manages processes in a manner analogous to modern networking. Old telephone equipment used to use circuit switching to transmit information over networks; a dedicated circuit path is easy to set up but it is also expensive and potentially fragile. Modern networking uses packet switching, which breaks up data, phone conversations, or video streams into packets and routes each of them independently in a far more efficient way that is also resilient to network outages. Packets get routed around the problems.

Snow Leopard’s Grand Central Dispatch does the same thing for processes, packetizing tasks into Blocks and routing them to available processing cores as efficiently as possible. It can also manage the big picture for the whole system, adjusting how it balances its tasks as the performance load increases. This would be close to impossible for Individual developers to do themselves.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.