---
title: aclrtLaunchKernelWithConfig
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/runtimeapi/aclcppdevg_03_1793.html
sourcePath: /source/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_1793.html
indexId: 50d44f55e963bb43c7b36fc483bc0228e69b64d461258f3e8f883c93336d8acb68
---
# aclrtLaunchKernelWithConfig

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | √ |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |


#### 功能说明

指定任务下发的配置信息，并启动对应算子的计算任务。异步接口。

若使用本接口下发AI Core算子的计算任务，需配套使用aclrtBinaryLoadFromFile接口加载并解析算子二进制文件。


#### 函数原型

```
aclError aclrtLaunchKernelWithConfig(aclrtFuncHandle funcHandle, uint32_t numBlocks, aclrtStream stream, aclrtLaunchKernelCfg *cfg, aclrtArgsHandle argsHandle, void *reserve)
```


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| funcHandle | 输入 | 核函数句柄。类型定义请参见aclrtFuncHandle。 |
| numBlocks | 输入 | 指定核函数将会在几个核上执行。 |
| stream | 输入 | 指定执行任务的Stream。类型定义请参见aclrtStream。 |
| cfg | 输入 | 任务下发的配置信息。类型定义请参见aclrtLaunchKernelCfg。 不指定配置时，此处可传NULL。 |
| argsHandle | 输入 | 参数列表句柄。类型定义请参见aclrtArgsHandle。 |
| reserve | 输入 | 预留参数。当前固定传NULL。 |


#### 返回值说明

返回0表示成功，返回其他值表示失败，请参见aclError。


#### 参考资源

下表的几个接口都用于启用对应算子的计算任务，但功能和使用方式有所不同：

| 接口 | 核函数参数值的传入方式 | 核函数参数值的存放位置 | 是否可指定任务下发的配置信息 |
| --- | --- | --- | --- |
| aclrtLaunchKernel | 在接口中指定存放核函数所有入参数据的Device内存地址指针 | Device内存 | 否 |
| aclrtLaunchKernelV2 | 在接口中指定存放核函数所有入参数据的Device内存地址指针 | Device内存 | 是 |
| aclrtLaunchKernelWithConfig | 在接口中指定参数列表句柄aclrtArgsHandle | Host内存 | 是 |
| aclrtLaunchKernelWithHostArgs | 在接口中指定存放核函数所有入参数据的Host内存地址指针 | Host内存 | 是 |
