Application portability across devices takes a step forward

The HSA Foundation releases a new queuing spec that blurs the line on task execution across processing units

The HSA Foundation has released a new specification that could help run programs faster across devices with different configurations, which should make it easier to export games and applications from gaming consoles to PCs and smartphones.

The new queuing specification, called HQ, will allow processors to share more resources. The specification, which the Heterogeneous System Architecture Foundation announced Tuesday, also reduces latency and shortens the communication path between chips.

The HSA Foundation is developing a set of open-source programming tools so coders can write applications that are portable across architectures and devices. The tools, still under development, will make coherent use of computing resources available for better system performance at lower power consumption.

The HQ specification revolves around queuing and dispatch of tasks between CPUs and GPUs, with a larger burden of task execution moving from software to hardware. Under HSA, data packets can be moved directly between hardware resources, and the HQ specification allows GPUs and CPUs to create tasks and place them in execution queues native to either processor. The mesh system of messaging, queuing and dispatch makes it easier for processors to assess and grab tasks, which results in faster processing of applications.

The specification makes it easier for programmers working on high-level languages or writing libraries to tie GPUs to CPUs and other resources to get work done, said Nathan Brookwood, principal analyst at Insight 64.

"GPUs didn't have that same kind of relationship. They were considered devices, and you had to go to them through device-driver interfaces," Brookwood said.

Developers will be able to write code for GPUs as easily as for CPUs, Brookwood said, adding the specification fits into HSA's theme of the processors being equal partners in computational environments.

"It's elegant, it's easier for the software developer while it's in place to build those heterogeneous applications that take advantage of CPUs and GPUs," Brookwood said.

Some of the world's fastest computers today are powered by CPUs and GPUs. More computing power will be needed for multimedia, voice recognition, face recognition and location-based computing, and faster access to GPUs will benefit those applications, said Ben Sander, senior fellow at Advanced Micro Devices, during a phone briefing.

AMD, ARM, Qualcomm and Mediatek are among the early backers of the HSA Foundation. HSA's programming tools are initially based on open-source parallel programming frameworks like OpenCL, but AMD officials have stated that HSA could ultimately have its parallel programming language.

HSA is releasing new specifications as it builds out the programming tools. In April, HSA announced a specification called HUMA, which unites different memory types in a system and makes them accessible to all processors. As a result, developers have access to a larger pool of shared memory in which code could be executed.

Intel and Nvidia are not yet members of HSA Foundation, and offer their own parallel programming tools to complement their chips. Intel offers developer tools and compilers for its Xeon Phi chips, while Nvidia offers CUDA for its graphics processors.

For the HQ specification, HSA Foundation will deploy a standardized task dispatch protocol for compatible chips from different companies, said Manju Hegde, corporate vice president of heterogeneous solutions at AMD.

Chips have their own proprietary dispatch format and will need to have the hooks to support HSA specifications. AMD plans to release an HSA-compatible chip code-named Kaveri for PCs next year.

HSA's specifications will be supported in Java Virtual Machines with Java 9 in 2015. The JVM will recognize HSA specifications and tap into compatible accelerators to speed up program execution without the need for extra layers of code.

The HQ specification likely is not related to AMD's Mantle low-level graphics API (application programming interface), which was introduced last month for the company's GPUs, Brookwood said.

Mantle has been compared to Microsoft's DirectX APIs used for Xbox and Windows games.

"Mantle has nothing to do with [HQ]," Brookwood said. "AMD hasn't talked about making Mantle multi-vendor."

Agam Shah covers PCs, tablets, servers, chips and semiconductors for IDG News Service. Follow Agam on Twitter at @agamsh. Agam's e-mail address is agam_shah@idg.com

Join the Computerworld New Zealand newsletter!

Error: Please check your email address.

Tags application developmentHSA FoundationAdvanced Micro DevicesComponentssoftwareprocessors

More about Advanced Micro Devices Far EastAdvanced Micro Devices Far EastAMDHSAIDGInsightInsight 64IntelMicrosoftNvidiaQualcommXbox

Show Comments
[]