RE: HSA Foundation releases version 0.95 of the ‘Programmers Reference Manual’ (HSAIL Spec).
Deneau, Tom
tom.deneau at amd.com
Thu May 30 15:00:32 PDT 2013
As a follow-on to Gary's email on the release of HSAIL specification,
I will add that we have made some good progress on the redirection of
some java.util.stream APIs since Eric Caspole's Overview a month ago.
http://mail.openjdk.java.net/pipermail/sumatra-dev/2013-April/000131.html
We still intercept the stream API (for streams marked as parallel) the
same way, but now instead of using some Aparapi-borrowed code to
convert to OpenCL we call into the Graal HSAIL backend to generate the
HSAIL code.
Since memory pointers are identical between the HSA device and the
CPU, we are no longer limited to the primitive arrays imposed by
translating to OpenCL. For example, java code that uses arrays of
objects translates without any packing or unpacking overhead.
We look forward to posting this interception code that uses Graal as
soon as we sync up with the latest trunks, etc.
-- Tom Deneau, AMD
-----Original Message-----
From: sumatra-dev-bounces at openjdk.java.net [mailto:sumatra-dev-bounces at openjdk.java.net] On Behalf Of Frost, Gary
Sent: Thursday, May 30, 2013 1:40 PM
To: sumatra-dev at openjdk.java.net
Subject: HSA Foundation releases version 0.95 of the ‘Programmers Reference Manual’ (HSAIL Spec).
Yesterday the HSA Foundation released their ‘Programmers Reference Manual’. This manual is for developers wishing to write code for upcoming HSA compatible devices, it describes the HSA Intermediate Language (HSAIL) along with its binary form (BRIG) and describes how code is expected to execute on a HSA enabled devices.
In many ways we can think of HSAIL as we do Java bytecode. It is a common intermediate form that can be optimized at runtime to execute across a variety of future heterogeneous platforms. HSAIL will greatly simplify the development of software taking advantage of both sequential and parallel compute solutions.
I predict that this will prove to be a big deal for both Graal and Sumatra.
Sumatra developers working inside AMD already have a prototype that can intercept the dispatch of specific Lambda/Stream API’s, generate HSAIL(via an HSAIL-enabled GRAAL backend) and execute this code. We have executed code for several applications and test cases on simulators as well as on early access HSA compatible hardware.
We have been waiting for the HSAIL spec to be released. Now that the spec is out, we will make contributions to both the GRAAL and Sumatra mercurial repositories within the next 2 weeks.
Gary
Links:
HSA announcement
http://hsafoundation.com/hsa-foundation-has-just-released-version-0-95-of-the-programmers-reference-manual-which-we-affectionately-refer-to-as-the-hsail-spec/
Spec/manual
https://hsafoundation.box.com/s/m6mrsjv8b7r50kqeyyal
More information about the sumatra-dev
mailing list