Originally set as a goal for the summer of 2009
, it was not until late August of last year that the OpenCL state tracker
for Mesa's Gallium3D driver architecture was finally published. However, the code was incomplete and a very early work-in-progress. Nearly a year later, this "Clover" branch of Mesa that contains the OpenCL over Mesa support is still largely incomplete and useless to end-users. Fortunately, however, a new developer has stepped up to the plate and is in the process of submitting patches.
Zack Rusin of VMware was the developer who originally authored the OpenCL state tracker and published the code. The most recent work by Zack (or anyone else) committed to the Clover repository was four months ago where Zack added over 1,000 lines of new code to the OpenCL support, but still there's a ways to go. At the same time, Zack is also responsible for lots of other work on Gallium3D and Mesa beyond his other roles within VMware.
There's now a new developer, Anthony Waters, that has created a set of patches against Mesa's OpenCL implementation that provides bug-fixes and new features. His initial mailing list message regarding the submission of his Clover patches can be found on mesa-dev
Hopefully these patches will be interesting and motivate others to get involved with this open-source OpenCL implementation for Linux and other operating systems. Like Mesa with it lagging behind a great deal against the latest OpenGL specifications, Clover still has yet to fully implement OpenCL 1.0
, which has been out since late 2008, and the revised OpenCL 1.1
specification is already out there and in the process of being implemented by the proprietary driver vendors.
Until Mesa's OpenCL code is merged to master, the progress of this work can be tracked in the Clover repository that can be monitored via the FreeDesktop.org CGit