What is Heterogenous Compute?

Heterogeneous computing typically refers to a system that uses multiple types of computing cores, like CPUs, GPUs, ASICs, FPGAs, and NPUs. By assigning different workloads to processors that are designed for specific purposes or specialized processing, performance and energy efficiency is improved. The term “heterogenous compute” may also refer to the use of processors based on different computer architectures, a common approach when a particular architecture is better suited for a specific task due to power efficiency, compatibility, or the number of cores available. An early and still relatively common form of heterogenous computing is the combination of CPU cores and a GPU (Graphics Processing Unit), used for gaming and other graphics-rich applications.

Why is Heterogenous Compute Important?

Heterogeneous computing enables a single system to have multiple computing sub-systems. These processors, which may execute core instructions differently, work in parallel to accelerate compute speed and minimize the time required to complete a task. This is particularly useful in the development of artificial intelligence (AI) and machine learning (ML) workloads, where vast amounts of data must be processed and converted for a seamless user experience. Arm’s Total Compute strategy is one example of heterogenous computing that takes a holistic approach to SoC design to ensure Arm solutions can seamlessly and securely handle ever more complex and compute intensive workloads. Total Compute strategy focuses on accelerating compute performance, expanding security, and improving developer access to high-performance software and tools.

Related Solutions and Resources