aclrtSynchronizeDeviceWithTimeout

Applicable Products

Product

Supported

Ascend 950PR/Ascend 950DT

√

Atlas A3 training products/Atlas A3 inference products

√

Atlas A2 training products/Atlas A2 inference products

√

Atlas 200I/500 A2 inference products

√

Atlas inference products

√

Atlas training products

√

Function

Blocks the current thread until the device corresponding to the context bound to the current thread completes the computation.

This API is enhanced based on aclrtSynchronizeDevice and allows you to set the timeout interval. When an application is abnormal, the application automatically exits based on the configured timeout interval. When an application exits due to timeout, ACL_ERROR_RT_STREAM_SYNC_TIMEOUT is returned.

If there are multiple devices, this API is called to wait for the device corresponding to the current context.

Prototype

1
aclError aclrtSynchronizeDeviceWithTimeout(int32_t timeout)

Parameters

Parameter

Input/Output

Description

timeout

Input

API timeout interval.

The value can be:

  • -1: permanent waiting
  • > 0: specific timeout interval, in milliseconds

Returns

0 on success; otherwise, failure. For details, see aclError.