Function: synchronize_event_with_timeout

Applicability

Product

Supported

Atlas 350 Accelerator Card

Atlas A3 training product / Atlas A3 inference product

Atlas A2 training product / Atlas A2 inference product

Atlas training product

Atlas inference product

Atlas 200I/500 A2 inference product

Description

Blocks the current thread until all tasks captured by the event are complete. For details, see the event capture details in acl.rt.record_event.

This API is enhanced based on acl.rt.synchronize_event. You can set permanent waiting or a specific timeout period. If a specific timeout period is configured, the application automatically exits when an exception occurs.

Prototype

  • C Prototype
    1
    aclError aclrtSynchronizeEventWithTimeout(aclrtEvent event, int32_t timeout)
    
  • Python Function
    1
    ret = acl.rt.synchronize_event_with_timeout(event, timeout)
    

Parameters

Parameter

Description

event

Int, event object pointer address to be waited for.

timeout

Int, API timeout interval.

The options are as follows:

  • -1: waits permanently, which functions equivalently as acl.rt.synchronize_event.
  • > 0: specific timeout interval, in ms.

Return Value

Return Value

Description

ret

Int, error code. 0 on success; else, failure.

Reference

For the API call example, see Event Synchronization.