So what is 'OpenCL,' Apple's next enhancement to Mac OS X 10.6?
On Monday, Apple made mention of a curious new technology it said would help accelerate the development of CPU-to-GPU process sharing, calling it OpenCL. But the lack of information about what it is makes us all the more curious.
In its press materials released Monday, Apple made mention of a technology it called OpenCL, whose purpose was reportedly to enable so-called GPGPU functionality -- the ability for graphics processors to handle some of the heavy computing tasks normally threaded to CPUs. Since Apple is already involved with a project that's part of Khronos Group's OpenGL, specifically to enable GPGPU functionality, our first reaction was that this must be a typo.
There are also two other "open" technologies by that same name, the most prominent of which has been used for years in cryptography -- something which isn't the least bit related to Apple's subject matter.
But from Apple's standpoint, the "C" was not a typo, although at first we received two competing definitions of it: Open Compute Library or Open Computing Language.
Here's how Apple's Web site currently defines it: "Another powerful Snow Leopard technology, OpenCL (Open Compute Library), makes it possible for developers to efficiently tap the vast gigaflops of computing power currently locked up in the graphics processing unit (GPU). With GPUs approaching processing speeds of a trillion operations a second, they're capable of considerably more than just drawing pictures. OpenCL takes that power and redirects it for use in high-performance computing applications like genomics, video encoding, signal processing, and simulations of physical and financial models."
Apparently yesterday, Apple began issuing corrections to press sources that made reference to "Open Compute Library," telling them the definition should actually read "Open Computing Language." That memo apparently has yet to reach its own webmaster.
Late yesterday, CEO Steve Jobs himself issued one of those corrections to The New York Times, telling reporter John Markoff that OpenCL will indeed be something big and new -- something "way beyond what Nvidia or anyone else has, and it's really simple."
That's curious, because Nvidia had been Apple's partner in the Khronos Group, although arguably Nvidia members have taken the lead in that group. As far back as 2004, Apple had been tasked with building developer tools for that group's GPGPU standards, which were -- and are -- being built around the OpenGL umbrella.
Jobs stopped short of revealing any more details, beyond merely dissing his company's partner -- or maybe, former partner -- in GPGPU technologies.
Though more information could naturally be expected to have been revealed at the company's developers' conference, it was not. That led AnandTech's Ryan Smith to resort to a seldom used tool in modern technology marketing -- logic -- to piece together what Apple may have meant.
"We have heard that Apple has wanted to add full GPGPU support to the Mac for some time now (having been one of the first companies to embrace early GPGPU usage for their video editing applications)," Smith wrote, "but we have also heard that they are unhappy about the incompatibility between the GPGPU languages. They don't want to have to write two of everything, nor do they want their developers doing so."
Smith went on to speculate that Nvidia and AMD (the parent of ATI) would have to be on board with this idea in order for it to work in the first place. But that was before Jobs made his Nvidia comment to the Times; and Apple's relationship with AMD up to this point has historically been non-existent.
So an entire WWDC goes by with Apple having introduced us to the notion of the prospect of the possibility of "one more thing," without any clear guidance as to how it intends to pull it off.