[object Object]

[object Object][object Object]undefined
[object Object]
  • Description: Draws binary random numbers ([object Object] or [object Object]) from a Bernoulli distribution. [object Object] indicates the probability of generating [object Object]. The input tensor is used to specify the shape.

  • Formula:

    outBernoulli(prob)out∼Bernoulli(prob)

    When [object Object] is used, [object Object] and [object Object] in the formula correspond to those in the prototype of the first-phase API. When [object Object] is used, [object Object] and [object Object] in the formula correspond to [object Object] and [object Object] respectively in the prototype of the first-phase API.

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

    • [object Object] (aclTensor*, computation input): which specifies the shape of [object Object] and is an aclTensor on the device. The data type must be the same as that of [object Object]. The shape supports 0 to 8 dimensions and must be the same as that of [object Object]. It supports . The can be ND.
      • [object Object]Atlas training products[object Object]: The data type can be FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, or BOOL.
      • [object Object]Atlas A2 training products/Atlas A2 inference products[object Object], [object Object]Atlas A3 training products/Atlas A3 inference products[object Object], and Ascend 950PR/Ascend 950DT: The data type can be FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, BOOL, or BFLOAT16.
    • [object Object] (aclScalar*, computation input): [object Object] in the formula, aclScalar on the host, which must meet the condition: 0prob10 ≤ prob ≤ 1.
      • [object Object]Atlas training products[object Object]: The data type can be FLOAT16, FLOAT, or DOUBLE.
      • [object Object]Atlas A2 training products/Atlas A2 inference products[object Object], [object Object]Atlas A3 training products/Atlas A3 inference products[object Object], and Ascend 950PR/Ascend 950DT: The data type can be FLOAT16, FLOAT, DOUBLE, or BFLOAT16.
    • [object Object] (int64_t, computation input): integer on the host, used to set the seed of the random number generator.
    • [object Object] (int64_t, computation input): integer on the host, used to set the random number offset.
    • [object Object] (aclTensor*, computation output): [object Object] in the formula, aclTensor on the device. The data type must be the same as that of [object Object]. The shape supports 0 to 8 dimensions and must be the same as that of [object Object]. It supports. The can be ND.
      • [object Object]Atlas training products[object Object]: The data type can be FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, or BOOL.
      • [object Object]Atlas A2 training products/Atlas A2 inference products[object Object], [object Object]Atlas A3 training products/Atlas A3 inference products[object Object], and Ascend 950PR/Ascend 950DT: The supported data types are FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, BOOL, and 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]: 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 [object Object].
    • [object Object] (aclOpExecutor*, input): operator executor, covering 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/output): [object Object] in the formula, aclTensor on the device. The shape supports 0 to 8 dimensions. It supports. The can be ND.
      • [object Object]Atlas training products[object Object]: The data type can be FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, or BOOL.
      • [object Object]Atlas A2 training products/Atlas A2 inference products[object Object], [object Object]Atlas A3 training products/Atlas A3 inference products[object Object], and Ascend 950PR/Ascend 950DT: The supported data types are FLOAT16, FLOAT, DOUBLE, UINT8, INT8, INT16, INT32, INT64, BOOL, and BFLOAT16.
    • [object Object] (aclScalar*, computation input): [object Object] in the formula, aclScalar on the host, which must meet the condition: 0prob10 ≤ prob ≤ 1.
      • [object Object]Atlas training products[object Object]: The data type can be FLOAT16, FLOAT, or DOUBLE.
      • [object Object]Atlas A2 training products/Atlas A2 inference products[object Object], [object Object]Atlas A3 training products/Atlas A3 inference products[object Object], and Ascend 950PR/Ascend 950DT: The data type can be FLOAT16, FLOAT, DOUBLE, or BFLOAT16.
    • [object Object] (int64_t, computation input): integer on the host, used to set the seed of the random number generator.
    • [object Object] (int64_t, computation input): integer on the host, used to set the random number offset.
    • [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]: 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 [object Object].
    • [object Object] (aclOpExecutor*, input): operator executor, covering the operator computation process.
    • [object Object] (aclrtStream, input): stream for executing the task.
  • Returns:

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

[object Object]
  • Deterministic computation:
    • [object Object] and [object Object] each default to a deterministic implementation.
[object Object]

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

aclnnBernoulli

[object Object]

aclnnInplaceBernoulli

[object Object]