- Operator function: Performs subtraction and scales the subtrahend by alpha.
- Formula:
[object Object]and[object Object]implement the same function in different ways. Select a proper operator based on your requirements.[object Object]: An output tensor object needs to be created to store the computation result.[object Object]: No output tensor object needs to be created, and the computation result is stored in the memory of the input tensor.
- Each operator has calls. First,
[object Object]or[object Object]is called to obtain input parameters and compute the required workspace size based on the computation process. Then,[object Object]or[object Object]is called to perform computation.[object Object][object Object][object Object][object Object]
Parameter Description:
[object Object](aclTensor*, computation input): input[object Object]in the formula. The data type must meet the type deduction rules (see ) with[object Object]. The shape must meet the with[object Object]. The number of dimensions cannot exceed 8. are supported. The can be ND.- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
[object Object](aclTensor*, computation input): input[object Object]in the formula. The data type must meet the type deduction rules (see ) with[object Object]. The shape must meet the with[object Object]. The number of dimensions cannot exceed 8. are supported. The can be ND.- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
[object Object](aclScalar*, computation input):[object Object]in the formula. The data type must be convertible to that after deduction between[object Object]and[object Object](see ).- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
[object Object](aclTensor*, computation output):[object Object]in the formula. The data type must be convertible to that after deduction between[object Object]and[object Object](see ). The shape must be that after[object Object]and[object Object]are , and the dimension must not exceed 8. are supported. The can be ND.- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
[object Object](uint64_t*, output): size of the workspace to be allocated on the device.[object Object](aclOpExecutor**, output): operator executor, containing the operator computation process.
Returns:
[object Object]
Parameter Description:
[object Object](void*, input): address of the workspace to be allocated on the device.[object Object](uint64_t, input): size of the workspace to be allocated on the device, which is obtained by calling the first-phase API[object Object].[object Object](aclOpExecutor*, input): operator executor, containing the operator computation process.[object Object](aclrtStream, input): stream for executing the task.
Returns:
Parameter Description:
[object Object](aclTensor*, computation input/output): input[object Object]in the formula. The data type must meet the type deduction rules (see ) with[object Object]. In addition, the data type must be convertible to that after deduction (see ). The shape of[object Object]must be the same as that of[object Object]after , and the number of dimensions cannot exceed 8. are supported. The can be ND.- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
[object Object](aclTensor*, computation input): input[object Object]in the formula. The data type must meet the type deduction rules (see ) with[object Object]. The shape must meet the with[object Object]. The number of dimensions cannot exceed 8. are supported. The can be ND.- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
[object Object](aclScalar*, computation input):[object Object]in the formula. The data type must be convertible to that after deduction between[object Object]and[object Object](see ).- [object Object]Atlas training products[object Object] and [object Object]Atlas 200I/500 A2 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, or COMPLEX64.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training products/Atlas A3 inference products[object Object]: The data type can be FLOAT, FLOAT16, DOUBLE, INT32, INT64, INT16, INT8, UINT8, BOOL, COMPLEX128, COMPLEX64, or BFLOAT16.
[object Object](uint64_t*, output): size of the workspace to be allocated on the device.[object Object](aclOpExecutor**, output): operator executor, containing the operator computation process.
Returns:
[object Object]
Parameter Description:
[object Object](void*, input): address of the workspace to be allocated on the device.[object Object](uint64_t, input): size of the workspace to be allocated on the device, which is obtained by calling the first-phase API[object Object].[object Object](aclOpExecutor*, input): operator executor, containing the operator computation process.[object Object](aclrtStream, input): stream for executing the task.
Returns:
- Deterministic computation:
[object Object]and[object Object]default to deterministic implementation.
The following example is for reference only. For details, see .
[object Object]