HSA Version 1.0 arrived today

Subject: General Tech | March 17, 2015 - 01:18 PM |
Tagged: hsa foundation, hsa, amd, arm, Samsung, Imagination Technologies, HSAIL

We have been talking about the HSA foundation since 2013, a cooperative effort by AMD, ARM, Imagination, Samsung, Qualcomm, MediaTek and TI to design a heterogeneous memory architecture to allow GPUs, DSPs and CPUs to all directly access the same physical memory.  The release of the official specifications today are a huge step forward for these companies, especially for garnering future mobile market share as physical hardware apart from Carrizo becomes available.

Programmers will be able to use C, C++, Fortran, Java, and Python to write HSA-compliant code which is then compiled into HSAIL (Heterogeneous System Architecture Intermediate Language) and from there to the actual binary executables which will run on your devices.  HSA currently supports x86 and x64 and there are Linux kernel patches available for those who develop on that OS.  Intel and NVIDIA are not involved in this project at all, they have chosen their own solutions for mobile devices and while Intel certainly has pockets deep enough to experiment NVIDIA might not.  We shall soon see if Pascal and improvements Maxwell's performance and efficiency through future generations can compete with the benefits of HSA.

The current problem is of course hardware, Bald Eagle and Carrizo are scheduled to arrive on the market soon but currently they are not available.  Sea Islands GPUs and Kaveri have some HSA enhancements but with limited hardware to work with it will be hard to convince developers to focus on programming HSA optimized applications.  The release of the official specs today is a great first step; if you prefer an overview to reading through the official documents The Register has a good article right here.

View Full Size

"The HSA Foundation today officially published version 1.0 of its Heterogeneous System Architecture specification, which (if we were being flippant) describes how GPUs, DSPs and CPUs can share the same physical memory and pass pointers between each other. (A provisional 1.0 version went live in August 2014.)"

Here is some more Tech News from around the web:

Tech Talk

Source: The Register

March 17, 2015 | 02:24 PM - Posted by Master Chen (not verified)

Fortran...really, now. Oh wow.

March 17, 2015 | 05:26 PM - Posted by Anonymous (not verified)

There is a lot of scientific code base still in Fortran, so Fortran conversion is still needed!

March 17, 2015 | 06:01 PM - Posted by Anonymous (not verified)

Does DSP stand for Digital Sound Processing? as in Audio Production or something else?

March 17, 2015 | 06:32 PM - Posted by Anonymous (not verified)

Digital signal processor. could be sound, could be electro-magnetic. Analog to digital, and Digital to Analog.

March 17, 2015 | 06:18 PM - Posted by Anonymous (not verified)

I'll guess if someone is using the Vulkan API/SPIR-V IL the HSA folks will have a HSAIL(Heterogeneous System Architecture Intermediate Language) to SPIR-V IL conversion layer to be able to utilize the Vulkan APIs on any hardware that utilizes/offers the Khronos groups new graphics/GPGPU API standard. It looks like the SPIR-V IL and LLVM, is providing the same Functionality as the HSAIL and its LLVM, as purposed by the HSA foundation.

I do like the ability of HSAIL to include DSP hardware, but Khronos could do the same for SPIR-V IL. Maybe Intel and Nvidia will use/offer the Khronos groups cross platform Vulkan standard of HSA(OpenCL, OpenGL) workloads, but it would be very easy to provide a conversion between the two LLVM based ILs. The Khronos group has been around for longer than the HSA foundation, so maybe they could form a joint committee to combine their efforts with regards to just what IL, and LLVM standard will see wider adoption, but I can see both existing side by side with not too much problems, via conversion layers. For sure Intel, and Nvidia egos will get in the way of any rapid adoption of HSA foundation HSA standards, but the Khronos groups Vulkan is just as much HSA as any others HSA, and HSA and its design principals have been in use for decades in the HPC/supercomputing fields.

For sure these things we call GPUs have been utilized for many decades in supercomputers under the moniker Vector Processor, although the modern GPUs have even more dedicated functional blocks tuned towards graphics, they are still relatively the same. HSA really just means the ability to utilize different processors for both graphics and compute regardless of the original purpose of the processor's computing hardware. Also DSPs are specialized processors, but with a proper software abstraction layers they could be utilized for different computing workloads also, it's all mostly ones and zeros, and FP and Integer, etc. units anyways.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote><p><br>
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.