# qairt.api.common.backends.aic

- *pydantic model* qairt.api.common.backends.aic.config.AicCompilerConfig

    - Compiler configuration for AIC Backend

- *field* buffer\_dealloc\_delay*: int*  *= 2*

    - Specifies the buffer deallocation delay.

- *field* cluster\_sizes*: str*  *= '1 2 0'*

    - Specifies the cluster configuration for single device partitioning.

- *field* combine\_inputs*: bool*  *= True*

    - Specifies whether to combine inputs into fewer buffers for transfer to device.

- *field* combine\_outputs*: bool*  *= True*

    - Specifies whether to combine outputs into a single buffer for transfer to host.

- *field* compilation\_target*: str*  *= 'hardware'*

    - Specifies the compilation target for the graph.

- *field* compile\_threads*: int*  *= 2*

    - Specifies the number of threads to use for compilation.

- *field* convert\_to\_fp16*: bool*  *= True*

    - Specifies whether to convert the graph from FP32 precision to FP16 precision inside AIC backend.

- *field* crc\_stride*: int*  *= 256*

    - Specifies the size of stride to calculate CRC in the stride section.

- *field* direct\_api*: bool*  *= True*

    - Specifies whether to use a platform-specific shared memory API.

- *field* do\_ddr\_to\_multicast*: bool*  *= True*

    - Specifies whether to reduce DDR bandwidth by loading weights used on multiple-cores only once and multicasting to other cores.

- *field* do\_host\_preproc*: bool*  *= True*

    - Specifies whether to perform host-side preprocessing. Setting compiler\_do\_host\_preproc to false
disables all pre-/post-processing on the host. Otherwise, all all pre-/post-processing are
performed on the host

- *field* enable\_debug*: bool*  *= True*

    - Specifies whether to enable debug mode during model compilation.

- *field* enable\_depth\_first*: bool*  *= True*

    - Specifies whether to enable depth-first compilation.

- *field* exclude\_mxfp6\_matmul*: str*  *= ''*

    - Specifies the list of operations to exclude from MXFP6 matmul.

- *field* force\_vtcm\_spill*: bool*  *= True*

    - Specifies whether to force all VTCM buffers to be spilled to DDR.

- *field* gen\_crc*: bool*  *= True*

    - Specifies whether to enable CRC check for inputs and outputs of the network.

- *field* graph\_names*: List[str]*  *[Optional]*

    - Specifies list of graph names.

- *field* hardware\_version*: str*  *= '2.0'*

    - Specifies the AI 100 hardware version to generate model binary.

- *field* max\_out\_channel\_split*: str*  *= '1 2 0'*

    - Specifies the effort level to reduce the on-chip memory usage.

- *field* mdp\_dump\_partition\_config*: str*  *= 'mdp\_pipeline\_template.json'*

    - Path to dump multi-device partition configuration template file.

- *field* mdp\_load\_partition\_config*: str*  *= 'mdp\_config.json'*

    - Path to load multi-device partition configuration file.

- *field* mxfp6\_matmul\_weights*: bool*  *= False*

    - Specifies whether to enable MXFP6 matmul weights.

- *field* mxint8\_mdp\_io*: bool*  *= False*

    - Specifies whether to enable MXINT8 MDP IO.

- *field* num\_of\_cores*: int*  *= 1*

    - Specifies the number of NSP Cores to use.

- *field* overlap\_split\_factor*: int*  *= 2*

    - Specifies the factor to increase splitting of network operations.

- *field* perf\_warnings*: bool*  *= True*

    - Specifies whether to print performance warning messages.

- *field* pmu\_events*: str*  *= '1 2 0'*

    - Specifies the PMU events to track. Up to 8 events are supported.

- *field* pmu\_recipe\_opt*: Literal['AxiRd', 'AxiWr', 'AxiRdWr', 'KernelUtil']*  *= 'KernelUtil'*

    - Specifies the PMU recipe optimization.

- *field* print\_ddr\_stats*: bool*  *= True*

    - Specifies whether to collect per core DDR traffic details.

- *field* print\_perf\_metrics*: bool*  *= True*

    - Specifies whether to print compiler performance metrics.

- *field* retained\_state*: bool*  *= False*

    - Specifies whether to enable compiler retained state.

- *field* size\_split\_granularity*: int*  *= 1024*

    - Specifies the maximum tile size.

- *field* stat\_level*: int*  *= 10*

    - Specifies the level of stats to be collected when stats collection is enabled
with one of the profiling options.

- *field* stats\_batch\_size*: int*  *= 2*

    - Specifies the number of batches to be used for execution. Sets the batch dimension of input/output
to the model for running inferences.

- *field* time\_passes*: bool*  *= True*

    - Specifies whether to enable the region profiler to collect compile-time statistics.

- *field* user\_dma\_producer\_dma\_enabled*: bool*  *= True*

    - Specifies whether to initiate NSP DMAs from the thread that produces data being transferred.

- *field* vtcm\_working\_set\_limit\_ratio*: float*  *= 1.0*

    - Specifies the ratio of fast memory an instruction can use.

- *class* qairt.api.common.backends.aic.config.AicConfigHelper

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

- *static* list\_config\_options()

    - 

- *classmethod* list\_config\_types()

    - 

- *static* shared\_library\_path()

    - 

- *static* to\_backend\_extension\_dict(*compiler\_config: Optional[[AicCompilerConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-aic.html#qairt.api.common.backends.aic.config.AicCompilerConfig)] = None*, *runtime\_config: Optional[[AicRuntimeConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-aic.html#qairt.api.common.backends.aic.config.AicRuntimeConfig)] = None*) → Dict[str, Any]

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

- Parameters

    - - **compiler\_config** – Compiler configuration.
- **runtime\_config** – Runtime configuration.

Examples

>>> compiler_configs = AicCompilerConfig(graph_names=["graph1"])
    >>> AicConfigHelper.to_backend_extension_dict(compiler_configs)
    Copy to clipboard

- Returns

    - Dictionary representing the backend extension.

- *pydantic model* qairt.api.common.backends.aic.config.AicRuntimeConfig

    - Runtime configuration for AIC Backend

- *field* device\_ids*: List[int]*  *[Optional]*

    - Specifies the device ID(s) on which to execute the network.

- *field* num\_activations*: int*  *= 1*

    - Specifies the number of concurrent activations (instances of a model) to inference.

- *field* submit\_num\_retries*: int*  *= 5*

    - Specifies the number of retries to carry out if submission times out.

- *field* submit\_timeout*: int*  *= 0*

    - Specifies the length of time (seconds) to wait for submission to complete.

- *field* threads\_per\_queue*: int*  *= 4*

    - Specifies the number of host threads to use for pre- and post-processing.

Last Published: Jun 19, 2026

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