Heterogeneous System Architecture (HSA), maintained by HSA Foundation, is a system architecture that allows accelerators, for instance, graphics processor, to be a first-class component as CPU in the system. HSA-compliant accelerators eases the programming of heterogeneous applications in various aspects, including being ISA agnostic for both CPUs and accelerators, supporting high-level programming languages, having the ability to access pagable system memory, and maintaining cache coherency for system memory with CPUs.[23] HSA is widely used in System-on-Chip devices, such as tablets, smartphones, and other mobile devices.[24] HSA allows programs to use the graphics processor for floating point calculations without separate memory or scheduling.[25]
Full Heterogeneous System Architecture capabilities with context switching for the CPU to GPU