- Description: Computes the bitwise XOR between elements in the input tensor
[object Object]and corresponding elements in the input tensor[object Object]. The input[object Object]and[object Object]must be of the INT or BOOL type. For the BOOL type, the operator computes the logical XOR. - 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 written in place to the input tensor's memory.
Each operator has calls. First,
[object Object]or[object Object]is called to obtain the workspace size required for computation and the executor covering the operator computation process. Then,[object Object]or[object Object]is called to perform computation.[object Object][object Object][object Object][object Object]
Parameters:
[object Object](aclTensor*, computation input): aclTensor on the device. Its data type can be BOOL, INT8, INT16, INT32, INT64, or UINT8. The data type must follow the type promotion rules with[object Object](see ). The shapes of 'self' and[object Object]must meet the . It supports . Its can be ND, and the data dimensions cannot exceed 8.[object Object](aclTensor*, computation input): aclTensor on the device. Its data type can be BOOL, INT8, INT16, INT32, INT64, or UINT8. The data type must follow the type promotion rules with[object Object](see ). The shapes of 'other' and[object Object]must meet the . It supports . Its can be ND, and the data dimensions cannot exceed 8.[object Object](aclTensor *, computation output): aclTensor on the device. Its data type must be one convertible from the type deduced from[object Object]and[object Object]. The shape must be the shape obtained by broadcasting[object Object]and[object Object]. It supports . Its can be ND, and the data dimensions cannot exceed 8.- [object Object]Atlas training products[object Object] and [object Object]Atlas inference products[object Object]: The data type can be BOOL, INT8, INT16, INT32, INT64, UINT8, FLOAT, FLOAT16, or DOUBLE.
- [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 BOOL, INT8, INT16, INT32, INT64, UINT8, FLOAT, FLOAT16, DOUBLE, or BFLOAT16.
[object Object](uint64_t *, output): size of the workspace to be allocated on the device.[object Object](aclOpExecutor **, output): operator executor, covering the operator computation process.
Returns:
[object Object]
Parameters:
[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[object Object].[object Object](aclOpExecutor *, input): operator executor, covering the operator computation process.[object Object](aclrtStream, input): stream for executing the task.
Returns:
Parameters:
[object Object](aclTensor *, computation input/output): input/output tensor, that is,[object Object]and[object Object]in the formula. It is an aclTensor on the device. Its data type can be BOOL, INT8, INT16, INT32, INT64, or UINT8. The data type must follow the type promotion rules with[object Object](see ). A data type inferred from[object Object]and[object Object]must be convertible to the data type of[object Object]itself. The shapes of 'selfRef' and[object Object]must meet the . A shape obtained through broadcasting must be the same as that of[object Object]. It supports . Its can be ND, and the data dimensions cannot exceed 8.[object Object](aclTensor*, computation input): aclTensor on the device. Its data type can be BOOL, INT8, INT16, INT32, INT64, or UINT8. The data type must follow the type promotion rules with[object Object](see ). The shapes of 'other' and[object Object]must meet the . It supports . Its can be ND, and the data dimensions cannot exceed 8.[object Object](uint64_t *, output): size of the workspace to be allocated on the device.[object Object](aclOpExecutor **, output): operator executor, covering the operator computation process.
Returns:
[object Object]
Parameters:
[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[object Object].[object Object](aclOpExecutor *, input): operator executor, covering the operator computation process.[object Object](aclrtStream, input): stream for executing the task.
Returns:
- Deterministic computation:
[object Object]and[object Object]each default to a deterministic implementation.
The following example is for reference only. For details, see .
aclnnBitwiseXorTensor sample code:
[object Object]
aclnnInplaceBitwiseXorTensor sample code:
[object Object]