AMD Releases Beta OpenCL 1.2 Driver For Developers, Announces HSA Runtime For Linux

Update: AMD let us know that it published the driver at http://developer.amd.com/resources/heterogeneous-computing/opencl-zone/

AMD released its beta Windows OpenCL 1.2 development driver today, and is officially announcing its plans to release Heterogeneous System Architecture (HSA) support for Linux. The company plans to implement this support in the second quarter of 2014 through HSA runtime software that will support multiple programming languages. 

While HSA is still in its infancy, it holds the promise of unlocking significant compute performance potential that can be applied to many types of workloads. About 47 percent of the Kaveri die is dedicated to GPU resources. Typically, that logic sits unused unless it's called on for graphics processing tasks. In a perfect world, though, developers could use those transistors to help accelerate general-purpose tasks, yielding a performance boost and improved efficiency. That's the ultimate purpose of heterogeneous computing, using the right device for a given task, and the potential benefits as they've been presented to us are certainly exciting.

With Kaveri, AMD facilitates true HSA-capable hardware for the first time. But as with all hardware, it's only as good as the software that supports it. And software support requires investment from developers. This is the giant hurdle that AMD needs to overcome before the benefits of HSA can be realized. If heterogeneous devices are the cart, then a commitment from the development community is the horse.

This isn't the first time AMD has outlined its strategy to enable HSA on Linux, nor HSA support for multiple languages like Java, C++ AMP, Python, and OpenCL 2.0. The company is putting a lot of effort into developer tools, so it's understandably trying to generate developer interest on an ongoing basis. At the end of the day, it all comes down to those developers. No matter how much potential HSA has, it can only aspire to be as pervasive as the software that supports it. If important applications ever deliver big performance boosts with this technology, AMD's APUs will potentially become a lot more desirable. On the other hand, if HSA never catches on with developers, the enablement work won't be the big pay-off AMD is hoping for.

Right now, the general message is repetitive. We heard it delivered at the AMD Developer Summit 2013, and more recently during the Kaveri tech day in Las Vegas. To recap, Java already has limited support for HSA through Aparapi, an API for expressing parallelized workloads. The company expects the subsequent release of Java 8 to arrive in the middle of 2014 with support for Lambda language expressions and parallel acceleration (thanks to the Sumatra project, which sets out to let Java applications leverage GPUs and APUs) through the HSAIL intermediate language, culminating in native Java Virtual Machine (JVM) support via Java 9 in 2015. OpenCL 2.0 is expected to be the primary path for most apps on both Windows and Linux platforms, though, and AMD plans to deliver this functionality to selected developers in Q3 of this year, with optional features enabled in Q4 that should leverage even more HSA-specific optimizations and functionality.

As I said though, almost all of this information has been discussed; it's a work in progress. To us, the real news today is the release of the Windows Beta OpenCL 1.2 Driver for developers who want to dip their toes into HSA waters now, rather than waiting for full OpenCL 2.0 availability later this year. This development driver is the same one used to drive the demos we saw during the recent Kaveri launch, so it gives widespread access to early adopters for the opportunity to test the potential benefits that HSA has for their software.

With this driver in the wild, we may see better indications of how much developer interest AMD has drummed up over the next few months. Of course, the company already made its driver available to targeted ISVs previously. But now that it's in the domain of anyone who wants a crack at it, we will see what the community comes up with. We plan to follow up this announcement with tests and developer feedback in the days and weeks to come, so stay tuned.

Create a new thread in the US News comments forum about this subject
This thread is closed for comments
6 comments
Comment from the forums
    Your comment
  • average joe
    If all else fails why not fund some Linux project forks. HSA optimized LAMP server for those millions of small businesses using oldnet burst Pentiums
    1
  • somebodyspecial
    This solution will have about as much success as Mantle. OpenGL has it's features and DX is getting them soon, just like Cuda has had 7yrs of billions poured into it and Cuda6+Maxwell is the same. HSA has to take out Cuda, which is kind of like AMD taking out Intel. Mantle has to take out DX/OpenGL, same story. Good luck with that. Freesync (beta) has to take out Gsync (here now) and both require monitors to be bought. Gsync will be set in stone by the time Freesync gets out of beta and on top of that it's not as good and certainly not FREE as the name implies (still need a new monitor, desktop ones don't even support it yet if ever).

    Hundreds of PRO apps already support Cuda and migrating them to Cuda6/maxwell gpus isn't as hard as getting new support for HSA. Game over man...If you're going to cause a lot more work for a dev, you'd better be able to explain how it blows away what they already have invested in heavily. If all it does is copy the same features what is the point in supporting it? I need to gain something right? It's also a lot easier to push a new standard from a position of money/power/market share, which AMD has no such position in anything. Broke/weakness can't push anything up a hill.
    -3
  • JamesSneed
    Anonymous said:
    This solution will have about as much success as Mantle. OpenGL has it's features and DX is getting them soon, just like Cuda has had 7yrs of billions poured into it and Cuda6+Maxwell is the same. HSA has to take out Cuda, which is kind of like AMD taking out Intel. Mantle has to take out DX/OpenGL, same story. Good luck with that. Freesync (beta) has to take out Gsync (here now) and both require monitors to be bought. Gsync will be set in stone by the time Freesync gets out of beta and on top of that it's not as good and certainly not FREE as the name implies (still need a new monitor, desktop ones don't even support it yet if ever).

    Hundreds of PRO apps already support Cuda and migrating them to Cuda6/maxwell gpus isn't as hard as getting new support for HSA. Game over man...If you're going to cause a lot more work for a dev, you'd better be able to explain how it blows away what they already have invested in heavily. If all it does is copy the same features what is the point in supporting it? I need to gain something right? It's also a lot easier to push a new standard from a position of money/power/market share, which AMD has no such position in anything. Broke/weakness can't push anything up a hill.


    I disagree with you but you already countered your own point. OpenCL is supported by both Nvidia and AMD. If I was investing money it would not be in a proprietary solution that only works with one type of hardware especially if I was trying to sell something as a package to others like how Photoshop CS6 dropped CUDA for OpenCL support. You will see this trend out over the years as CUDA disappears from the landscape. The same will be said of Mantle years from now as it dies off because OpenGL and DirectX are going to finally step up to the plate. Both CUDA and Mantle will have done something great which is to force the hand of the tech industry to create standards.

    The same thing will be the case with Gsync and Freesync five or so years down the road when the basic functionality is baked into every GPU and monitor as a VESA standard as it naturally will because of power savings with a nice plus for gamers.
    0