Originally Posted by AnnoyinDemon
Hopefully this gets implemented in a lot of games. Just wondering how hard is it to code in hsa?
A crapload easier than OpenCL.
The million dollar question is whether they have implemented discrete GPU HSA into Kaveri (i.e. discrete GPU can be used for HSA). HQ (heterogeneous queuing) is likely for on die GCN cores only. hUMA is also likely on-die GCN cores only for now.
Wong: What is the Heterogeneous System Architecture?
Hegde: HSA is a revolutionary system architecture intended to make CPU, GPU, DSP and other processors work together in harmony by improving programmability. It provides a much better power efficient computing by unlocking the entire compute performance of the APU or SoC. It does this by giving all-processors-equitable access to memory and other resources. HSA is an industry standard designed to improve the programmability of heterogeneous systems.
Wong: What are the main components of HSA?
Hegde: HSA provides a uniform memory architecture for heterogeneous computing devices, and an architected queuing mechanism for efficient processor-to-processor communication. For instance in AMD’s APU
hUMA defines how processors inside an APU access memory
hQ defines how processors inside an APU interact with each other to handle computational tasks
Wong: What software tools are being developed to take advantage of the architecture?
Embedded developers will typically use C/C++, OpenCL, and Java. HSA will accelerate widely used libraries. This includes popular “domain” libs such as libraries used for language acceleration. Popular domain-specific libraries for math, media, vision, analytics, and simulation are also in the mix.
HSA has support from the top Linux variants including Ubuntu, RHEL, SLES, Android, and Yocto. These provide comprehensive tools, SDKs and community support.
Wong: How will programmers be able to take advantage of the architecture?
Hegde: Programmers will use existing programming models such as Java or C++. Similar to multi-core CPU programming, programmers will need to identify parallel code regions, but can benefit from additional performance provided by hardware designed for efficient data-parallel execution such as GPUs.
Programmers will be able to create the next wave of game-changing and differentiated GPU-accelerated applications that will work across X86 and ARM platforms using familiar programming tools and existing skill sets. Some of the benefits include:
Familiar and Powerful Programming Models. Dramatically ease the programming for heterogeneous parallel devices by using familiar development languages (Python, C++ and Java) and existing skill sets and without the complexity of using special purpose APIs
Low Development Costs. HSA is an industry standard architecture that enables your applications to run across multiple devices and hardware ecosystems.
Latest reports suggest Kaveri will have ~HD7770 or HD7790 performance (512 shader), which is pretty awesome given the TDP.Edited by AlphaC - 11/12/13 at 12:33pm