1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

DMA-BUF PRIME Coming Together For Linux 3.5

Linux Kernel

Published on 12 May 2012 11:34 AM EDT
Written by Michael Larabel in Linux Kernel
18 Comments

The DMA-BUF PRIME support in the popular open-source Linux graphics drivers is coming together for the Linux 3.5 kernel to allow for GPU offloaded rendering.

Coming out this week was a new patch for the DMA-BUF/PRIME buffer sharing support so that Intel's DRM driver can offload rendering in one direction and outputs in the other. This patch is based upon David Airlie's work and amounts to just under 200 lines of code in the i915 kernel DRM driver.

Out on the same day from Alex Deucher was a patch entitled "add PRIME support" that effectively does the same as the Intel driver, but instead for the Radeon DRM driver. This too was just about 200 lines of code.

These patches come one week after David Airlie added PRIME sharing support to the TTM memory manager (here) as well as PRIME support for the Nouveau DRM driver (here).

This PRIME support builds upon the DMA-BUF buffer sharing mechanism that was originally merged into Linux 3.3 and the PRIME fundamentals in Linux 3.4. With the Linux 3.5 kernel is where the popular Direct Rendering Manager hardware drivers should support this for sharing buffers between drivers / GPUs. While Intel / Radeon / Nouveau are the most popular drivers, there's also been ongoing DMA-BUF work for the Texas Instruments OMAP, Samsung Exynos, and DisplayLink UDL KMS drivers too.

This technology can ultimately be used for things like NVIDIA Optimus or SLI/CrossFire. DMA-BUF itself largely was born within the Linaro camp for buffer sharing between driver drivers for ARM SoCs. Last November was when PRIME got back under-way for the GPU offloaded rendering.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Samsung 850 EVO SSD Linux Benchmarks
  2. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  3. 5-Way Linux Distribution Comparison On The Core i3 NUC
  4. OCZ ARC 100 Linux SSD Benchmarks
  5. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
  6. Transcend SSD370 256GB
Latest Linux News
  1. 8cc: A Small C11 Compiler
  2. Not Everyone Likes The Possible "VULKAN" Name For Next-Gen OpenGL
  3. The Binary Blobs Making Up Coreboot
  4. Linux 4.0 & LLVM vs. GCC Yielded Much Interest This Month
  5. XBMC/Kodi 15.0 Alpha 1 Released
  6. Xfce 4.12 Released After Nearly Three Years Of Work
  7. The Khronos Group Filed A Trademark On "Vulkan" API
  8. Mozilla Thunderbird Adoption Climbs, Thunderbird 38 In May
  9. The Most Popular Linux Benchmark Results On OpenBenchmarking.org
  10. Intel's Graphics Driver For Linux 4.1 Will Have More XenGT vGPU Support
Most Viewed News This Week
  1. Linux 4.0-RC1 Tagged, Linux 4.0 Will Bring Many Notable Improvements
  2. Screenshots Of The GNOME 3.16 Changes
  3. More Proof That Allwinner Is Violating The GPL
  4. The Tremendous Features Of Fedora 22
  5. Linux 4.0 Doesn't Have The Weirdest Codename
  6. Krita 2.9 Released, Their Biggest Release Ever
  7. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  8. Canonical Comes Up With Its Own FUSE Filesystem For Linux Containers
%%CLICK_URL_UNESC%%