I'm interested in doing GPU-accelerated computation in iOS (for iPhones 3GS and 4). Unfortunately, neither device supports OpenCL, so it seems the only choice is to express the program data as graphics data and use the OpenGL ES 2.0 programmable shaders (vertex and fragment) to do the work. Can anyone recommend any resources that might be useful? Sample code is the holy grail.
There are several ways to do this by now. If you want to support older devices, you should stick to OpenGL ES 2.0 shaders. There are the frameworks GPUImage and ogles_gpgpu for this. The latter even supports Android systems.
I've also written a master's thesis about this topic: Parallel Computing for Digital Signal Processing on Mobile Device GPUs.
You can do more advanced GPGPU things with OpenGL ES 3.0 now. Check out this post for example. Apple now also has the "Metal API" which allows even more GPU compute operations. Both, OpenGL ES 3.x and Metal are only supported by newer devices with A7 chip.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With