[object Object]

[object Object][object Object]undefined
[object Object]
  • Operator function: Performs multiplication computation between tensors.

  • Formula:

outi=selfi×otheriout_i = self_i \times other_i [object Object]
  • [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 the workspace size required for computation and the executor that contains the operator computation process. Then, [object Object] or [object Object] is called to perform computation.

    • [object Object]

    • [object Object]

    • [object Object]

    • [object Object]

[object Object]
  • Parameters:

    • [object Object] (aclTensor*, computation input): input [object Object] in the formula. The data type of [object Object] must meet the data type deduction rules with [object Object] (see ). The shape of [object Object] must meet the with [object Object]. 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 inference products[object Object], [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 of [object Object] must meet the data type deduction rules with [object Object] (see ). The shape of [object Object] must meet the with [object Object]. 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 inference products[object Object], [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 output): output [object Object] in the formula. The data type must be convertible from that after deduction between [object Object] and [object Object]. The shape must be the same as that of [object Object] and [object Object] after broadcasting. 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 inference products[object Object], [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] (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]: status code. For details, see .

[object Object]
[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 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:

    [object Object]: status code. For details, see .

[object Object]
  • Parameters:

    • [object Object] (aclTensor*, computation input | computation output): input [object Object] and output [object Object] in the formula. The data type must meet the data type deduction rules with [object Object] (see ). In addition, the data type after deduction can be converted to the data type of [object Object]. The shapes of [object Object] and [object Object] must meet the , and the shape after broadcasting must be the same as the shape of [object Object]. 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 inference products[object Object], [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 data type deduction rules with [object Object] (see ). The shape must meet the with [object Object]. 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 inference products[object Object], [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] (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]: status code. For details, see .

[object Object]
[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 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:

    [object Object]: status code. For details, see .

[object Object]
  • Deterministic computing:
    • [object Object] defaults to a deterministic implementation.

    • For the scenario where the data type of [object Object] is INT8 and that of [object Object] is INT32: The cast operator has a precision issue when converting the INT32 type to the INT8 type (see . In this scenario, the output result precision cannot be ensured.

[object Object]

The following example is for reference only. For details, see .

aclnnMul sample code:

[object Object]

aclnnInplaceMul sample code:

[object Object]