On Tue, Feb 03, 2009 at 09:40:20AM -0800, Chris Lattner wrote: > > On Feb 3, 2009, at 8:48 AM, Mark Mitchell wrote: > > >Andrey Belevantsev wrote: > > > >>Obviously, a library is not enough for a heterogeneous system, or > >>am I missing anything from your description? As I know, e.g. there > >>is > >>no device-independent bytecode in the OpenCL standard which such a > >>backend could generate. > > > >That's correct. I was envisioning a proper compiler that would take > >OpenCL input and generate binary output, for a particular target, just > >as with all other GCC input languages. That target might be a GPU, or > >it might be a multi-core CPU, or it might be a single-core CPU. > > > >Of course, OpenCL also specifies some library functionality; that > >could > >be provided in a library that included hand-written assembly code, or > >was generated by some non-GCC tool. > > That's an interesting and very reasonable approach to start with. > However, realize that while this will give you ability to run programs > that use some of the OpenCL language extensions, you won't be able to > run any real OpenCL apps. The OpenCL programming model fundamentally > requires runtime compilation and the kernel-manipulation library APIs > are a key part of that.
Yes, but you need to get to the basic level before you get to the runtime compilation and kernel manipulation. -- Michael Meissner, IBM 4 Technology Place Drive, MS 2203A, Westford, MA, 01886, USA meiss...@linux.vnet.ibm.com