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

AMD Publishes Open-Source Linux HSA Kernel Driver

AMD

Published on 10 July 2014 06:23 PM EDT
Written by Michael Larabel in AMD
68 Comments

AMD has just published a massive patch-set for the Linux kernel that finally implements a HSA (Heterogeneous System Architecture) in open-source. The set of 83 patches implement a Linux HSA driver for Radeon family GPUs and serves too as a sample driver for other HSA-compatible devices. This big driver in part is what well known Phoronix contributor John Bridgman has been working on at AMD.

AMD Publishes Open-Source Linux HSA Kernel Driver

Heterogeneous System Architecture has been talked up for a while now by AMD as well as ARM vendors and now finally for open-source enthusiasts we can finally start seeing the advantages of the CPU and GPU on the same bus. Oded Gabbay of AMD announced the big HSA kernel patch-set:
This patch set implements a Heterogeneous System Architecture (HSA) driver for radeon-family GPUs.

HSA allows different processor types (CPUs, DSPs, GPUs, etc..) to share system resources more effectively via HW features including shared pageable memory, userspace-accessible work queues, and platform-level atomics. In addition to the memory protection mechanisms in GPUVM and IOMMUv2, the Sea Islands family of GPUs also performs HW-level validation of commands passed in through the queues (aka rings).

The code in this patch set is intended to serve both as a sample driver for other HSA-compatible hardware devices and as a production driver for radeon-family processors. The code is architected to support multiple CPUs each with connected GPUs, although the current implementation focuses on a single Kaveri/Berlin APU, and works alongside the existing radeon kernel graphics driver (kgd).

AMD GPUs designed for use with HSA (Sea Islands and up) share some hardware functionality between HSA compute and regular gfx/compute (memory, interrupts, registers), while other functionality has been added specifically for HSA compute (hw scheduler for virtualized compute rings). All shared hardware is owned by the radeon graphics driver, and an interface between kfd and kgd allows the kfd to make use of those shared resources, while HSA-specific functionality is managed directly by kfd by submitting packets into an HSA-specific command queue (the "HIQ").

John Bridgman, the AMD employee that's well known to Phoronix readers especially those that have followed AMD's open-source efforts over the years as dominantly covered by Phoronix, has been working in the AMD HSA area as of late and partially responsible for this new driver. Among the developers coding this HSA Radeon support for hte Linux kernel include Alexey Skidanov, Andrew Lewycky, Ben Goz, Evgeny Pinchuk, Michael Varga, Oded Gabbay, and Yair Shachar. The HSA Radeon driver amounts to nearly 10,000 lines of new kernel code.

Hopefully these patches will be quickly reviewed and will be able to enter at least the staging area for the Linux 3.17 kernel given there's still a few weeks left before the debut of Linux 3.16.

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. Khronos Group Announces Vulkan, OpenCL 2.1, SPIR-V
  2. Samsung 850 EVO SSD Linux Benchmarks
  3. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  4. 5-Way Linux Distribution Comparison On The Core i3 NUC
  5. OCZ ARC 100 Linux SSD Benchmarks
  6. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
Latest Linux News
  1. Unity 5.0 Brings PhysX 3.3, WebGL Preview, Animation System Work
  2. Linux 4.0-rc2 Kernel Released After Delay Due To Intel DRM Driver
  3. Linux 3.19 Officially Lands For Ubuntu 15.04
  4. Clutter Now Supports Quad-Buffer Stereo Displays, Mir Backend
  5. Pricing Details On The Alleged MJ Ubuntu Tablet Design
  6. Understanding The Linux Kernel's BPF In-Kernel Virtual Machine
  7. Another Software Patent That Should Be Tossed Out
  8. Imagination Already Has A Vulkan Driver In The Works For PowerVR GPUs
  9. A Provisional Specification To SPIR-V
  10. AMD Will Release Mantle Programming Guide, API Reference This Month
Most Viewed News This Week
  1. More Proof That Allwinner Is Violating The GPL
  2. The Tremendous Features Of Fedora 22
  3. Krita 2.9 Released, Their Biggest Release Ever
  4. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  5. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support
  6. Firefox 36 Brings Full HTTP/2 Support
  7. Xfce 4.12 Released After Nearly Three Years Of Work
  8. ALSA 1.0.29 Released
%%CLICK_URL_UNESC%%