This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: opencl and gcc


On Mon, Sep 26, 2011 at 04:24:19PM +0530, naveen yadav wrote:
> Hello All,
> 
> OpenCL http://www.khronos.org/opencl/ is a new standard proposing an
> API for GPUs (targetting vector processing on heterogenous systems,
> like GPU + CPU).
> It suggests some restricted & specialized C dialect to code "kernel"
> functions (kernel in OpenCL means running on the GPU).
> 
> Is there any branch or experimental code for adding OpenCL into GCC?

Andrey Belevantsev and others from ISPRAS (Russia) had worked on generating OpenCL from GCC
with "GRAPHITE-OpenCL: Generate OpenCL Code from Parallel Loops"
http://www.gccsummit.org/2010/view_abstract.php?content_key=15
and I (Basile) am very slowly working on adding an equivalent pass inside MELT 
(but OpenCL work in MELT is very incomplete and progress is very slow).


Maybe what you want is the ability to compile OpenCL into binary code running on the GPUs. 
(AMD ATI/Stream OpenCL implementation is probably doing this on code above LLVM. That code is sadly not free).
As far as I know there is no GCC branch on that part.

And there is also the Nvidia proprietary Cuda language.

Besides, the GPU thing is rapidly moving: with the trend (called APU at AMD...) consisting of merging the GPU on 
the same chip as the CPU, things are changing a big lot, because one of the biggest issue of GPU computation is the bandwidth and latency between GPU & CPU, and these two factors change a lot when moving from an PCI Express external GPU card (like any AMD or Nvidia graphics board) to a GPU inside the CPU chip.


Regards.

-- 
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]