aclrtLaunchKernelV2
Applicability
Product |
Supported |
|---|---|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
Description
Specifies the configuration to be delivered by a task and starts the compute task of the corresponding operator. This API is asynchronous.
Prototype
aclError aclrtLaunchKernelV2(aclrtFuncHandle funcHandle, uint32_t blockDim, const void *argsData, size_t argsSize, aclrtLaunchKernelCfg *cfg, aclrtStream stream)
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
funcHandle |
Input |
Kernel function handle. |
blockDim |
Input |
Number of cores on which the kernel function will be executed. |
argsData |
Input |
Pointer to the device memory address that stores all input parameters of the kernel function. For details about the memory allocation APIs, see Memory Management. The device that executes the task delivered by this API must be the same as the device that contains the memory used by argsData. |
argsSize |
Input |
Size of the argsData parameter's value, in bytes. |
cfg |
Input |
Configuration to be delivered by the task. If no configuration is specified, NULL can be passed. |
stream |
Input |
Stream for executing the task. |
Returns
0 on success; else, failure. For details, see aclError.
See Also
All the APIs listed in the following table enable the compute tasks of the corresponding operators. However, their functions and usage modes are different.
API |
How Kernel Function Parameter Values Are Passed |
Where Kernel Function Parameter Values Are Stored |
Configuration Customizable to Deliver |
|---|---|---|---|
Specify the device memory address pointer for storing all input parameter data of the kernel function. |
Device memory |
No |
|
Specify the device memory address pointer for storing all input parameter data of the kernel function. |
Device memory |
Yes |
|
Specify the parameter list handle aclrtArgsHandle. |
Host memory |
Yes |
|
Specify the host memory address pointer for storing all input parameter data of the kernel function. |
Host memory |
Yes |