# Qualcomm^®^ Hexagon™ DSP

## Overview

Game developers have another tool to create best-in-class mobile experiences that are uniquely available for Qualcomm platforms. Snapdragon SoCs have Hexagon, which is a programmable digital signal processor (DSP) alongside the Kryo CPU and Adreno GPU. Hexagon was designed for modem and multimedia functions, and is optimized for performance and power efficiency.

Instead of pushing performance with large frequency values, Hexagon allows for high throughput of work per cycle and a lower clock speed. While Hexagon is not designed for game development, its architecture and programmable nature allows game developers to offload tasks to it, reduce work on other cores, and conserve power.

This guide introduces basic concepts and techniques relevant for game development. For more in-depth information about programming for the Hexagon, please visit [Hexagon DSP SDK](https://developer.qualcomm.com/software/hexagon-dsp-sdk/dsp-processor).

![DSP Overview](data:image/png;base64,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)

## FastRPC (Remote Procedural Call) and Android Native Hardware Buffers

An important aspect of Hexagon, is that communication with DSP is done through inter-process communication (IPC). To accomplish this, using the FastRPC (Remote Procedure Call) library is required. This process has a higher latency than a roundtrip to the GPU, so a careful investigation of tasks that could be offloaded to the GPU is necessary to identify the best usage of this path and to stay within your game frame budget. The DSP does not share caches with other cores and data transfers must be done through DRAM. Handing buffers to and from the CPU, GPU, and DSP is streamlined in Android via [Android Native Hardware Buffers](https://developer.android.com/ndk/reference/group/a-hardware-buffer) which allow for no-copy buffer management.

## Hexagon Programming Primer

Hexagon is programmed by the [Hexagon SDK](https://developer.qualcomm.com/software/hexagon-dsp-sdk/tools). This SDK comes with a comprehensive set of documentation describing Hexagon DSP, how to program for it, and includes sample applications.

As shown in the picture below, a DSP program is split into two main parts. The portion that interfaces with the client method in the application’s space uses a <cite>Stub</cite>, which is the compiler generated functionality that interfaces with the DSP RPC driver.

DSP offloading is serial at this point, and the calls done to FastRPC are blocking. The portion that interfaces with the DSP level is handled by an auto-generated <cite>Skel</cite> code that takes care of unmarshaling parameters, and interfaces between executing in the application’s DSP and the DSP RPC Framework.

![DSP Programming Overview](data:image/png;base64,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)

## Hexagon Vector eXtensions: HVX SIMD

One of the most powerful aspects that game developers can leverage to make optimal use of Hexagon is proper use of its co-processor. The co-processor allows for single instruction multiple data (SIMD) vector operations via the Hexagon Vector eXtensions (HVX) instruction set.

For example, in Hexagon DSP v66, SIMD operations execute on large vector registers of up to 1024 bits each. On top of this, multiple SIMD instructions can be executed in parallel.

For in-depth documentation on leveraging this HVX set, visit the [HVX Reference Manual](https://developer.qualcomm.com/software/hexagon-dsp-sdk/dsp-processor).

Last Published: Mar 03, 2026

[Previous Topic
Vulkan](https://docs.qualcomm.com/bundle/publicresource/80-78185-2/topics/cpu.md) [Next Topic
Components](https://docs.qualcomm.com/bundle/publicresource/80-78185-2/topics/components.md)