At AccelerEyes, we built full GPU runtime (memory manager, JIT compiler, a big library of functions, and a multi-GPU multiplexer) and then integrated them into MATLAB using the standard MEX interface.
We currently only support CUDA code (hence NVIDIA only). You can integrate any custom CUDA code into MATLAB via the Jacket SDK and your CUDA code will inherit the optimizations of the Jacket runtime.
We do have our eye on OpenCL. For our thoughts on OpenCL, see http://blog.accelereyes.com/blog/2010/05/10/nvidia-fermi-cuda-and-opencl/ and http://blog.accelereyes.com/blog/2008/12/30/opencl/ . As OpenCL matures (or whatever emerges from Intel's Larrabee) and especially as FFT/BLAS/LAPACK libraries are built for OpenCL and other languages, we'll make sure Jacket code can run without any further modifications on those platforms.