# qairt.api.common.backends.htp\_mcp

- *class* qairt.api.common.backends.htp\_mcp.config.HtpMcpConfigHelper

    - Bases: `object`

Helper class to convert HTP config to backend extension config needed by QAIRT Tools.

- *classmethod* list\_config\_options()

    - 

- *static* list\_options()

    - 

- *static* shared\_library\_path()

    - 

- *static* to\_backend\_extension\_dict(*context\_configs: Optional[List[[HtpMcpContextConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-htp_mcp.html#qairt.api.common.backends.htp_mcp.config.HtpMcpContextConfig)]] = None*, *graph\_configs: Optional[List[[HtpMcpGraphConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-htp_mcp.html#qairt.api.common.backends.htp_mcp.config.HtpMcpGraphConfig)]] = None*, *device\_configs: Optional[List[[HtpMcpDeviceConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-htp_mcp.html#qairt.api.common.backends.htp_mcp.config.HtpMcpDeviceConfig)]] = None*) → Dict[str, Any]

    - Builds the backend extension dictionary based on the provided configurations.

- Parameters

    - - **context\_configs** – List of context configurations.
- **graph\_configs** – List of graph configurations.
- **device\_configs** – List of device configurations.

Examples

>>> context_configs = [HtpMcpContextConfig(mode="manual")]
    >>> graph_configs = [HtpMcpGraphConfig(name="graph1")]
    >>> HtpMcpConfigHelper.to_backend_extension_dict(context_configs, graph_configs)
    Copy to clipboard

- Returns

    - Dictionary representing the backend extension.

- *pydantic model* qairt.api.common.backends.htp\_mcp.config.HtpMcpContextConfig

    - Bases: `BaseModel`

Memory configuration for the HTP MCP Backend

- *field* combined\_io\_dma\_enabled*: bool*  *= True*

    - Specifies whether combined IO DMA is enabled.

- *field* crc\_config*: Optional[[HtpMcpCrcConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-htp_mcp.html#qairt.api.common.backends.htp_mcp.config.HtpMcpCrcConfig)]*  *= None*

    - Specifies the CRC configuration.

- *field* elf\_path*: str*  *= ''*

    - Specifies the path to the ELF file.

- *field* heap\_size*: int*  *= 0*

    - Specifies the size of the heap.

- *field* mode*: Optional[Literal['manual']]*  *= None*

    - Specifies the mode of operation.

- *field* retries*: int*  *= 0*

    - Specifies the number of retries allowed.

- *field* timeout*: int*  *= 0*

    - Specifies the timeout value.

- *pydantic model* qairt.api.common.backends.htp\_mcp.config.HtpMcpCrcConfig

    - Bases: `BaseModel`

CRC Configuration for the HTP MCP Backend

- *field* enable*: bool*  *= False*

    - Specifies whether CRC is enabled.

- *field* end\_block\_size*: int*  *= 0*

    - Specifies the ending block size for CRC.

- *field* start\_block\_size*: int*  *= 0*

    - Specifies the starting block size for CRC.

- *field* stride\_interval*: int*  *= 0*

    - Specifies the interval between CRC strides.

- *field* stride\_size*: int*  *= 0*

    - Specifies the size of each CRC stride.

- *pydantic model* qairt.api.common.backends.htp\_mcp.config.HtpMcpDeviceConfig

    - Bases: `BaseModel`

Device configuration for the HTP MCP Backend

- *field* dsp\_arch*: Optional[Union[[DspArchitecture](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-configs.html#qairt.api.configs.common.DspArchitecture), str]]*  *= None*

    - The DSP architecture version for this SOC. See DspArchitecture.list\_options() for all
available options

- *field* id*: int*  *= 0*

    - The serial id associated with the device.

- *field* num\_cores*: int*  *= 0*

    - List of core configurations.

- *field* soc\_model*: int*  *= 0*

    - The Snapdragon SOC family associated with the device. E.x. 69. The SOC model must be related to the dsp
architecture below.

- *pydantic model* qairt.api.common.backends.htp\_mcp.config.HtpMcpGraphConfig

    - Bases: `BaseModel`

Graph configuration for the HTP MCP Backend

- *field* finalize\_config*: Optional[dict]*  *= None*

    - Field to set the finalize config dict for backend extension

- *field* fp16\_relaxed\_precision*: int*  *= 0*

    - Used to perform computation with half precision i.e. 16 bits

- *field* name*: str*  *[Required]*

    - Corresponds to the graph name provided to QnnGraph\_create

- *field* num\_cores*: int*  *= 0*

    - Number of cores

- *field* optimization\_type*: int*  *= 2*

    - Set graph optimization value in range 1 to 3. As numbers increase, there is a tradeoff between preparation
times to graph optimality.

1 implies fastest preparation time, least optimal graph.
3. implies slowest preparation time, most optimal graph.

- Constraints

    - - **ge** = 1
- **le** = 3

- *field* profiling\_level*: Optional[Literal['linting']]*  *= None*

    - Profiling level

Last Published: Jun 19, 2026

[Previous Topic
qairt.api.common.backends.htp](https://docs.qualcomm.com/bundle/publicresource/80-87189-2/topics/qairt-api-common-backends-htp.md) [Next Topic
qairt.api.common.backends.common.tuner](https://docs.qualcomm.com/bundle/publicresource/80-87189-2/topics/qairt-api-common-backends-common.md)