Gallium3D OpenCL GSoC Near-Final Status Update

Posted by Michael Larabel on August 17, 2011

Google's 2011 Summer of Code is coming to an end with today being one of the soft deadlines for the student developers to finish up work on their summer projects. Of the Mesa / GSoC summer projects this year, I mentioned the MLAA support for Gallium3D was a success with the post-processing infrastructure and morphological anti-aliasing support seeking mainline inclusion into Mesa. Here's a status update on how the Gallium3D OpenCL support has come over the summer.

The Gallium3D OpenCL summer project was done by Denis Steckelmacher, the student developer who originally hoped to write an OpenGL 4.1 Core Profile state tracker over the course of this summer. For his OpenCL summer project that was financed by Google, he based his Gallium3D OpenCL upbringing on the Mesa Clover branch that was originally started by Zack Rusin some time ago, but hadn't evolved much up until this summer.

In June I reported on Phoronix that Gallium3D Clover could now execute OpenCL native kernels, thanks to the work of Denis, but since then there hasn't been much to report. With the soft deadline today for ending the 2011 Google Summer of Code, Denis has blogged a status update. His blog post is entitled The End is Approaching.

Denis says that Mesa Clover has "evolved fairly well" and is now an API-complete library. He says the OpenCL implementation is fast right now, but there are more optimizations he still hopes to do in the coming days. "The only missing things are some built-in functions available to the kernels. I already implemented the most difficult of them, and the remaining ones are things like clamp(), etc."

Denis now plans to clean-up his code and provide documentation. He will describe how the memory objects work, the structure of events/command-queues/CPU-worker-threads, how some implementations are done, and how LLVM/Clang is used to compile and launch kernels. All of this is done right now on the CPU and is not being GPU accelerated at this point.

Unfortunately, there's no word right now on future plans for the coming months -- if he will even be contributing to the Mesa project following the formal end of GSoC 2011 -- or eventual plans for graphics driver support and mainline integration.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Phoronix Test Suite 4.6.0 "Utsira" Released
  2. New Intel X.Org Driver Supports All Of Haswell
  3. SQLite Now Faster With Memory Mapped I/O
  4. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  5. Qt For Tizen Launches, Based On Qt 5.1
  6. KTAP Released For Linux Kernel Dynamic Tracing
  7. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  8. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  9. Handbrake 0.9.9 Supports OpenCL Offloading
  10. Freedreno Gallium3D Now Banging The Adreno A3XX
  11. Jolla Announces Their First Phone
Latest Forum Talk
  1. Microsoft Releases Skype For Linux 4.2, Has...
  2. New Intel X.Org Driver Supports All Of Haswell
  3. Jolla Announces Their First Phone
  4. Intel Linux OpenGL Driver Leading Over Apple OS X
  5. FreeBSD Still Working On Next-Gen Package Manager
  6. SQLite Now Faster With Memory Mapped I/O
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite