Apple Snow Leopard for Video Producers, Part 1
Sep 24, 2009 12:00 PM, By Jan Ozer
Grand Central Dispatch
One of the biggest disappointments that many Mac owners have experienced is buying a new eight-core system only to find that encoding or rendering performance doesn't significantly improve. That's because programs have to be specially written to take advantage of multiple processors, and if they aren't, they only use one core, even on an eight-core computer.
To use multiple cores more efficiently, programmers have been making their programs multithreaded for several generations, which is a big help. But if you're running multiple programs simultaneously, along with the basic operating system, the individual applications can vie for the same CPU resources simultaneously, which results in the always depressing spinning beach ball.
Simply stated, Grand Central Dispatch distributes CPU resources among multiple tasks, enabling the more efficient use of multicore systems, which will make all supporting programs run together more efficiently. The only negative is that programs must be written specifically for Grand Central Dispatch to leverage its benefits, which means you'll have to wait awhile to see its fruits.
Open Computing Language
Over the past few years, the graphics processing units, or GPUs, that drive your graphics cards have become increasingly powerfulnot only to display pixels with blinding speed, but for general computing functions. Unless you're a gamer, however, your GPU lies fallow most of the time.
Graphics chip vendor Nvidia introduced the Cuda programming language to allow software developers to harness GPU cycles for non-display oriented tasks, such as video encoding and the like. Obviously, however, Cuda only works with Nvidia graphics cards, and most software developers prefer a programming interface that works with all relevant vendors.
That's OpenCL, for the Open Computing Language, which enables the creation of software programs that can use both the CPU and the GPU, and query the system to determine which approach will run most efficiently. For example, on a dual-core system with a hot graphics card, Compressor could perform H.264 encoding chores on the GPU, but it might use the general CPU pool on an eight-core system.
As an Apple programming interface that encompasses both CPU and GPU, OpenCL has a much greater chance of being used than Cuda or any other graphics-card specific solution. Again, however, OpenCL won't deliver any performance enhancements until programs are written to support it, so it won't deliver any immediate benefits.
Obviously, Snow Leopard offers lots more than the three aspects that I've discussed. For an extraordinarily comprehensive look at all technical aspects, check out Mac OS X 10.6 Snow Leopard: the Ars Technica review. Many other articles can detail the new interface components.
So that's it for now. Come back in two weeks and see how Snow Leopard can improve Final Cut Pro performance on a MacBook Pro and Mac Pro.
Continue the discussion on “Crosstalk” the Millimeter Forum.


Multimedia
Blogs
Forum
Affordable HD
Whitepapers
Advertisers
Blogcast
Millimeter

