Not a replacement for OpenCL
HSA, said Macri, was also not a replacement for Open CL, rather, HSA would be an optimized platform architecture for OpenCL. “If you want to write OpenCL, this will be the hardware to run it better,” he said.
Indeed, using OpenCL on HSA, he said would avoid wasteful copies, have low latency dispatch, improve the memory model and share pointers between CPU and GPU.
“HSA also exposes a lower level programming interface, for those that want the ultimate in control and performance,” said Macri, not to mention that optimized libraries could choose the lower level interface.
Today’s command and dispatch flow has too many steps and processes, said Macri, adding that it was a waste to have so much overhead just to get something to execute.
With HSA, he said, applications could simply place things directly into the hardware queue without the need for all those extraneous drivers. “No APIs to deal with, no kernel mode drivers, no soft queues. Just direct access to the hardware,” he explained.
The bottom line, said Macri, was that it was important to switch the compute, not move the data. With every processor now running serial and parallel cores, every core should be capable of running at different levels of performance and be easily programmable. The architecture needs to easily support massive data sets and task based programming models, while remaining open to all.
“The architectural path for the future is clear,” Macri declared. That path will be paved with the programming patterns established on Symmetric Multi-Processor (SMP) systems migrating to the heterogeneous world. The architecture will be open, with published specifications and an open source execution software stack, and heterogeneous cores would be able to work together seamlessly in coherent memory, with low latency dispatch and no software fault lines.
That future, according to Macri, could not come around soon enough.
For EE Times' full coverage of DesignCon, please visit here.