Jul 28, 2005, 10:01 AM
Category: Apple Hardware
Link: CoreImage, CoreVideo and more RAM on the new iBooks. (http://www.macbytes.com/link.php?sid=20050728100143)
Posted on MacBytes.com (http://www.macbytes.com)
Approved by Mudbug
Jul 28, 2005, 10:21 PM
"the new iBooks should be technically capable for CoreImage and CoreVideo"
There's a LOT of misunderstanding being repeated about Core Image (often by people who have no idea what it will do for them :p ) so I'll try to clear things up. (I'm not an expert but I play one on TV. Please jump in and add to this.)
1. Macs do NOT need a special GPU to do Core Image. The OLD iBooks and Minis already supported Core Image.
2. With a high-enough GPU, Core Image will run on the GPU instead of the CPU. If the GPU gets the job done faster, it will be used for it.
3. BUT Core Image makes things faster EVEN when it is running on the CPU!
4. SO, no matter whether you have a high enough GPU or not, you get the FUNCTIONALITY of Core Image, AND you get a speed boost from the technology. Even WITHOUT a GPU that can handle Core Image, your Mac still can! And so a Core Image app could, for instance, still outperform an app like Photoshop that does things the "old way."
See this Ars article for very good info on this (and other aspects of Tiger):
(Core Image section: http://arstechnica.com/reviews/os/macosx-10.4.ars/15 ... I recommend reading it, it's interesting and understandable by non-programmers. It will make you appreciate what Core Image really IS. It's great technology no matter WHAT GPU you have.)
...Passing an image through an Image Unit doesn't actually cause anything to be rendered. The output of an Image Unit is simply a "recipe" for how to produce the desired result. As the image passes through all of the Image Units, each Image Units appends more steps to the recipe.
... Core Image includes a just-in-time (JIT) compiler that converts the implementation-agnostic "recipe" for the entire Image Unit chain into optimized code, targeting the fastest hardware available at the time of execution.
In many cases, that will mean AltiVec. On multi-processor Macs, the Core Image JIT compiler will even create SMP-aware code that utilizes all available processors....
If a reasonably modern video card is installed, AltiVec may not be the "fastest hardware available." Instead, the Core Image JIT compiler may target the GPU, producing (essentially) a pixel shader to run the recipe via OpenGL.
Even more impressive is this: adding Image Units seems to have no affect on performance....
Bottom line: Core Image is fast and efficient because it uses the "recipe" method--no matter whether it's using the GPU, or AltiVec, or multipls CPUs, or whatever is the fastest method for the particular machine being used.
Now... if the new iBooks have a GPU that supports Core Image, that's great--they won't have to use the CPU for Core Image anymore. So the quote I began with should be rewritten:
"the old iBooks were already capable for CoreImage and CoreVideo, but the new ones have a GPU that should be technically capable of accelerating things even more."