Intel's Investing In Some Mesa Optimizations

Posted by Michael Larabel on July 19, 2010

Earlier this month an Intel employee began asking about making optimizations to Mesa's shader compiler (on the Mesa-dev list). This Intel employee was not one of their usual Open-Source Technology Center developers commonly working on their Linux graphics stack as part of Keith Packard's team, but instead it was an uncommon name: Benjamin Segovia. Ben is from Intel's Advanced Graphics Lab team where previously he worked on ray-tracing techniques, but as of late seems to be at least dedicating some of his Intel effort towards optimizing Mesa.

Ben's original Mesa thread (linked above) can be read for more details on his original thoughts and intentions, but today he has just submitted one of his first patches and it provides better GPU program optimization within the Mesa front-end. This patch touches just under 500 lines of code and provides improved optimizations of GPU programs with better swizzle support and analyzes control flows (though in a very crude form right now). Next up, Ben is working to tackle instruction merging and register renaming to avoid unnecessary moves. In his testing of this patch, all of his tests are working out and the GPU shader code is "clearly improved."

While Segovia is an Intel employee, his work right now that's taking place is happening within Mesa's front-end in a common area of this open-source code-base, so it should be of benefit to all users, but his testing has just been with the Intel driver and hardware. Ben though has also expressed interest in making some improvements to the Intel-specific Mesa shader compiler back-end. The initial patch that's not yet committed to Mesa's mainline code-base can be found on the mailing list.

Eric Anholt and Ian Romanick (of Intel's normal OSTC Linux graphics crew) are also working on a new shader compiler for Mesa, among other improvements. Any and all optimizations and improvements to the open-source 3D Linux graphics stack should certainly be appreciated by the community. While Intel focuses all of their Linux support for their in-house IGPs on an open-source driver (not to be confused with their other nasty side), their Windows driver is still a whole lot faster.

Hopefully a good portion of this work will be ready in time for Intel's Sandybridge launch. Ben has also mentioned Sandybridge -- Intel's upcoming CPU with a better integrated graphics core than Clarkdale -- within the mailing list thread.

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. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. AMD RadeonSI Gallium3D Begins Simple CL Demos
  2. A New X.Org-Free Wayland LiveCD Released
  3. X.Org Libraries Hit By Round Of Security Issues
  4. Wayland's Weston Gets Output Scaling Support
  5. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  6. Linux's "Ondemand" Governor Is No...
  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