Tarrytown, NY. The Heterogeneous System Architecture (HSA) Foundation today announced the results of a collaborative project sponsored by General Processor Technologies (GPT) and other industry developers to create open software bridges that enable quicker, easier programming of high-performance parallel computing devices in heterogeneous ecosystems.
The goal of the project was to overcome barriers to open parallel computing presented by proprietary tools that made interoperability historically problematic. This latest project was a key proof-point to achieving that interoperability goal.
HSA Foundation, in conjunction with GPT and Parmance, developed a BRIG (binary format) language front-end to GCC (GNU Compiler Collection) that is a binary representation of HSAIL (HSA Intermediate Language), a virtual instruction set specified by HSA for parallel computing. That front-end, known as gccbrig, was announced at the Linley Processor Conference last fall and is now available at the Foundation’s GitHub site: https://github.com/HSAFoundation/gccbrig.
“We’re delighted to have sponsored the gccbrig project and to be involved in creating a foundational tools ecosystem for HSA,” said Dr. John Glossner, HSA Foundation president and GPT CEO.
Glossner added that the Foundation is also actively assisting software developers by making their parallel compute jobs easier and more accessible; the cost of an efficient HSA-based heterogeneous parallel programming stack is now greatly reduced for all compute platform vendors with GCC backends already available for their devices.
“By defining interfaces for parallel computation using CPUs, GPUs, DSPs and other programmable and fixed function devices while supporting a diverse set of high-level programming languages, we’re creating the foundation for next-generation, high-performance, general-purpose computing,” said Glossner.
“Heterogeneous processors may benefit from kernel agent support and the vector/SIMD (single instruction/multiple data) optimizations in GCC. gccbrig taps into the years of hard work that have gone into the GNU compiler to provide efficient generic and target-specific optimizations such as auto vectorization. These optimizations help improve the performance portability of HSAIL programs when targeting various popular architectures, such as AMD CPUs with their SIMD instruction set extensions, and several DSP/ISPs,” said primary gccbrig developer Pekka Jääskeläinen, CEO of Parmance.
The HSA (Heterogeneous System Architecture) Foundation is a non-profit consortium of SoC IP vendors, OEMs, Academia, SoC vendors, OSVs, and ISVs, whose goal is making programming for parallel computing easy and pervasive. HSA members are building a heterogeneous computing ecosystem, rooted in industry standards, which combines scalar processing on the CPU with parallel processing on the GPU, while enabling high bandwidth access to memory and high application performance with low power consumption. HSA defines interfaces for parallel computation using CPU, GPU and other programmable and fixed function devices, while supporting a diverse set of high-level programming languages, and creating the foundation for next-generation, general-purpose computing.
General Processor Technologies (GPT) is the wholly owned subsidiary of Beijing-based Hua Xia GPT. GPT designs and licenses embedded HSA-compatible processors for use world-wide. Best known for building multithreaded vector Digital Signal Processors (DSP) for wireless communications, GPT also licenses cores for use in machine vision, Internet of Things (IoT), Machine-to-Machine (M2M), consumer electronics, and deep learning. GPT’s patent-pending Unity architecture allows customers to optimize cores for a range of applications and easily integrates into heterogeneous systems providing power-efficient computing and software reuse.
Parmance, based in Tampere, Finland, provides a variety of software engineering services—some of these include compiler development, runtime development, and performance engineering. The company’s specialists have extensive expertise with heterogeneous parallel computing, processor architectures, instruction-set simulators, and compilers.