Gallium3D Clover Can Now Execute OpenCL Native Kernels
Phoronix: Gallium3D Clover Can Now Execute OpenCL Native Kernels
One of the Google Summer of Code projects pertaining to Mesa / X.Org is to bring-up open-source OpenCL support with the Gallium3D driver architecture. There's long been a branch of Mesa dubbed "Clover" that provides an OpenCL state tracker for the Gallium3D driver architecture, but it hasn't been usable as there's a lot of work to be finished. This GSoC project attempts to change that and there's already been a big milestone achieved...
it s good , i wonder if the drivers and kernel will also support pcs having a ati with a nvidia .
may be an option to set the order of gpu use can be good . there some having 4 ati gpu and one nv in a pc
one question for the dev or anyone else that can answer:
We hit a milestone so how many milestones do we need in order to get a complete OpenCL implementation??? In other words what needs to be done.
It's difficult to respond before things happen, but another big milestone will be when Clover will be able to compile an OpenCL kernel into LLVM bitcode (a program). Then, extracting a kernel, settings its arguments and launching it will be another one.
I will be able to give more details in a few weeks.
How hard it is to merge clever with mesa master?
Do clever need any changes to other parts of mesa stack? And what OpenCL version do you want to support? (normal, mobile 1, 1.1, 2.0)
just to avoid further misspelling on your part.
Originally Posted by przemoli
its clOver not clEver.
It's OpenCL 1.1. I already read that an OpenCL 2.0 version is planned, but it's not on the Khronos website, so I cannot see what it is about.
Clover is a very important piece of the puzzle.
Shader-based decoding is another.
GLSL is another.
Good to see progress happening on all fronts.
Congrats Denis. Keep up the good work.
I am eagerly awaiting the day that it can compile a kernel using llvm into bytecode. That and the ability to set all of the kernel parameters are most of what I need for my VP8 OpenCL decoder to work (along with the byte_addressable_store extension).
What realy sucks balls about OpenCL is that you need to specifically target all kinds of different cards, even though your code will run on any OpenCL device. The problem is hardcore GPU understanding. For example the bank size and terminology is different between nVidia and ATi. Imagine programming soundcards >.<
Does the current IR succesfully work as a GPU design abstraction with Clover, so that Clover converts OpenCL in general code that works just as great on nVidia as ATi? That would be massive win all over the place.