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 Benchmarking Platform
Phoromatic Test Orchestration

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. Sub-$20 802.11n USB WiFi Adapter That's Linux Friendly
  2. The Lenovo T450s Is Working Beautifully With Linux
  3. Linux 4.0 SSD EXT4 / Btrfs / XFS / F2FS Benchmarks
  4. Linux 4.0 Hard Drive Comparison With Six File-Systems
  5. Lenovo ThinkPad T450s Broadwell Preview
  6. How Open-Source Allowed Valve To Implement VULKAN Much Faster On The Source 2 Engine
Latest Linux News
  1. GCC 5.1 RC2 Arrives, GCC 5.1 Planned For Next Week
  2. F2FS For Linux 4.1 Has New Features & Fixes
  3. Phoronix Server Upgrade This Weekend: Dual Haswell Xeons, 96GB DDR4
  4. Google's Experimental QUIC Transport Protocol Is Showing Promise
  5. Red Hat Joins Khronos, The Group Behind OpenGL & Vulkan
  6. NetworkManager Drops WiMAX Support
  7. Wine 1.7.41 Works More On Kernel Job Objects, MSI Patches
  8. Linux 4.1 Has Improvements For The Multi-Queue Block Layer
  9. X.Org Looks To Have Six Summer Projects
  10. DragonFlyBSD Pulls In GCC 5 Compiler
Most Viewed News This Week
  1. Nouveau: NVIDIA's New Hardware Is "VERY Open-Source Unfriendly"
  2. Linux 4.0 Kernel Released
  3. Microsoft Announces An LLVM-Based Compiler For .NET
  4. Linux 4.1 Brings Many Potentially Risky x86/ASM Changes
  5. Encryption Support For EXT4
  6. VirtualBox 5.0 Beta 2 Released
  7. Mozilla Start Drafting Plans To Deprecate Insecure HTTP
  8. Elementary OS 0.3 "Freya" Now Available