Is OpenCL coming to Apple iOS?
Answer: No, or not yet. Apple tested Intel and AMD hardware for OSX, and not portable devices. Sorry for the false rumour; I’ll keep you posted.
Update: It seems that OpenCL is on iOS, but only available to system-libraries and not for apps (directly). That explains part of the responsiveness of the system.
At the thirteenth of August 2011 Apple askked the Khronosgroup to test 7 unknown devices if they are conformant with OpenCL 1.1. As Apple uses OpenCL-conformant hardware by AMD, NVidia and Intel in their desktops, the first conclusion is that they have been testing their iOS-devices. A quick look at the list of available iOS devices for iOS 5 capable devices gives the following potential candidates:
- iPhone 3GS
- iPhone 4
- iPhone 5
- iPad 2
- iPod Touch 4th generation
- Apple TV
It is strange Apple waited so long with adding vector-acceleration to their devices, as OpenCL is initiated by Apple and they even have the copyright (as far as that can go with open standards). It might be that Google introduced RenderScript-compute for Android 3-devices, and that OpenCL is coming to Android too at the end of this year. The last thing Apple wants is that people buy other brands because the other brand’s product is more reactive; that has been an important point-of-sales when OSX was compared to Windows. Presumably not, but let’s hope Apple did not do a hasty job getting in time.
The nice thing about OpenCL is that any manufacturer can write OpenCL-drivers for their devices, write an optimisation how-to and they already have the developers around. So adaptation of OpenCL-for-iOS would probably go faster than the under-documented RenderScript-for-Android.
Most times it doesn’t take long the devices appear after they have been tested for conformance. Meaning you could already look into the possibilities OpenCL could give such a device. Developed an app which was not fast enough? This is your chance! Contact StreamComputing for more information on how to embed OpenCL-computations in your software.